提示:
(1)本题涉及的的位置 = 数组元素的下标 +1 ;
(2)使用数组存储集合A,然后顺序遍历整个数组,如果找到(与n相等),即退出(break)并输出位置,如果没有找到,输出无此数。
1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13.
#include
{ int b,a[10]={1,3,5,9,11,13,15,19,23,25},m,c=0; scanf(\,&m); for(b=0;b<=9;b++) { if(m==a[b]) break;
else if(b==9&&m!=a[9]) c=1; }
if(c==0) printf(\位置=%d\\n\,b+1); if(c==1) printf(\无此数\\n\); return 0; }
7.14 英文字母大小写相互转换
从键盘输入一个英文字母,编程完成大小写相互转换。 转换公式:小写字母=大写字母+32 提示:(x>='a'&&x<='z') x是小写字母 (x>='A'&&x<='Z') x是大写字母
1. 2. 3. 4. 5. 6. 7. 8. 9.
#include
scanf(\,&a);
if(a>='A'&&a<='Z') a=a+32; else if(a>='a'&&a<='z') a=a-32; printf(\,a); return 0; }
7.15 斐波拉契数列前n项之和(数组法) n 从键盘上输入,n 的范围为: 1<=n<=30 利用数组法编程输出斐波拉契数列: 1 , 1 , 2 , 3 , 5 , 8 , 13 , 21 ...... 输出这个数列 的前 n 项 之和。 提示:
(1)第一段循环: 求出数列的前n项; (2)第二段循环:求前n项的和;
1. 2. 3. 4. 5. 6. 7.
#include
{ int a[30]={1,1},b,c=0,i; scanf(\,&b); for(i=2;i
{ a[i]=a[i-1]+a[i-2]; }
8. 9. 10. 11. 12. 13.
for(i=0;i
printf(\,c); return 0; }
7.18 计算x的y次方
从键盘输入2个整数x和y,计算x的y次方并输出。
1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11.
#include
printf(\,c);
return 0; }
7.21 统计素数个数
统计 100 - 200 之间素数的个数,要求不使用数组完成.
1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14.
#include
for(i=100;i<=200;i++) { for(a=2;a
printf(\,b); return 0; }
7.22 成绩评定
从键盘输入8个成绩,去掉最高分、最低分进行平均分计算,并输出(以5位小数形式),要求不用数组,只用循环完成。
1. 2. 3. 4. 5. 6.
#include
float a,b,max,min,sum; scanf(\,&a); sum=a;
7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17.
min=a; max=a;
for(i=2;i<=8;i++) { scanf(\,&b); sum=sum+b; if(maxb) min=b; }
printf(\,(sum-max-min)/6); return 0; }
8.2 累加和大于s 时的最小项
s=1+2+3+4...+n , 从键盘上输入一正整数s , 求累加和大于 s 时的最小项数n
1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11.
#include
{ int a,b=0,i,c=0; scanf(\,&a); while(b<=a) { c=c+1; b=b+c; }
printf(\,c); return 0; }
8.5 分行控制输出斐波拉契数列前n项
n从键盘上输入,斐波拉契数列:1,1,2,3,5,8,13,21...
求出这个数列的前n项并输出, 要求每隔4个换一行,最后一行输出时若不足 4 项也按一行输出。
1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16.
#include
{ int i,a[20]={1,1},c,b,k=2; scanf(\,&c); printf(\); for(i=2;i { a[i]=a[i-2]+a[i-1]; printf(\,a[i]); k=k+1; if(k==4) { printf(\); k=0; } } printf(\); 17. 18. return 0; } 8.6 输出图形之一 在屏幕上输出 * 组成的图形,行数从键盘输入。 提示: 打印图形通常用两重循环实现,输出的行数、每一行的空格数和每一行星号数分别由各自的循环控制。 外层循环控制图形的行数, 该图形一共有n行. 第一个内循环,要考虑每行中,先输出若干个空格, 确定打印图案的起始位置, 第二个内循环, 用来控制图案中的某一行的星号个数。 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. #include for(k=1;k<=2*b-1;k++) printf(\); printf(\); } return 0; } 8.7 若干成绩统计及格人数 从键盘输入若干学生的成绩,碰到输入非法成绩(输入负数或者超过100的数)时结束,要求统计及格人数并输出。 提示:本题不涉及数组。 循环结束条件是非法成绩,因循环次数不确定,while 循环是首选。 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. #include printf(\及格人数=%d个\\n\,k-1); return 0; } 8.10 输出所有的因子及其和 键盘输入正整数,输出该整数的所有因子,例如输入6,则输出1,2,3,6, 并求其所有因子的和。 提示:不涉及数组 假如正整数 n 除以m,结果是无余数的整数,那么我们称 m 就是 n 的因子。 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. #include printf(\,i); } } printf(\); printf(\因子和=%d\\n\,v); return 0; } 8.13 天数计算-数组法 输入 年 月 日,计算是该年的第多少天? 提示: 建议用数组实现计算是该年的第多少天,即天数累计求和。 分为两种情况: 1、整月的天数参与累加求和(考虑大月、小月、2月天数具体情况) (4、6、9、11各30天,1、3、5、7、8、10、12各31天,平年2月28天, 闰年2 月29天) 如果是闰年的2月,天数作一个修正。 闰年条件:四年一闰,百年不闰;四百年又闰 2、不完整月的天数直接用某日参与累加即可。 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. #include { int i,c,a[13]={31,28,31,30,31,30,31,31,30,31,30,31},n[13]={31,29,31,30,31,30,31,31,30,31,30,31},b,m,x=0; scanf(\,&c,&b,&m); if((c%4==0&&c0!=0)||(c@0==0)) { for(i=0;i { for(i=0;i printf(\第%d天\\n\,x); 百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说教育文库C语言作业总结(3)在线全文阅读。
相关推荐: