C语言作业总结(共30页).doc
《C语言作业总结(共30页).doc》由会员分享,可在线阅读,更多相关《C语言作业总结(共30页).doc(30页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上5.9 判断素数从键盘上输入一个大于或等于2的正整数n,判断它是否是素数。n从键盘输入。提示:素数定义:只能被1或它本身整除的正整数为素数,例如:2,3,5,7,11,13且1不是素数。解题思路:1 、让 n 被 i 整除 ( i 的值从 2 变到 n-1)2 、如果 n 能被 2 (n-1) 之中任何一个整数整除,则表示 n 肯定不是素数,不必再继续被后面的整数除,因此,可以提前结束循环。 注意:此时 i 的值必然小于 n 。1. #include2. intmain()3. inta,i;4. scanf(%d,&a);5. for(i=2;i=a;i+)6. i
2、f(a%i=0)7. break;8. 9. if(ia)10. printf(不是素数n);11. elseprintf(是素数n);12. return0;13. 5.7 统计个数n 从键盘输入,统计在 1,n 中,有多少个是 7 的倍数或末尾是 7 的数。例如输入 20 ,在 1,20 中满足条件的数( 7,14,17 )共有 3 个。1. #include2. intmain()3. inta,b=0,i;4. scanf(%d,&a);5. for(i=1;i=a;i+)6. if(i%7=0|i%10=7)b=b+1;7. 8. printf(%d个n,b);9. return0;
3、10. 5.12 老鼠咬坏的账本老鼠咬坏了帐本,式中符号是被老鼠咬掉的地方。要恢复下面的等式,应在2个中分别填上一个数字,编程输出这2个数,2数间用逗号隔开,如3,5。3623733564提示:用穷举法1. #include2. intmain()3. inti,a;4. for(i=0;i=9;i+)5. for(a=1;a=9;a+)6. if(30+i)*6237=(a*10+3)*3564)7. printf(%d,%dn,i,a);8. 9. 10. 11. 12. 13. return0;14. 5.10 第n个闰年编程找出自1601开始到2015年之间的第n个闰年并输出是哪一年,
4、n从键盘输入。闰年条件:四年一闰,百年不闰;四百年又闰。1. #include2. intmain()3. inta,i,c=0;4. scanf(%d,&a);5. for(i=1601;i=2015;i+)6. if(i%4=0&i%100!=0)|(i%400=0)7. c=c+1;8. if(a=c)9. break;10. 11. 12. 13. printf(第%d个闰年是%dn,a,i);14. 15. return0;16. 5.13 满足条件的三角形直角三角形一条直角边长是24,其余的边长都是正整数,而且斜边的长度不超过50。输出出所有满足条件的三角形。1. #include
5、2. intmain()3. inti,a;4. for(i=1;i=50;i+)5. for(a=1;a=50;a+)6. if(24*24+a*a=i*i)7. printf(24,%d,%dn,a,i);8. 9. 10. 11. 12. 13. return0;14. 5.14 多个数输出控制输出 1-35 之间的偶数,每行输出 4 项,最后一行输出时若不足 4 项也按一行输出, 并且统计偶数的个数。1. #include2. intmain()3. inta,b=0;4. for(a=2;a=35;a=a+2)5. printf(%d,a);6. b=b+1;7. if(b%4=0)
6、printf(n);8. 9. if(b%4!=0)printf(n);10. printf(偶数的个数为%dn,b);11. return0;12. 5.15 图案输出编程输出由星号组成的图形:* * * * * * * * * * * * * * * 1. #include2. intmain()3. inta,b;4. for(a=1;a=5;a+)行数5. for(b=1;b=a;b+)6. printf(*);7. 8. 9. printf(n);10. 11. return0;12. 6.1 统计区间的奇数个数n从键盘输入,统计区间20,n) 内的大于26的奇数的个数并输出。1.
7、#include2. intmain()3. intm,i,a=0;4. scanf(%d,&m);5. if(m26)6. for(i=27;i=m;i+)7. if(i%2!=0)8. a=a+1;9. 10. printf(奇数的数量=%d个n,a);11. 12. elseif(20=m=26)printf(奇数的数量=0个n);13. return0;14. 6.2 发票的编码有一张发票上有一个5位数的号码67口口8,其中百位和十位上的数字看不清了,但知道该数能够被78整除,也能被67整除。编程输出该号码。提示:用穷举法1. #include2. intmain()3. intm,i
8、;4. for(i=0;i=9;i+)5. for(m=0;m=9;m+)6. if(67000+100*i+10*m+8)%78=0)&(67000+100*i+10*m+8)%67=0)7. printf(%dn,67000+100*i+10*m+8);8. 9. 10. 11. return0;12. 6.3 正负交替的多项式求和 计算S= -1/1+1/2-1/3+1/4+1/n ,其中 n 从键盘输入,结果保留3位小数。提示:从 1+2+3+.+ n 可以变换出各种多项式的求和。1. #include2. intmain()3. floatm,i,c,a=0,b=0;4. scanf
9、(%f,&c);5. for(i=1;i=c;i=i+2)6. a=a-1.0/i;7. 8. for(m=2;m=c;m=m+2)9. b=b+1.0/m;10. 11. printf(%.3fn,a+b);12. return0;13. 6.4 统计大写字母的个数从键盘输入12个字符,输出其中大写字母的个数。1. #include2. intmain()3. chara;4. inti,m=0;5. for(i=1;i=12;i=i+1)6. scanf(%c,&a);7. if(a=A)8. m=m+1;9. 10. 11. printf(%dn,m);12. return0;13. 6
10、.5 正整数的位数2016.3.30 模块考试原题:从键盘上输入一个正整数,输出该数的位数。例如:输入 1234 ,输出 4 位数;输入 ,输出 6 位数。提示:考点:模(求余)运算,循环假设该正整数 (不包括0) 放在a中,重复a=a/10,直到a为0为止。每除一次计数一次,因为不能确定循环的次数, while 循环是首选。例如三位数:123/10=12 , 12/10=1 , 1/10=0 1. #include2. intmain()3. 4. inti,m=0;5. scanf(%d,&i);6. while(i0)7. i=i/10;8. m=m+1;9. printf(%dn,m)
11、;10. return0;11. 6.6 大小写2016.3.30 模块考试原题:输入一个字符,判断并输出其为大写或小写。1. #include2. intmain()3. 4. chari;5. scanf(%c,&i);6. if(i=A&i=a&i=z)9. printf(小写n);10. return0;11. 6.9 最后1 项为特别小的数的多项式之和计算 1/1+1/3+1/5+, 直到最后 1 项的值小于 10 -6 为止, 多项式累加和保留2位小数。提示:(1) 第 1 项 =1 ,第二项 =1/3,第三项 =1/5. 每一项的值越来越小,小于 10 -6 的是哪一项呢?(2)
12、10 -6 在程序中的表示方式: 0. 或者 1e-61. #include2. intmain()3. 4. floata=1,b=0;5. while(1.0/a)0.)6. b=b+1.0/a;7. a=a+2;8. 9. 10. printf(%.2fn,b);11. return0;12. 6.10 最大值的位置从键盘上输入8个数,输出最大数是第几个输入的。1. #include2. intmain()3. inta,b,i,c;4. scanf(%d,&a);5. c=1;6. for(i=2;ia)9. a=b;10. c=i;11. 12. 13. 14. 15. printf
13、(最大数在第%d位置n,c);16. return0;17. 6.11 区间输出m、n从键盘输入,将区间m,n)内的不能被3整除的数输出。1. #include2. intmain()3. inta,b,i,c;4. scanf(%d%d,&a,&b);5. for(i=a;ib;i+)6. 7. if(i%3!=0)8. printf(%d,i);9. 10. 11. printf(n);12. return0;13. 6.14 统计及格人数从键盘输入10个学生的成绩,要求统计及格人数并输出。1. #include2. intmain()3. inta,b,i=0;4. for(a=1;a=
14、60)i=i+1;7. 8. printf(及格人数=%d个n,i);9. return0;10. 6.16 寻找玫瑰花 (单重循环)如果一个 4 位数等于它的各位数字的 4 次方和,则这个4 位数称为“玫瑰花”数,例如 1634 就是一个玫瑰花数。要求用单重循环完成,即不使用穷举法,求出所有玫瑰花数。1. #include2. intmain()3. inta,b,i,d,r;4. for(a=1000;a=9999;a+)5. b=a/1000;6. i=a/100%10;7. d=a/10%10;8. r=a%10;9. if(b*b*b*b+i*i*i*i+d*d*d*d+r*r*r*
15、r=a)10. printf(%dn,a);11. 12. 13. return0;14. 6.17 鸡兔同笼问题之二设在一只笼子里关着鸡和兔子共m只,笼子中的脚数有n,求鸡和兔各有多少只? m和n从键盘输入。编程思路:穷举法。1. #include2. intmain()3. inta,b,i,d;4. scanf(%d%d,&a,&b);5. if(a%2!=0)&(b%2!=0)printf(无此结果n);6. else7. for(i=1;i=a;i+)8. for(d=1;d=a;d+)9. if(i+d=a)&(2*i+4*d=b)10. printf(鸡=%d,兔=%dn,i,d
16、);11. 12. 13. 14. return0;15. 6.18 小写字符转换成大写输出2016.3.30 模块考试原题:连续输入15个小写字符,将他们转换成大写字符并输出。 小写转大写:字符-32考点:字符输入输出,循环1. #include2. intmain()3. chara,b,i;4. for(i=1;i=15;i+)5. scanf(%c,&a);6. a=a-32;7. printf(%cn,a);8. 9. return0;10. 7.2 n-200区间满足条件的个数n, k 从键盘上输入, 输出 n-200 间所有末位是k或者能被k整除的数的个数。1. #include
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 作业 总结 30
限制150内