湖北理工学院c语言程序的设计实验3答案

上传人:l**** 文档编号:134468376 上传时间:2020-06-05 格式:DOC 页数:15 大小:493KB
返回 下载 相关 举报
湖北理工学院c语言程序的设计实验3答案_第1页
第1页 / 共15页
湖北理工学院c语言程序的设计实验3答案_第2页
第2页 / 共15页
湖北理工学院c语言程序的设计实验3答案_第3页
第3页 / 共15页
湖北理工学院c语言程序的设计实验3答案_第4页
第4页 / 共15页
湖北理工学院c语言程序的设计实验3答案_第5页
第5页 / 共15页
点击查看更多>>
资源描述

《湖北理工学院c语言程序的设计实验3答案》由会员分享,可在线阅读,更多相关《湖北理工学院c语言程序的设计实验3答案(15页珍藏版)》请在金锄头文库上搜索。

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

2、入十五个整数:);for(i=0;i0)sum2=sum2+ai;x=x+1;if(ai=0)z=z+1;if(ai0)sum3=sum3+ai;y=y+1;printf(所有数的和为%dn,sum1);printf(所有正数的和为%dn,sum2);printf(所有负数的和为%dn,sum3);printf(其中有%d个正数n,x);printf(其中有%d个0n,z);printf(其中有%d个负数n,y);return 0;(2)运行结果: (3)运行结果分析:运行成功。 2、有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13, 。求出这个数列的前20项之和。解答:(1

3、)源代码:#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;i21;i+)sum=sum+b/a;c=a+b;a=b;b=c;printf(%.2fn,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);

4、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(其结果为%dn,sum);return 0;(2)运行结果: (3)运行结果分析:运行成功。4、编程序按下列公式计算 e 的值(精度为 1e-6): e=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;ai

5、;a+)s=s*a;sum=sum+1/s;s=1;printf(e=%fn,sum);return 0;(2)运行结果: (3)运行结果分析:运行成功 5、输入一行字符,分别统计出其中的英文字母、空格、数字和其他字符的个数。解答:(1)源代码:#includeint main()char s;int a=0,b=0,c=0,d=0;printf(请输入一行字符);while(s=getchar()!=n)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);p

6、rintf(其中其他字符有%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;i1000;i+)a=i%10;b=i/10%10;c=i/100;d=a*a*a+b*b*b+c*c*c;if(i=d)printf(%d ,i);printf(n);return 0;(2)运行结

7、果: (3)运行结果分析:运行成功 7、编程:素数是除了1和其本身以外,不能被其他自然数整除的自然数。从键盘输入一个数,判断该数是不是素数?解答:(1)源代码:#includeint main()int a,b,x,i;x=1;printf(请输入一个自然数);scanf(%d,&a);if(a=1)printf(该数不是素数n);elsefor(i=2;ia;i+)b=a%i;if(b=0)x=0;if(x=0)printf(该数不是素数n);if(x=1)printf(该数是素数n);return 0;(2)运行结果: (3)运行结果分析:运行成功8、编写程序输入某班C语言考试的考试分数,

8、该班人数未知,用-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(a100)printf(分数格式不对,请重新输入n);continue;if(a=-1)break;sum=sum+a;i+;if(max=a)max=max;elsemax=a;if(min=a)min=min;elsemin=a;b=sum/i;printf(全班的

9、最高分为%dn,max);printf(全班的最低分为%dn,min);printf(全班的平均分为%dn,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、

10、公鸡五元一只,母鸡三元一只,小鸡一元三只,一百元要买一百只鸡,且须包含公鸡、母鸡和小鸡。请编写程序,输出所有可能的方案。解答:(1)源代码:#includeint 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,小鸡有%dn,x,y,z);return 0;(2)运行结果: (3)运行结果分析:运行成功11、编写程序,打印以下图形:* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *解答:(1)源代码:#includeint main()int i,j;for(i=1;i6;i+)for(j=1;ji;j+)printf( );printf(* * * * * * *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( );

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 工作范文

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