C语言第四章程序控制结构复习题

上传人:xt****7 文档编号:136536304 上传时间:2022-08-17 格式:DOC 页数:22 大小:81.50KB
返回 下载 相关 举报
C语言第四章程序控制结构复习题_第1页
第1页 / 共22页
C语言第四章程序控制结构复习题_第2页
第2页 / 共22页
C语言第四章程序控制结构复习题_第3页
第3页 / 共22页
点击查看更多>>
资源描述
选择结构程序设计复习题一选择题1 已有定义语句:int x=3,y=4,z=5;,则值为0的表达式是:( ) a) xy+ b) xy-z d) y%z=y-z2 已有定义语句:int x=3,y=0,z=0;,则值为0的表达式是:( ) a) x&y b) x|z c) x|z+2&y-z d)!(xy)&!z|y)3. x为奇数时值为“真”,x为偶数时值为“假”的表达式是:( ) a)!(x%2=1) b) x%2=0 c) x%2 d) !(x%2)4. 已有定义语句:int a=3,b=4;,则执行下述表达式后,变量b的值是:( ) (a+=4)&(b+=5) a)3 b) 4 c) 5 d) 65. 已有定义语句:int a=4,b=6;,则执行下述表达式后,变量b的值是:( ) (a+=4)|(b+=6) a)4 b) 5 c) 6 d) 76. 已有定义语句:int x=6,y=4,z=5;,执行以下语句后,能正确表示x,y,z值的选项是:( ) if(xc的值是( ) a) 0 b) 非零 c) “真” d) 19. a为0时,值为“真”的表达式是( ) a) a b) !(+a) c) a=0 d) a=010. 若有定义和语句: int a=4,b=5,c=0d; d=!a&!b|!c;,则d的值是( ) a) 0 b) 1 c) -1 d) 非0的数11. 以下选项不能正确判断a为偶数的表达式是( ) a) a%2=0 b) !a%2!=0 c) a/2*2-a=0 d) !(a%2)12. 有以下程序:main() int a=2,b=1,c=2; if(ba) if(b0) c=0, c+;b+; printf(“b=%d,c=%dn”,b,c);程序的输出结果是:( ) a) b=1,c=2 b) b=1,c=0 c) b=2,c=2 d) b=1,c=113. 有以下程序:main() int n; scanf(“%d”,&n); if(n+5) if(m+5) printf(“%dn”,m+5); else printf(“%dn”,m-); else printf(“%dn”,-m);程序的输出结果是:( ) a) 8 b) 5 c) 10 d) 1215. 有以下程序:main() float x=2.0,y; if(x0.0) y=0.0; else if(x5.0)&(!x) y=1.0/(x+2.0); else if(x10.0) y=1.0/x; else y=1.0; printf(“%fn”,y);程序的输出结果是:( ) a) 0.000000 b) 0.250000 c) 0.500000 d) 1.00000016. 假设所有变量均已正确说明:a=b=c=0; x=35;if(!a) x-;else if(b) ; if(c) x=3;else x=4;以上程序段运行后,x的值是:( ) a) 34 b) 35 c) 4 d) 317. 当a=1、b=3、c=5、d=4时,执行下面一段程序:if(ab) if(cd) x=1; else if(ac) if(b0) s=s+1; if(ab) t=s+t; else if(a=b) t=5; else t=2*s; printf(“t=%dn”,t);要使输出结果为:t=4,给a和b输入的值应满足的条件是:( ) a) ab b) ab0 c) 0aab19. 以下程序的输出结果是:( )main() int a=5,b=4,c=6,d; printf(“%dn”,d=ab?(ac ? a:c) : (b); a) 5 b) 4 c) 6 d) 不确定20. 若有定义语句: int x=3,y=2,z=1; 则以下表达式的值是:( ) z*=(xy ? +x :y+) a) 0 b) 1 c) 4 d) 321. 有以下程序:main() int a=15,b=21,m=0; switch(a%3) case 0: m+;break; case 1: m+; switch(b%2) default: m+; case 0: m+;break; printf(“%dn”,m);程序的输出结果是:( ) a) 1 b) 2 c) 3 d) 422 以下while循环中,循环体执行的次数是:( )k=1;while (-k) k=10; a) 10次 b) 无限次 c) 一次也不执行 d) 1次23 有以下程序段,其中x为整型变量,以下选项中叙述正确的是:( )x=0;while (!x!=0) x+; a) 退出while循环后,x的值为0 b) 退出while循环后,x的值为1 c) while的控制表达式是非法的 d) while循环执行无限次24. 有以下程序段,其中n为整型变量,执行后输出结果是:( ) n=20; while(n-); printf(“%d”,n); a)2 b) 10 c) -1 d) 025. 有以下程序段,其中t为整型变量,以下选项中叙述正确的是:( )t=1;while (-1) t-; if(t) break; a) 循环一次也不执行 b) 循环执行一次 c) 循环控制表达式(-1)不合法 d) 循环执行2次26. 有以下程序段,其中x为整型变量,以下选项中叙述正确的是:( )x=-1;do;while (x+); printf(“x=%d”,x); a) 该循环没有循环体,程序错误 b) 输出x=1 c) 输出x=0 d) 输出x=-127. 有以下程序段,其中x,y为整型变量,程序输出结果是:( ) for(x=0,y=0;(x=1)&(y=1);x+,y-) ; printf(“x=%d,y=%d”,x,y); a) x=2,y=0 b) x=1,y=0 c) x=1,y=1 d) x=0,y=028. 有以下程序: main() int x=0,y=0; while(x5&+y) y-,x+; printf(“%d,%d”,y,x);程序的输出结果是:( ) a) 0,5 b) 1,5 c) 0,4 d) 1,429. 有以下程序: main() int num=0; do num+;printf(“%dn”,num); while(num=2);程序的输出结果是:( ) a) 1 b) 1 c) 1 d) 1 2 2 2 3 3 430. 有以下程序: main() int x=3; do printf(“%d”,x-=2); while(!(-x); 程序的输出结果是:( )a) 1 b) 3 0 c) 1 -2 d) 死循环31. 有以下程序: main() int y=10; do y-; while(-y); printf(“%dn”,y-);程序的输出结果是:( )a) 1 b) -1 c) 8 d) 032. 有以下程序: main() int x=3,y; do y=-x;if(!y) printf(“x”);else printf(“y”); while(x); 程序的输出结果是:( )a) xyx b) yyx c) yxx d) yxy33. 有以下程序段,此处do-while循环的结束条件是:( )int n=0,p;do scanf(“%d”,&p);n+; while (p!=12345&nb) t=a;a=b;b=t; printf(“%d,%dn”,a,b);程序的输出结果是:( )a) 4,1 b) 1,4 c) 4,-1 d) -1,435. 有以下程序: main() int x=3,y=0; do while(!y) y=-x; while(x-); printf(“%d,%dn”,x,y);程序的输出结果是:( )a) -1,3 b) -1,-3 c) 0,0 d) 1,-336. 有以下程序: main() int m,n; printf(“Enter m,n:”); scanf(“%d%d”,&m,&n); while(m!=n) while(mn) m-=n;while(nm) n-=m; printf(“m=%dn”,m);程序的输出结果是:( )a) m=3 b) m=2 c) m=1 d) m=037. 有以下程序: main() int i,s=1; for(i=1;i=50;i+) if(!(i%5)&!(i%3) s+=i; printf(“%dn”,s);程序的输出结果是:( )a) 409 b) 277 c) 1 d) 9138. 有以下程序: main() int x=0,y=0,i; for(i=1;+i) if(i%2=0) x+;continue;if(i%5=0) y+;break; printf(“%d,%d”,x,y);程序的输出结果是:( )a) 2,1 b) 2,2 c) 2,5 d) 5,239. 有以下程序: main() int i=0,a=0; while(i30)for(;)if(i%10)=0) break;else i-;i+=11; a+=i; printf(“%dn”,a);程序的输出结果是:( )a) 66 b) 63 c) 33 d) 3240. 有以下程序: main() int a,b; for(a=1,b=1;a=10) break;if(b%3=1) b+=3; continue; printf(“%dn”,a);程序的输出结果是:( )a) 101 b) 6 c) 5 d) 441. 有以下程序: main() int i=0; for(i+=3;i5|x-5_.3. 若x为int类型,请以最简单的形式写出与!x等价的C语言表达式_ x=0_.4. 设x,y,z,t均为int型变量,则执行下述语句后,x的值是_4_,y的值是_3_,z的值是_4_,t的值是_1_。 x=y=z=3; t=(+x|+y)&+z;5. 若有定义语句:int a=1,b=2,c=3,d=4;,则执行下述表达式后,表达式的值是_1_,a的值是_1_,b的值是_2_,c的值是_2_,d的值是_5_。 (a*=ab)&(c-=bb) c=1; else if(a=b) c=0; else c=-1; printf(“%dn”,c);7. 若有定义:int a=5,b=4,c=9;,以下语句的执行结果是_#a=6,b=3,c=9 。a+=5&b-=2&c+ ? printf(“*a=%d,b=%d,c=%dn”,a,b,c) :printf(“#a=%d,b=%d,c=%dn”,a,b,c);8. 若从键盘上输入3和4,执行以下程序后的输出结果是_36_. main() int a=0,b=0,s=0; scanf(“%d%d”,&a,&b); if(ab) s=b*a,s*=a; printf(“%dn”,s);9. 若从键盘上输入58,则以下程序的输出结果是_585858_.main() int a; scanf(“%d”,&a); printf(“%d”,a); if(a40) printf(“%d”,a); if(a30) printf(“%d”,a);10. 以下程序的运行结果是_!#_.main() int a=0,b=4,c=5; switch(a=0) case 1: switch(b0) case 1: printf(“”); break; case 0: printf(“!”); break; case 0: switch(c=5) case 0: printf(“*”); break; case 1: printf(“#”); break; default: printf(“%”); break; default: printf(“&”); 11要求使以下程序段输出10个整数,请填空。for(i=0;i=_18_;printf(“%dn”,i+=2);12. 执行下面程序段后,k的值是_0_。r=1; n=203; k=1;do k*=n%10*r; n/=10; r+; while(n);13. 下面程序的输出结果是_ 1 2 5 10_。 main() int i,x=10; for(i=1;i=x;i+) if(x%i=0) printf(“%d ”,i);14. 下面程序的输出结果是_无定值_。 main() int i,sum; for(i=1;i6;i+) sum+=i; printf(“%d”,sum);15. 下面程序的输出结果是_20_。 main() int i,sum=0; for(i=2;i=0;i-) for(j=1;j=i;j+) printf(“*”);for(j=0;j=2-i;j+) printf(“!”);printf(“n”); 17. 下面程序的输出结果是_1,1_。 main() int i,j=0,a=0; for(i=0;i5;i+) do if(j%3) break;a+; j+; while(j0;) if(x%3=0) printf(“%d”,-x); continue; x-; 19. 下面程序的输出结果是_*#_。 main() int i,j=2; for(i=1;i=2*j;i+) switch(i/j) case 0: case 1: printf(“*”); break;case 2: printf(“#”); 三操作题1计算1到10之间的奇数之和以及偶数之和。2输出100以内能被3整除且个位数为6的所有整数。3找出2至99之间的全部同构数。同构数是这样一组数:它出现在其平方数的右边,例如,5是25右边的数,25是625右边的数,5和25都是同构数。4根据以下近似公式求值。 5根据以下公式求S的值。 6根据以下公式求S的值。
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 管理文书 > 方案规范


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


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