C++循环结构23道题(含答案).doc_第1页
C++循环结构23道题(含答案).doc_第2页
C++循环结构23道题(含答案).doc_第3页
C++循环结构23道题(含答案).doc_第4页
C++循环结构23道题(含答案).doc_第5页
免费预览已结束,剩余9页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、题目、描述、输入、输出、输入样例、输出样例、测试输入、测试输出循环 01:最大数写一个程序,可以输入一批正数,输入输入 392856318270输出 63测试:输入 153 26 963 28 75 90 156 0输出 9630 时结束循环,并且输出最大的正数。#includeusing namespace std;int main()int i,max=0;cini;while(i!=0)if(imax)max=i;cini;coutmaxendl;return 0;循环 02:素数输入正数n ,判断 n 是否为素数。若为素数则输出以被 1 和其本身整除的正数(1 除外)输入 10输出 0

2、输入 7输出 1测试:输入 9输出 01,否则输出0。(提示:素数是指只可#includeusing namespace std;int main()int n,i,d;cinn;for(i=2;in;i+)d=n%i;if(n%i=0)break;if(n=i)cout1endl;elsecout0endl;return 0;循环 03:数列求和输入一个正整数n,计算前n 项之和: 1+1/4+1/7+1/10.+1/(3*n-2) 。输入 5输出输入 4输出1.569781.49286#includeusing namespace std;int main()int i,n;double

3、s=0;cinn;for(i=1;i=n;i+)s+=1.0/(3*i-2);coutsendl;return 0;循环 04:西瓜卖几天n 个西瓜,第一天卖一半多两个,以后每天卖剩下的一半多两个,问几天以后能卖完?说明:当西瓜个数为奇数时,卖一半为一半的整数,如当西瓜个数为5 时,卖一半为卖2个。输入:西瓜个数,输出:天数输入 10输出 2输入 50输出 4测试输入 120 输出 5#includeusing namespace std;int main()int n,d=0;cinn;while(n0)d+;n=n/2-2;coutdendl;return 0;循环 05:成绩判定输入一个

4、正整数repeat (0repeat10) ,做 repeat 次下列运算:输入一个学生的数学成绩,如果它低于输入 53568499488输出60,输出 “Fail,”否则,输出 “Pass。”FailPassFailPassPass测试输入输出8908060504030738859PassPassPassFailFailFailPassPassFail#includeusing namespace std;int main()int repeat,n,i;cinrepeat;for(i=0;in;if(n60)coutFailendl;elsecoutPassendl;return 0;循环

5、 06:数列求和输入 1 个正整数n(n=100),计算并输出1 1/2 1/3 1/n。输入 5 输出 2.28333输入 4 输出 2.08333#includeusing namespace std;int main()int n,i=1;double s=0;cinn;while(i=n)s+=1.0/i;i+;coutsendl;return 0;循环 07:水仙花数打印出所有的水仙花数 ,所谓 水仙花数数本身。例如:153 是一个 水仙花数,因为输入无 输出153 370 371 407 是指一个三位数,其各位数字立方和等于该153=1 的三次方 5 的三次方 3 的三次方。#in

6、cludeusing namespace std;int main ()int n,i,j,k;for(n=100;n1000;n+)i=n/100;j=n/10%10;k=n%10;if(i*i*i+j*j*j+k*k*k=n)coutn ;return 0;循环 08:数位之和输入一个正整数,输出其各个位置上的数字之和。输入1234 输出 10输入12534 输出 15测试输入4325 输出 14#includeusing namespace std;int main()int n,s=0;cinn;while(n)s+=n%10;n=n/10;coutsendl;return 0;循环

7、09:奇数和读入一批正整数(以零为结束标志),求其中的奇数和。输入 32 33 50 34 65 67 0 输出 165输入输出 80测试输入 31 33 50 34 65 67 0 输出 196#includeusing namespace std;int main()int n,s=0;cinn;while(n0)if(n%2!=0)s=s+n;cinn;coutsendl;return 0;循环 10:求和从键盘输入若干正数,对其求和并输出,遇到负数则终止输入。输入 32 33 50 34 6567 -1输出 281输入 13 15 17 30 35-2 输出

8、110测试输入 31 33 50 34 6567 -5输出 280#includeusing namespace std;int main()int n,a=0;cinn;while(n=0)a=n+a;cinn;coutaendl;return 0;循环 11:特殊数值已知四位数3025 有一个特殊性质的平方刚好等于该数(55*55=3025).输入无输出 2025 3025 9801:它的前两位数字30 和后两位数字25 的和是试编一程序打印所有具有这种性质的四位数.55,而55#includeusing namespace std;int main()int i,a,b;for(i=10

9、00;i=9999;i+)a=i/100;b=i%100;if(a+b)*(a+b)=i)couti ;return 0;循环 12:征税税务部门征收所的税,规定如下:1)收入在1000 元以内(含1000 ),免征;2)收入在10003000 元以内(含3000 ),纳税额为收入的3%;3)收入超过30005000 元以内(含5000 ),纳税为收入的4%;4)当收入超过5000 元时,纳税为收入的6%。请根据以上关系,输入收入m,输出应缴纳的税收tax。输入:第一个整数n 表示后续有n 个收入输出:每个收入对应的纳税额输入 4 900 2000 4000 6000输出 0 60 160 3

10、60#includeusing namespace std;int main()double m,tax;int i,n;cinn;for(i=1;im;if(m=1000)tax=0;else if(m=3000)tax=m*0.03;else if(m=5000)tax=m*0.04;elsetax=m*0.06;couttax ;return 0;循环 13:因数个数给定一个正整数n,求它的因数个数。如输入12输出6测试输入30输出86 的因数为1、 2、 3、 6,则因数个数为4。#includeusing namespace std;int main()int n,i,count=0

11、;cinn;for(i=1;i=n;i+)if(n%i=0)count+;coutcountendl;return 0;循环 14:最大公约数键盘输入两个正整数m, n,求出他们的最大公约数。输入2015输出5测试输入 32 80 输出 16#includeusing namespace std;int main()int m,n,i;cinmn;for(i=m;i=1;i-)if(m%i=0&n%i=0)break;couti=2),编写一个程序,输入整除给定斐波那契数列为:F(0)=1, F(1)=1,n(=0),如果 F(n)能被 3 整除则输出一个“ yes,”否则输出一个 “no”。

12、输入 8 输出 yes输入 6 输出 no测试输入 12 输出 yes#includeusing namespace std;int main()int n,F0=1,F1=1,F,i;cinn;for(i=2;i=n;i+)F=F0+F1;F0=F1;F1=F;if(F%3=0)coutyesendl;elsecoutnoendl;return 0;循环 16:计算奇偶数求 N( =100)个数中奇数的平方和与偶数的立方和。注意:输入格式为,第一个数为N,后面接着N 个数。输出的平方和与立方和以空格隔开输入 3589 输出 106512测试输入 558910 输出 1061512#inclu

13、deusing namespace std;int main()int i,N,n,a=0,b=0;cinN;for(i=1;in;if(n%2=0)a+=n*n*n;elseb+=n*n;coutb aendl;return 0;循环 17:数位计算对于输入的一个数字,请计算它的各个位上的数字为偶数的和。例如: 1234 ,结果为 6=2+4。输入 4321 输出 6输入 51289 输出 10测试输入 54893 输出 12#includeusing namespace std;int main ()int n,x,s=0;cinn;while(n)x=n%10;if(x%2=0)s+=x

14、;n=n/10;coutsendl;return 0;循环 18:数根对于一个正整数n,我们将它的各个位相加得到一个新的数字,如果这个数字是一位数,我们称之为n 的数根, 否则重复处理直到它成为一个一位数,这个一位数也算是n 的数根。 例如:考虑24, 2+4=6, 6 就是 24 的数根。考虑39,3+9=12, 1+2=3, 3 就是 39 的数根。请编写程序,计算n 的数根。输入 189 输出 9测试输入 8943 输出 6#includeusing namespace std;int main()int n,s=0,t;cinn;t=n;while(t=10)s=0;while(t)s

15、+=t%10;t=t/10;t=s;coutsendl;return 0;循环 19:平均成绩假设有一个班级,n 名同学选修了C+语言程序设计,要求统计该门课的平均成绩。输入格式:第一个数为学生人数n,后面接着n 个成绩,输出平均成绩。输入: 5 80 90 88 96 70 输出 84.8#includeusing namespace std;int main()int n,i,a,s=0;cinn;for(i=1;ia;s+=a;coutdouble(s)/nendl;return 0;循环 20:幂函数输入一个正整数repeat (0repeat10) ,做 repeat 次下列运算:读

16、入1 个正实数x 和 1 个正整数n(n=50),计算并输出x 的 n 次幂。输入 3253453输出 3281125#includeusing namespace std;int main()int repeat,i,x,n,j,k;cinrepeat;for(i=1;ixn;k=1;for(j=1;j=n;j+)k=k*x;coutk ;return 0;/*循环 21:计数输入一组整数,以0 结束,统计数据个数(不含0)及最大值。输入 1234564350输出 7 456#includeusing namespace std;int main()int a,max=0,i=0;cina;while(a!=0)i+;if(amax)max=a;cina;couti max;return 0;循环 22:素数输入一个正整数n,输出 2,n 之间所有的素数及素数个数。输入 10输出23574#includeusing namespace std;int main()int n,i,j,s;s=0;cinn;for(i=2;i=n;i+) for(j=2;j=i;j+)if(i%j

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论