C++循环控制结构练习题_第1页
C++循环控制结构练习题_第2页
C++循环控制结构练习题_第3页
C++循环控制结构练习题_第4页
C++循环控制结构练习题_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

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

文档简介

精品文档 1欢迎下载 循环控制结构练习题 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 using 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 精品文档 2欢迎下载 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 n cout n f n if f n cout n 是素数 endl else cout n 不是素数 endl system pause return 0 3 26 2017 bool f2 int n int k sqrt n i for i 2 i k 1 return 1 1 int main int n while 1 cin n if n 0 break if f2 n cout 是素数 endl system pause return 0 3 编写程序 输入一个整数 求该整数的各位数字和 include include using namespace std 精品文档 3欢迎下载 int f 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 endl system pause return 0 3 26 2017 int f3 int n n abs n if n n if n 0 break cout f3 n 精品文档 4欢迎下载 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 法二 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 3 26 2017 int f4 int n 精品文档 5欢迎下载 n abs n if n n if n 0 break cout f4 n system pause return 0 4 编写程序 输入一个整数 求该整数的各位数字的平方和 法一 include 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 int n cout n 精品文档 6欢迎下载 n abs n cout f n system pause return 0 3 27 2017 int f4 int n n abs n if n10 return n 10 n 10 f4 n 10 int main int n while 1 cin n if n 0 break cout f4 n endl system pause return 0 5 编写程序 输入一个整数 求该整数的各位上的数字是否包含数字 5 若有 则输出是第几位有含数字 5 include using namespace std void f int n 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 精品文档 7欢迎下载 if i 10 m cout 第 j 1 位 n m 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 setw i for int j 1 j 10 j cout cout endl 3 27 2017 void f6 for int j 0 j 10 j cout setw 20 j for int i 0 i 10 i cout cout endl int main int n m f6 system pause return 0 8 编程计算 的前 20 项的和 11 6 9 5 7 4 5 3 3 2 1 法一 include using namespace std double f double n if n 0 if n 1 return 1 else return n 2 n 1 f n 1 精品文档 8欢迎下载 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 cin n cout 0 i i 10 if i 10 5 j cout j endl int main int n cout n n abs n cout 包含5的个数为 精品文档 9欢迎下载 f n cout endl system pause return 0 10 编写程序 输出所有含数字 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 的最小素数 include using 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 m for i 2 i k 1 cout m break system pause return 0 法二 include using namespace std int main 精品文档 10欢迎下载 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 从键盘输入 3 27 2017 int sum2 int n int sum 0 t 1 for int j 1 j n j t 1 for int i 1 i n 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 精品文档 11欢迎下载 int i for i 1000 i 0 j j 10 sum sum j 10 if sum m cout i cout 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 system 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 精品文档 12欢迎下载 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 编写一程序 输入一个正整数 n 求小于等于 n 的最大素数 18 求 100 999 中的 所谓水仙花数是指一个三位数 它的每位数字的立方之 和等于该数 例如 因为 153 13 53 33 所以 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 之内的所有完数 所谓完数是指一个数恰好等于它的所有因子之和 例如 6 1 2 3 所以 6 为完数 20 编一程序显示如下图案 21 编一程序显示如下图案 A A B C A B C D E include 精品文档 13欢迎下载 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 system pause return 0 21 根据 4 1 1 3 1 5 1 7 求 的近似值 直到最后一项的值小于 0 000001 为止 22 猴子吃桃问题 猴子第一天摘下若干个桃子 当即吃了一半 还不过瘾 又多吃了一个 第二天早上又将剩下的桃子吃掉一半 又多吃了一个 以后 每天早上都吃了前一天剩下的一半零一个 到第 10 天早上想再吃时 发现 只剩一个桃子了 求猴子第一天究竟摘了多少个桃子 23 编程序模拟剪刀 石头和纸游戏 游戏规则为 剪刀剪纸 石头砸剪刀 纸 包石头 玩游戏者从键盘上输入 s 表示剪刀 或 表示石头 或 表示纸 要求两个游戏者交替输入 计算机给出输赢的信息 24 编写程序输出菲波那切数列的前 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 精品文档 14欢迎下载 j if x i 10 x i 10 cout j endl return x int main int n cout n n abs n cout 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 精品文档 15欢迎下载 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 if s n int z sqrt i int j for j 2 j z 1 cout i k if k 6 0 cout endl int main foundPrime 43 system pause return 0 精品文档 16欢迎下载 29 编程求下式的值 n1 n2 n3 n4 n10 其中 n 1 2 3 编写函数时 设置参 数 n 的默认值为 2 include using namespace std int f int n 2 int i t 1 sum 0 k 0 for i 1 i 10 i t t n sum sum t return sum int main cout f endl cout f 1 endl cout f 2 endl cout f 3 endl system pause return 0 30 给定求组合数公式为 Cnm m n m n 编一程序 输入 m 和 n 的值 31 求 s 1 1 2 1 2 3 1 2 3 n 的值 include using namespace std int f int n int sum t 0 for int j 1 j 0 i sum sum i t t sum return t int main 精品文档 17欢迎下载 int n cout n n abs n cout f n cout endl system pause return 0 32 编程计算 s 20 1 2 3 1 2 2 1 ij ji 33 求 sum a aa aaa aaaa aa a 表示 n 个 a 的值 其中 a 是一位数字 例 如当 n 6 a 2 时 sum 2 22 222 2222 22222 222222 n 和 a 的值由键盘输入 法一 include using namespace std int f int a int n int i t 1 sum 0 k 0 for i 0 i n i sum sum pow 10 i a k k sum return k int main cout f 2 2 endl system pause return 0 法二 include using namespace std int f int a int n int i t 1 sum 0 k 0 for i 0 i n i k k a t sum sum k t t 10 精品文档 18欢迎下载 return sum int main cout f 2 3 endl system pause return 0 34 求 100 230 之间所有素数的和 include include using namespace std void f int t 0 for int j 100 j 230 j int k sqrt j int i for i 2 i k 1 cout j t if t 6 0 cout endl int main f system pause return 0 3 27 2017 int sum int n int m int sum 0 for int i n i m i int k sqrt i j for j 2 j k 1 sum sum i return sum int main cout sum 100 230 system pause return 0 精品文档 19欢迎下载 35 从键盘上输入若干整数 计算并输出其中正整数的平均值 以 0 作为输入结 束标志 要求分别使用 while 语句 do while 语句编写 36 编程实现下面的图案 37 实现一个简单的菜单程序 运行时显示 Menu A 阶乘 S 求和 F 找素数 Q 退出 请选择 A S F Q 当选择A时 输出 求阶乘 信息 选择S时 输出 求和 信息 选择F时 输 出 找素数 信息 选择Q时 退出循环 结束程序 3 27 2017 include include using namespace std void menu cout Menue endl cout setw 15 A 求阶乘 endl cout setw 13 S 求和 endl cout setw 15 F 找素数 endl cout setw 13 Q 退出 0 i i 10 sum sum i 10 return sum int AA int n int t 1 for int i 1 i n i t t i return t void k3 int n int k sqrt n int i for i 2 i k i if n i 0 cout 不是素数 k 1 cout 是素数 endl void choice char ch int n while 1 menu cout n cout ch switch ch case A cout AA n break case S cout sum n break case F k3 n break case Q break int main choice system pause return 0 38 编程找出所有的三位整数中各位数字之和为素数的所有三位数 每行输出 5 个 39 编程实现如下图案 ststststststststststststs stststststststststststs ststststststststststs stststststststststs ststststststststs stststststststs ststststststs stststststs ststststs stststs ststs sts S 40 编程实现如下图案 精品文档 21欢迎下载 A B B C C D D E E F F G G HHHHHHHHHHHHHHH 41 编程实现如下图案 A B B C C D D E E F F G G HHHHHHHHHHHHHHH G G F F E E D D C C B B A void printABCD int j 上半部分 for int i 1 i 8 i cout setw 20 i for j 1 j 2 i 1 j if j 1 j 2 i 1 cout char A i 1 else if i 8 cout char A i 1 else cout cout endl 42 从键盘上输入一个整数 判断该数是否为回文数 所谓的回文数就是从左到 右读与从右到左读都是一样的数 如 7887 23432 就是回文数 include include 精品文档 22欢迎下载 using namespace std void f int n int j 0 t 0 for int i n i 0 i i 10 j for int i n i 0 i i 10 t t pow 10 j 1 i 10 j if t n cout n 是回数 endl else cout 不是回数 endl int main int n cout n f n return 0 43 编写程序 输入正整数 a m 和 N 计算 am

温馨提示

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

评论

0/150

提交评论