C语言循环习题1(22页).doc

上传人:1595****071 文档编号:34801831 上传时间:2022-08-18 格式:DOC 页数:23 大小:50KB
返回 下载 相关 举报
C语言循环习题1(22页).doc_第1页
第1页 / 共23页
C语言循环习题1(22页).doc_第2页
第2页 / 共23页
点击查看更多>>
资源描述

《C语言循环习题1(22页).doc》由会员分享,可在线阅读,更多相关《C语言循环习题1(22页).doc(23页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、-循环习题集锦一 选择题1for(i=0;i10;i+);结束后,i的值是; A 9 B 10 C 11 D 122下面程序的循环次数是:#include void main()int k=0; while(k10)if(k1) continue;if(k=5) break;k+;printf(“k=%dn”,k);A. 5 B 6 C 4 D 死循环,不能确定循环次数3下面程序的输出结果是()#includevoid main()int s,k;for(s=1,k=2;k5;k+)s=s+k;printf(“%dn”,s);A 1 B 9 C 10 D 154.要使下面程序输出10个整数,则

2、在下画线处填入正确的数是:#includevoid main() int i;for(i=0;i= ;)printf(“i=%dn”,i=i+2); (显示的是:2,4,6,8,10,12,20)A 9 B 10 C 18 D 205.运行下面程序:#includevoid main() int i=10,j=0;do j=j+i; /*第一:10,第二:19第三:27第四:34第五:40*/i-;while(i5);printf(“%dn”,j);输出结果是:A 45 B 40 C 34 D 556运行下面程序#include main()int k=0,a=1; while(k10) fo

3、r( ; ;) if(k%10)=0)/*当循环开始的时候时,k=0,此时和10取3余的结果就等于0,就跳出了for循环开始下面的循环*/ break; else k-;k=k+11;a=a+k;printf(“k=%d n a=%dn”,k,a);则输出的结果是()A 21 32 B 21 33 C 11 12 D 10 117以下叙述正确的是:A do-while语句构成的循环不能用其他语句构成的循环来代替。B do-while语句构成的循环只能用break语句退出。C用do-while语句构成的循环,在while 后的表达式为非零时结束循环。D用do-while语句构成的循环,在whil

4、e后的表达式为零时结束循环。8有如下程序:#includevoid main() int x=3;doprintf(“x=%dn”,x-);/*如果x的在x的前面则结果就是显示的是2*/while(!x);/*!x表示不是上面的x*/该程序的执行结果是:A 3 2 1 B 2 1 0 C 3 D 29若k为整型变量,则下面while循环执行的次数为:k=10;while(k=0) k=k-1;A 0 B 1 C 10 D无限次10下面有关for循环的正确描述是Afor循环只能用于循环次数已经确定的情况Bfor循环是先执行循环体语句,后判断表达式C在for循环中,不能用break语句跳出循环体。

5、Dfor循环的循环体语句汇总,可以包含多条语句,但必须用花括号括起来。11对for(表达式1;表达式3)可理解为A for(表达式1;0;表达式3) B for(表达式1;1;表达式3)C for(表达式1;表达式1;表达式3) D for(表达式1;表达式2;表达式3)12若i为整型变量,则以下循环执行的次数是()for(i=2;i=0;)printf(“%d”,i-);A无限次 B 0次 C 1次 D 2次13以下循环体的执行次数是;main()int i,j;for(i=0,j=3;i=j;i=i+2,j-)printf(“i=%dn”,i);A 3 B 2 C 1 D 014.执行以下

6、程序后,输出结果是:main() int y=10;do y-;while(-y);printf(“%d”,y-);A -1 B 1 C 8 D 015以下程序的输出结果是:main() int a,b; for(a=1,b=1;a=10) break; if(b%3=1) b=b+3; continue;printf(“%d”,a);A 101 B 3 C 4 D 5二、填空题1 循环的3个常见语句分别是?for while dowhile2 下面程序的运行结果为:main()int a=10,y=0;doa+=2;y+=a;if(y50) break;while(a14);printf(“

7、a=%d,y=%dn”,a,y);a=14 y=263.从键盘输入1 2 3 4 5 -1 回车,则下面程序运行的结果是:main() int n,k=0;do scanf(“%d”,&n); k+=n;while(n!=-1);printf(“k=%dn,n=%dn”,k,n);k=12344 n=-14.下面程序的运行结果为:main()int i,j,s=0;for(i=1,j=5;ij;i+,j-)s+=i*10+j;printf(“%dn”,s);395下面程序的运行结果是main()int i=10,s=0;for(;-i;)if(i%3=0)s+=i;s+;printf(“ns=

8、%d”,s);s=196.下面程序的运行结果是main()int a=2,n=5,s; s=a;for(;-n;)s=s*10+a;printf(“%d”,s);22222?7.下面的程序运行时,循环体语句“a+”运行的次数为:main()int i,j,a=0;for(i=0;i=0;j-)a+;printf (“a=%dn”,a);108.下面的程序运行后,a的值为:main() int i,j,a=0;for(i=0;i=0;j-) a+;79.下面程序的运行结果为:int i=1,s=3;dos+=i+;if(s%7=0) continue;else +i;while(s15);pri

9、ntf(“%d”,i);810.当运行以下程序时,从键盘输入China# 回车,则下面程序的运行结果是:#include “stdio.h”main() int v1=0,v2=0;char c; while(c=getchar()!=#) switch(c) case a: case h: default:v1+; case o:v2+; printf(“%d,%dn”,v1,v2);5,5三、改错题1 for(i-0,i5,i+) j+; for(i-0;i5;i+) j+;2 while(j10); j+;i=j;while(j10);/*不要分号*/j+;i=j;3 do j+;a=j

10、;while(j10)do j+;a=j;while(j10);/*必须要有分号*/4.用下面程序来实现5!int s=1,i=1;while(i=5)s*=i;i+;/*在做循环时,循环体必须用大括号括起来*/5.下面程序段实现求半径r=1到r=10的圆面积,直到面积大于100为止。for(r=1;r100) continue;/*当完成循环任务时,应该用break来终止循环*/printf(“%fn”,s);四、编程题1 求1-2+3-4+99-100。#include#includevoid main() int i,sum,m; m=1; sum=0; for(i=1;fabs(m)=

11、99;i+) m=i*pow(-1,i-1); sum=sum+m; printf(sum=%dn,sum); 2.任意输入10个数,分别计算输出其中的正数和负数之和。#includevoid main()int m,n,k,i;k=0;n=0;for(i=1;i0)k=k+m;elsen=n+m;printf(负数和n=%dn正数和k=%dn,n,k);3计算1-100以内的所有含6的数的和。#includevoid main()int m=0,n=0, i,j;for(i=0;i=9;i+)for(j=0;j=9;j+)if (i=6|j=6)n=n+i*10+j;printf(%6d,i

12、*10+j);printf(%dn,n);printf(%dn,6+16+26+36+46+56+66+76+86+96+60+61+62+63+64+65+67+68+69);4 输出所有的3位水仙花数。所谓水仙花数是指所有位的数字的立方之和等于该数,例如:153=13+33+53#includevoid main()int m,n,k,i,j,p=0;for(i=1;i=9;i+)for(j=0;j=9;j+) for(k=0;k=9;k+)m=i*100+j*10+k; n=i*i*i+j*j*j+k*k*k;if(m=n)printf(所有3位数中第%d水仙花数为%dnf,+p,m);

13、5 编写程序输出下面图形。1234567890#includevoid main()int i,j,t=0;for(i=0;i4;i+) /控制整个数组的行数for(j=0;j=i;j+) /使整个数字从1开始循环t=t+1; /用t表示要输出的数字if(t=10)printf(0);else printf(%d,t); /将10转换为0printf(n); /控制换行6 编写程序输出下面图形 *#includevoid main()int i,j,m,n;for(i=0;i=i;m-) printf( ); /输入相应的空格数,使每一行的符号相应的减少 for(n=6;n5-i*2;n-) printf(*); /输入相应的*个数 printf(n);for(j=0;j4;j+) /显示总共有几行符号for(m=1;m=j;m+)printf( ); /输入相应的空格数,使每一行的符号相应的减少for(n=0;n7-j*2;n+)printf(*); /输入相应的*个数printf(n);第 23 页-

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 单元课程

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com