ImageVerifierCode 换一换
格式:DOCX , 页数:37 ,大小:34.94KB ,
资源ID:12395646      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-12395646.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(C++循环控制结构练习题.docx)为本站会员(b****8)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

C++循环控制结构练习题.docx

1、C+循环控制结构练习题循环控制结构练习题1. 从键盘上输入一个正整数n,计算其阶乘n! #include #include using namespace std;int f(int n) int t = 1; for (int i = n; i 0; i-) t = t*i; return t;(0的阶层为1)int main() int n; cout n; cout endl; if (n 0)n = abs(n); cout n!=f(n); system(pause); return 0;2. 从键盘上输入一个正整数n,判断是否是素数法1: #include#include usin

2、g namespace std;void f(int n) int k = sqrt(n),i; for ( i = 2; i = k+1)cout n 是素数 endl; else cout n 不是素数 endl;int main() int n; cout n; f(n); system(pause); return 0;法2;#include#include using namespace std;bool f(int n) int k = sqrt(n), i; for (i = 2; i = k + 1)return 1; else return 0;int main() int

3、n; cout n; f(n); if(f(n)cout n 是素数 endl; else cout n 不是素数 endl; system(pause); return 0;bool f2(int n)int k=sqrt(n),i; for( i=2;i=k+1)return 1;1int main()int n;while(1)cinn;if(n=0)break;if(f2(n)cout 是素数!endl;system(pause);return 03.编写程序,输入一个整数,求该整数的各位数字和。 #include #include using namespace std;int f(

4、int n) int t = 0; for (int i = n; i 0; i=i/10) t=i%10+t; return t;int main() int n; cout n; if (n 0)n = abs(n); cout n的各位数字和为: f(n) endl; system(pause); return 0;法二: int f(int n) if (n 10)return n; else return (n % 10 + f(n / 10); int main() int n; cout n; if (n 0)n = abs(n); cout n的各位数字和为: f(n) end

5、l; system(pause); return 0;int f3(int n)n=abs(n);if(nn;if(n=0)break;cout f3(n);system(pause);return 0;3. 编写程序,输入一个整数,求该整数的各位数字的乘积。法一:#include using namespace std;int f(int n) if (n 10)return n; else return (n % 10 )* f(n / 10);int main() int n; cout n; n = abs(n); cout f(n); system(pause); return 0;

6、法二:#include using namespace std;int f(int n) int t = 1; for (int i = n; i 0; i = i / 10) t = t*(i % 10); return t;int main() int n; cout n; n = abs(n); cout f(n); system(pause); return 0;int f4(int n)n=abs(n);if(nn;if(n=0)break;cout f4(n);system(pause);return 0;4. 编写程序,输入一个整数,求该整数的各位数字的平方和。法一: #incl

7、ude using namespace std;int f(int n) int t = 0; for (int i = n; i 0; i = i / 10) t = t+(i % 10)*(i%10); return t;int main() int n; cout n; n = abs(n); cout f(n); system(pause); return 0;法二:#include using namespace std;int f(int n) if (n 10)return n*n; else return (n % 10)*(n % 10)+f(n / 10);int main

8、() int n; cout n; n = abs(n); cout f(n); system(pause); return 0; int f4(int n)n=abs(n); if(n10)return (n%10)*(n%10)+f4(n/10); int main()int n;while(1)cinn;if(n=0)break;cout f4(n)endl;system(pause);return 0;5. 编写程序,输入一个整数,求该整数的各位上的数字是否包含数字5,若有则输出是第几位有含数字5. #include using namespace std;void f(int n)

9、int j = 0; for (int i = n; i 0; i = i / 10) j+; if (i % 10 = 5)cout j ; int main() int n; cout n; n = abs(n); cout 包含5的位置i为:; f(n); cout 0;i=i/10,j+)if(i%10=m)cout 第j+1位nm;if(n=0)break;f5(n,m);system(pause);return 0;6. 编写程序输出一个平行四边行。注:边长为10个*号 void u() int i = 0; for (int i = 1; i = 10; i+) cout set

10、w( i); for (int j = 1; j = 10; j+) cout *; cout endl; void f6()for(int j=0;j10;j+)coutsetw(20+j); for(int i=0;i10;i+)cout*; cout endl;int main()int n,m;f6();system(pause);return 0;8.编程计算:的前20项的和。法一: #include using namespace std;double f(double n) if (n 0) if (n = 1)return 1; else return n / (2 * n -

11、 1) + f(n - 1); int main() int n; cout n; n = abs(n); cout f(n); cout 0) if(n=1)return 1; else return (n/(2*n-1)+f7(n-1);int main()double n,m;cinn;cout 0; i = i / 10) if (i % 10 = 5)j+; cout jendl;int main() int n; cout n; n = abs(n); cout 包含5的个数为:; f(n); cout endl; system(pause); return 0;10.编写程序,输

12、出所有含数字5且为77倍数的四位数。 void J() for(int i=1000;i0;m=m/10) if (m % 10 = 5) cout i ; break; int main()J();System(“pause”);return 0;11.编写一程序,输入一个正整数n,求大于等于n的最小素数。#includeusing namespace std; int main() int x, b, i, m, k; cout x; b = sqrt(x); for (i = 2; i = b+ 1) cout x endl; else for (m = x; m+) k = sqrt(

13、m); for (i = 2; i = k + 1) cout m ;break; system(pause); return 0;法二:#include using namespace std;int main() int n, k, m, i, j; cout n; for (i = n; i+) for (j = 2; j*j= i) cout i endl; break; system(pause); return 0;12.从键盘输入一个小于15的正整数,计算其阶乘。13.编程计算1!+2!+3!+.+n!。n从键盘输入。int sum2(int n)int sum=0,t=1;fo

14、r(int j=1;j=n;j+)t=1;for(int i=1;in;if(n=0)break;cout sum=sum2(n)endl;system(pause);return 0;14.从键盘上输入一个正整数m,找出1000至10000之间所有各位数字之和等于m的数。如输入32,则有9869满足要求。因为9869各位上数字之和等于32。#include using namespace std;void f(int m) int i; for (i = 1000; i 0; j = j / 10) sum = sum + j % 10; if (sum = m) cout i ; cout

15、 endl;int main() int n, m; cout n; f(n); system(pause); return 0;15.已知xxz+yzz=532,求所有可能的x,y,z的值#include using namespace std;int main() for (int x = 0; x = 9; x+) for (int y = 0; y = 9; y+) for (int z = 0; z = 9; z+) int k = x * 10 + x * 100 + z + y * 100 + z * 10 + z; if (k = 532)cout x y z endl; sy

16、stem(pause); return 0;16.编程从键盘中随机输入若干整数,统计其中正整数、0、负整数数的个数。当输入整数100000时结束输入。#include using namespace std;void main() int n=0,m=0,k=0,c=0; while (n != 100000) cout n; if (n 0)k+; else if (n = 0)m+; else if (n 0)c+; cout 正整数的个数是: k endl; cout 负整数的个数是: k endl; cout 0的个数是: k endl; system(pause);17.编写一程序,

17、输入一个正整数n,求小于等于n的最大素数。18.求100999中的。所谓水仙花数是指一个三位数,它的每位数字的立方之和等于该数。例如,因为153135333,所以153为水仙花数。#include using namespace std;void main() int i; for (i = 100; i = 999; i+) int j, sum = 0; j = i; while (j) int k = j % 10; sum = sum + k*k*k; j = j / 10; if (sum = i)cout sum ; system(pause);19.求1000之内的所有完数。所谓

18、完数是指一个数恰好等于它的所有因子之和。例如,6123,所以6为完数。20. 编一程序显示如下图案:* * * * * * * * * * * * * * * * * * * * *21.编一程序显示如下图案:AA B CA B C D E #include#include using namespace std;void f(int n) for (int i = 1; i = n; i+) cout setw(20 - i); for (int j = 0; j 2 * i - 1; j+) char t = A+j; cout t; cout endl; int main() f(3);

19、 system(pause); return 0;21.根据/4 =1-1/3+1/5-1/7+求的近似值,直到最后一项的值小于为止。22. 猴子吃桃问题。猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个。第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。到第10天早上想再吃时,发现只剩一个桃子了,求猴子第一天究竟摘了多少个桃子?23.编程序模拟剪刀,石头和纸游戏。游戏规则为:剪刀剪纸,石头砸剪刀,纸包石头玩游戏者从键盘上输入s (表示剪刀)或(表示石头)或(表示纸),要求两个游戏者交替输入,计算机给出输赢的信息。 24.编写程序输出菲波那

20、切数列的前20项。即前两项为1,以后每一项为前两项之和。25.打印九九乘法表。26.若一头小母牛,从出生起第四个年头开始每年生一头母牛,按此规律,第n年时有多少头母牛?27.编写程序,输入一个整数,求该整数是几位数?并输出最高位数字。 #include using namespace std;int f(int n) int x = 0,j=0; for (int i = n; i 0; i = i / 10) j+; if (x i % 10)x = i % 10; cout j endl; return x;int main() int n; cout n; n = abs(n); cou

21、t f(n); cout endl; system(pause); return 0;28.从键盘上输入一个正整数n,求出5位数中各位数字之和等于n的所有素数,每行按6个素数输出。法一: #include (错误)using namespace std;void f(int m, int n, int k) int l = 0; for (int i = m; i 0; j = j / 10) s = s + j % 10; if (s = k) int t, z = sqrt(i); for (t = 2; t = k + 1) cout i ; l+; if (l % 6= 0)cout endl; int main() f(10000, 99999, 43); system(pause); return 0;法二:(正确)#include using namespace std;void foundPrime(int n) int k = 0; for (int i = 10000; i0) s = s + m % 10; m = m / 10;

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2