C语言程序设计题目及解答-3.doc,湖北理工学院c语言程序设计.doc实验3答案.doc

《湖北理工学院c语言程序设计.doc实验3答案.doc》由会员分享,提供在线免费全文阅读可下载,此文档格式为doc,更多相关《湖北理工学院c语言程序设计.doc实验3答案.doc》文档请在天天文库搜索。

1、 .实验三 循环结构程序设计实验课程名:C语言程序设计专业班级: 学号: : 实验时间: 实验地点: 指导教师: 一、实验目的和要求1. 熟悉掌握用for语句,while语句和do_while语句实现循环的方法。2. 掌握在程序设计中用循环的方法实现一些常用算法(如穷举、迭代、递推等)。二、实验容1、编写程序,随机输入15个整数,可以是正数、负数和零,计算它们的和、所有正数之和及所有负数之和,分类统计正数、负数以及零的个数,并分别打印出来。解答:(1)源代码:#includeint main(){ int a[14],i,sum1=0,sum2=0,sum3=0,x=0,y=0,z=0; printf("请输入十五个整数:"); for(i=0;i0) { sum2=sum2+a[i]; x=x+1; } if(a[i]==0) z=z+1; if(a[i]<0) { sum3=s。

2、um3+a[i]; y=y+1; } } printf("所有数的和为%d\n",sum1); printf("所有正数的和为%d\n",sum2); printf("所有负数的和为%d\n",sum3); printf("其中有%d个正数\n",x); printf("其中有%d个0\n",z); printf("其中有%d个负数\n",y); return 0;}(2)运行结果:(3)运行结果分析:运行成功。2、有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13,… 。求出这个数列的前20项之和。解答:(1)源代码:#includeint main(){ float a=1,b=2,c,sum=0; int i; printf("2/1,3/2,5/3,8/5,13/8,21/13,…前二十项的和为"); for(i=1;i<21;i++) { sum=sum+b。

3、/a; c=a+b; a=b; b=c; } printf("%.2f\n",sum); return 0;}(2)运行结果:(3)运行结果分析:运行成功3、编写程序,求 1!+ 2!+ 3!+ …+N!的值,N的值由键盘输入。解答:(1)源代码:#includeint main(){ int a,c,i,s,sum; s=1; sum=0; printf("1!+ 2!+ 3!+ …+N!\n"); printf("请输入N的值\n"); scanf("%d",&c); for(i=1;i<=c;i++) { for(a=1;a<=i;a++) { s=s*a; } sum=sum+s; s=1; } printf("其结果为%d\n",sum); return 0;}(2)运行结果:(3)运行结果分析:运行成功。4、编程序按下列公式计算 e 的值(精度为 1e-6): e=。

4、1+1/1!+1/2!+1/3!+…+1/n! 解答:(1)源代码:#includeint main(){ int a,c,i; float sum,s; s=1; sum=0; for(c=1;1/s>=1e-6;c++) { s=s*c; } s=1; for(i=1;i<=c;i++) { for(a=1;a

5、) { if((s>='a'&&s='A'&&s='0'&&s='a'&&s='A'&&s='0'&&s<='9')) d++; } printf("其中字母有%d个\n",a); printf("其中空格有%d个\n",b); printf("其中数字有%d个\n",c); printf("其中其他字符有%d个\n",d); return 0;}(2)运行结果:(3)运行结果分析:运行成功6、编程求1000以所有的水仙花数。谓水仙花数,是指一个3位数,其各位数字立方和等于该数字本身。例,153是水仙花数,因为153=13+53+33 。解答:(1)源代码:#includeint main(){ int a,b,c,d,i; printf("1000以的水仙花数为"); for(i=100;i<1000;i++) { a=i%10; b=i/10%10; c=i/100;。

6、 d=a*a*a+b*b*b+c*c*c; if(i==d) printf("%d ",i); } printf("\n"); return 0;}(2)运行结果:(3)运行结果分析:运行成功 7、编程:素数是除了1和其本身以外,不能被其他自然数整除的自然数。从键盘输入一个数,判断该数是不是素数?解答:(1)源代码:#includeint main(){ int a,b,x,i; x=1; printf("请输入一个自然数"); scanf("%d",&a); if(a==1) printf("该数不是素数\n"); else { for(i=2;i

7、:运行成功8、编写程序输入某班C语言考试的考试分数,该班人数未知,用-1作为结束标志,若输入大于100分,则提示重新输入,然后计算全班的最高分、最低分与平均分。解答:(1) 源代码:includeint main(){ int a,b,i=0,max=0,min=100,sum=0; printf("请输入班上各个学生C语言的考试分数\n"); while(1) { scanf("%d",&a); if(a>100) { printf("分数格式不对,请重新输入\n"); continue; } if(a==-1) break; sum=sum+a; i++; if(max>=a) max=max; else max=a; if(min<=a) min=min; else min=a; } b=sum/i; printf("全班的最高分为%d\n",max); print。

8、f("全班的最低分为%d\n",min); printf("全班的平均分为%d\n",b); return 0;}(2)运行结果:(3)运行结果分析:运行成功9、有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?解答:(1)源代码:#includeint main(){ int x=1,y=1,i=1; for(i;i<=20;i++) { printf("%d %d ",x,y); if(i%4==0) { printf("\n"); } x=x+y; y=x+y; } return 0;}(2)运行结果:(3)运行结果分析:运行成功10、公鸡五元一只,母鸡三元一只,小鸡一元三只,一百元要买一百只鸡,且须包含公鸡、母鸡和小鸡。请编写程序,输出所有可能的方案。解答:(1)源代码:#includeint 。

9、main(){ int x,y,z; for(x=1;x<=100;x++) { for(y=1;y<=100;y++) { for(z=1;z<=100;z++) { if((15*x+9*y+z==300)&&(x+y+z==100)) printf("公鸡有%d,母鸡有%d,小鸡有%d\n",x,y,z); } } } return 0;}(2)运行结果:(3)运行结果分析:运行成功11、编写程序,打印以下图形:* * * * * * ** * * * * * ** * * * * * ** * * * * * ** * * * * * *解答:(1)源代码:#includeint main(){ int i,j; for(i=1;i<6;i++) { for(j=1;j

10、\n"); } return 0;}(2)运行结果:(3)运行结果分析:运行成功 12、编写程序,打印以下图形: ** * ** * * * ** * * * * * ** * * * ** * * *解答:(1)源代码:#includeint main(){ int i,j,k; for (i=0;i<=3;i++) { for (j=0;j<=3-i;j++) printf(" "); for (k=0;k<=2*i;k++) printf("*"); printf("\n"); } for (i=0;i<=2;i++) { for (j=0;j<=i+1;j++) printf(" "); for (k=0;k<=2*(2-i);k++) printf("*"); printf("\n"); } return 0;}(2)运行结果:(3)运行结果分析:运行成功三、结论四、教师评语 .。

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值