C语言程序设计部分习题及例题参考程序-25页

上传人:maz****in 文档编号:201529833 上传时间:2021-10-10 格式:PDF 页数:25 大小:158.93KB
返回 下载 相关 举报
C语言程序设计部分习题及例题参考程序-25页_第1页
第1页 / 共25页
C语言程序设计部分习题及例题参考程序-25页_第2页
第2页 / 共25页
C语言程序设计部分习题及例题参考程序-25页_第3页
第3页 / 共25页
C语言程序设计部分习题及例题参考程序-25页_第4页
第4页 / 共25页
C语言程序设计部分习题及例题参考程序-25页_第5页
第5页 / 共25页
点击查看更多>>
资源描述

《C语言程序设计部分习题及例题参考程序-25页》由会员分享,可在线阅读,更多相关《C语言程序设计部分习题及例题参考程序-25页(25页珍藏版)》请在金锄头文库上搜索。

1、C 语言程序设计部分例题及课后习题参考程序1.编程计算如下分段函数:参考程序 #include int main() float x,y; printf(input x:); scanf(%f,&x); if(x=10) y=2*x+3; else if(x=0) y=4*x; else y=5*x-6; printf(y=%.2fn,y); 2编程将从键盘输入的百分制成绩转换为等级分,转换方法如下:90 以上(大于或等于90,下同)为A,80 分以上为 B,70 分以上为 C,60 分以上为D,60 分以下,即低于60 分为 E。参考程序 #include int main() float

2、score; char rank; printf(input a score:); scanf(%f,&score); if(score100|score0) printf(invalid score inputn); exit(-1); switch(int)score/10) case 10: case 9: rank=A;break; case 8: rank=B;break; case 7: rank=C;break; 欢迎下载2 case 6: rank=D;break; default: rank=E; printf(%.2f:%cn,score,rank); return 0;

3、3.编程判断以从键盘输入的三个数为边长,是否能构成三角形。参考程序 #include int main() float a,b,c; printf(input a,b,c:); scanf(%f%f%f,&a,&b,&c); if(a0 & b0 & c0 & a+bc & a+cb & b+ca) printf(%.2f,%.2f,%.2f) 能围成三角形 n,a,b,c); else printf(%.2f,%2.2f,%.2f) 不能围成三角形n,a,b,c); 4.编程实现将从键盘输入的一个正整数逆序输出,如输入1234,输出 3421 参考程序 #include int main()

4、 int n; printf(input a number:); scanf(%d,&n); do printf(%d,n%10); n/=10; while(n!=0); return 0; 5.输入一个110 范围内的整数,计算该数的阶乘。参考程序 #include int main() int n,s=1,i; printf(input a number(110):); scanf(%d,&n); 欢迎下载3 for(i=2;i=n;i+) s*=i; printf(%d!=%dn,n,s); return 0; 6.从键盘输入的一行字符,统计其含有多少个字符。【参考程序】#includ

5、e int main() char ch; int cnt=0; printf(input a char line:); ch=getchar(); while(ch!=n) cnt+; ch=getchar(); printf(%dn,cnt); return 0; 7.打印乘法口诀表。【参考程序】#include int main() int i,j; for(i=1;i=9;i+) for(j=1;j=i;j+) printf(%d*%d=%-3d,j,i,i*j); printf(n); return 0; 8.在屏幕上打印如下规律的图形,具体行数由键盘输入。* * * * * * 欢

6、迎下载4 【参考程序】#include int main() int i,j,n; printf( 请输入打印图形的行数:); scanf(%d,&n); for(i=1;i=n;i+) for(j=1;j=n-i;j+) printf( ); for(j=1;j=2*i-1;j+) printf(*); printf(n); return 0; 9.从键盘输入一个正整数,编程判断其是否为素数(质数). 【参考程序】#include int main() int i,n; printf( 请输入一个正整数:); scanf(%d,&n); for(i=2;i*i=n;i+) if(n%i=0)

7、 break; if(i*i=n|n=1) printf(%d 不是一个素数 .n,n); else printf(%d 是一个素数 .n,n); return 0; 10.从键盘输入100 个整数,求其中正整数的和。【参考程序】#include #define N 100 int main() int n,s=0,i; for(i=1;i=N;i+) 欢迎下载5 printf( 请输入第 %d 个整数: ,i); scanf(%d,&n); if(n0) continue; s+=n; printf(%dn,s); return 0; 11.从键盘输入1000 个学生某门课程的百分制成绩,分

8、别统计其中80 分以上(即大于或等于 80) 、 60 分以上及低于60 分的人数。【参考程序】#include #define N 1000 int main() int m,n,k,i; float score; m=n=k=0; for(i=1;i100|score=80) m+; else if(score=60) n+; else k+; printf(%d:%d:%dn,m,n,k); return 0; 12.运用如下公式计算圆周率的近似值,当最后一项的绝对值小于10-6时,停止计算。欢迎下载6 【参考程序】#include int main() double pi=0.0,t=

9、1.0; int sgn=1; while(t1000000) pi+=sgn/t; sgn=-sgn; t+=2; printf(Pi=%.6lfn,4*pi); return 0; 13.古代某工地需要搬运砖块,已知男人每人每次搬3 块,女人每人每次搬2 块,小孩两人每次抬一块,现有45 人一次正好搬完全部砖块,请问男人、女人、小孩各几人?【参考程序】#include int main() int w,m,c; for(m=0;m=15;m+) for(w=0;w=22;w+) c=45-m-w; if(m*3+w*2+c*.5=45) printf(%d:%d:%dn,m,w,c); r

10、eturn 0; 14.从键盘输入两个正整数到m、n 中,求它们的最大公约数和最小公倍数。【参考程序】#include int main() int m,n,m1,n1,r; printf( 请输入两个正整数:); scanf(%d%d,&m,&n); m1=m; n1=n; r=m%n; while(r!=0) 欢迎下载7 m=n; n=r; r=m%n; printf(gcd(%d,%d)=%dn,m1,n1,n); printf(lcm(%d,%d)=%dn,m1,n1,m1*n1/n); return 0; 14.编程计算如下式子的值,直到n 等于 100。【参考程序】#include

11、 int main() double s=0.0,t=1.0; int sgn=1; while(t=100) s+=sgn/t; sgn=-sgn; t+=1; printf(s=%.6lfn,s); return 0; 15.计算如下规律式子的值。其中a 与 n 的值都是由键盘输入确定。如当a 为 2,n 为 3 时,该式子表示的含义为2+22+222,故结果为246。【参考程序】#include int main() int a,n,s=0,t; printf(input a,n:); scanf(%d%d,&a,&n); t=a; while(n0) s+=t; t=t*10+a; n

12、-; 欢迎下载8 printf(%dn,s); return 0; 16.计算如下式子的值。【参考程序】#include int main() int n; float s=0.0; for(n=2;n=100;n+=2) s+=(float)(n+1)/n; printf(%.6fn,s); return 0; 17.如数列第1 项为 2,此后各项的值均为其前一项的2 倍再加 3,编程计算该数列的前10项之和。【参考程序】#include int main() int n,s=0,i; n=2; for(i=1;i=3;i+) s+=n; n=n*2+3; printf(%dn,s); re

13、turn 0; 18.现要求将 1 角钱换成1 分、 2 分或 5 分的硬币,请问有多少种换法,并输出每一种换法。【参考程序】#include int main() int one,two,five,cnt=0; for(five=0;five=2;five+) 欢迎下载9 for(two=0;two=0) printf(%d:%d:%dn,one,two,five); cnt+; printf( 一共有 %d 种换法 n,cnt); return 0; 20.编程统计并输出200 到 300 以内的全部素数。【参考程序】#include int main() int m,i,k=0; for

14、(m=201;m300;m+=2) for(i=3;i*im) k+; printf(%8d,m); if(k%5=0) printf(n); printf(n200到 300 之间一共有 %d 个素数 n,k); return 0; 21.打印所有“水仙花数” ,所谓“水仙花数”是指一个三位数,其各位数字的立方和等于该数自身。如153 【参考程序】#include int main() int m,n,k; for(m=1;m=9;m+) 欢迎下载10 for(n=0;n=9;n+) for(k=0;k=9;k+) if(m*m*m+n*n*n+k*k*k=m*100+n*10+k) pri

15、ntf(%5d,m*100+n*10+k); printf(n); return 0; 22.输出 200 到 300 之间满足如下条件的数,即各位数字之和为12,数字之积为42. 【参考程序】#include int main() int m,n; for(m=0;m=9;m+) for(n=0;n=9;n+) if(m+n=10&m*n=21) printf(%5d,200+m*10+n); printf(n); return 0; 23.编程将一个正整数进行质因数分解,例如输入90,须在屏幕上打印出90=2*3*3*5 【参考程序】#include int main() int m,n;

16、 scanf(%d,&m); printf(%d=,m); n=2; while(m!=1) while(m%n=0) printf(%d,n); if(m!=n) printf(*); m/=n; n+; printf(n); return 0; 24.输入一行字符,分别统计其中英文字母、空格、数字及其他字符的个数。欢迎下载11 【参考程序】#include int main() char ch; int letter,space,digit,other; letter=space=digit=other=0; printf(input a char line:); ch=getchar(); while(ch!=n) if(ch=a&ch=A&ch=0&ch=9) digit+; else if(ch= ) space+; else other+; ch=getchar(); printf(%d:%d:%d:%dn,letter,digit,space,other); return 0; 25.编程输出 1000 以内的全部完数。所谓完数,是指该数恰好等于他的全部真因子的和。如6=

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号