c语言选择结构试题带答案

上传人:ji****72 文档编号:37524346 上传时间:2018-04-17 格式:DOCX 页数:18 大小:45.52KB
返回 下载 相关 举报
c语言选择结构试题带答案_第1页
第1页 / 共18页
c语言选择结构试题带答案_第2页
第2页 / 共18页
c语言选择结构试题带答案_第3页
第3页 / 共18页
c语言选择结构试题带答案_第4页
第4页 / 共18页
c语言选择结构试题带答案_第5页
第5页 / 共18页
点击查看更多>>
资源描述

《c语言选择结构试题带答案》由会员分享,可在线阅读,更多相关《c语言选择结构试题带答案(18页珍藏版)》请在金锄头文库上搜索。

1、 1 / 18一、选择题1. 以下非法的赋值语句是 A: n=(i=2,+i); B: j+; C: +(i+1); D: x=j0;2. 已有定义:int x=3,y=4,z=5;,则表达式!(x+y)+z-1 scanf(“%d”,if(x- main()2 / 18 int a,b,c=246; a=c/100%9; b=(-1) printf(“%d,%dn“,a,b); 输出结果是( )。 A: 2,1 B: 3,2 C: 4,3 D: 2,-16. 两次运行下面的程序,如果从键盘上分别输入6 和4,则输出结果是 main( ) int x; scanf(“%d“, if(x + +

2、 5) printf(“%d“,x); else printf(“%dn“,x - -); A: 7 和5 B: 6 和3 C: 7 和4 D: 6 和47. 能表示x 为偶数的表达式是 A: x%2=0 B: x%2=1 C: x%2 D: x%2!=08. 下面的程序段中共出现了几处语法错误? int a,b; scanf(“%d“,a); b=2a; if(b0) printf(“%b“,b); A: 1 B: 2 C: 3 D: 49. C 语言中,逻辑“真”等价于 A: 大于零的数 B: 大于零的整数 C: 非零的数 D: 非零的整数3 / 1810. C 语言的 switch 语句

3、中,case 后 A: 只能为常量 B: 只能为常量或常量表达式 C: 可为常量及表达式或有确定值的变量及表达式 D: 可为任何量或表达式11. 已知int i=10;表达式“20-01) A: 5 B: 0 C: 24 / 18D: 117. 以下程序的输出结果是( ) main() int a5,b0,c0; if(ab+c) printf(“*n”); else printf(“$n”); A: 有语法错误不能通过编译 B: 可以通过编译但不能通过连接 C: * D: $18. 以下程序的输出结果是( ) main() int m5; if(m+5) printf(“%dn”,m);el

4、se printf(“%dn”,m); A: 4 B: 5 C: 6 D: 719. 若运行时给变量x 输入12,则以下程序的运行结果是( ) main() int x,y; scanf(“%d”, yx12?x+10:x12; printf(“%dn”,y); A: 0 B: 22 C: 12 D: 1020. 若w1,x2,y3,z4,则表达式wy) zx;xy;yz; A: x10,y20,z30 B: x20,y30,z30 C: x20,y30,z10 D: x20,y30,z2030. 下列表达式中能表示a 在0 到100 之间的是 A: a0 B: a=0,b=0,c=0; C:

5、 if(a0); D: if(b=0) m=1;n=2;以下题目为二级题以下题目为二级题37. if 语句的基本形式是:if(表达式)语句,以下关于“表达式”值的叙述中正确的是 A)必须是逻辑值 B)必须是整数值 C)必须是正数 D)可以是任意合法的数值38. 有以下程序段 int i,n; for(i=0;i main() int x=1,y=0; if(!x) y+; else if(x=0) if (x) y+=2; else y+=3; printf(“%dn“,y); 程序运行后的输出结果是 A)3 B)2 C)1 D) 040.有以下程序 #include int fun (int

6、 x,int y) if(x!=y) return (x+y)/2); else return (x); main() inta=4,b=5,c=6; printf(“%dn“,fun(2*a,fun(b,C); 程序运行后的输出结果是 A)3 B)6 C)8 D)1241. 有以下程序: #include 9 / 18main() int a=0,b=0,c=0,d=0; if(a=1) b=1;c=2; else d=3; printf(“%d,%d,%d,%d“,a,b,c,d); 程序输出( ). A)1,1,2,0 B)0,0,0,3 C)编译有错 D) 0,1,2,042. 有以下

7、程序: #include main() int x=1,y=0,a=0,b=0; switch(x) case 1: switch(y)case 0: a+; break;case 1: b+; break; case 2 : a+; b+; break; case 3: a+; b+; printf(“a=%d,b=%dn“,a,b); A) a=2,b=2 B) a=2,b=1 C) a=1,b=1 D) a=1,b=043. 若有定义 int x, y; 并已正确给变量赋值,则以下选项中与表达式(x-y)?(x+) : (y+)中的条 件表达式(x-y) 等价的是( ) A) (x-y0

8、) B) (x-y0) D)(x-y=0)44 .有以下程序: #include main() int x=1,y=0;10 / 18if ( !x ) y+; else if (x=0) if(x) y+=2; else y+=3; printf(“%dn“,y); 程序运行后的输出结果是( ) A) 3 B) 2 C) 1D) 045. 若有定义: float x=1.5; int a =1,b=3,c=2;则正确的 switch 语句是() A)switch(a+b)case 1: printf(“*n“); case 2+1 : printf(“*n“);B)switch( (int)

9、x ); case 1: printf(“*n“); case 2 : printf(“*n“); C) switch( x ); case 1.0: printf(“*n“); case 2.0 : printf(“*n“); D) switch( a+b ) case 1: printf(“*n“); case c: printf(“*n“);46. 若变量已正确定义,在 if ( W ) printf(“%dn“,k); 中,以下不可替代 W 的是() 。 A) ay) if(y main() int a=1,b=2,c=3,d=4,r=0; if(a!=1) ; else r=1; i

10、f(b=2) r+=2; else; if(c!=3) r+=3; else; if(d=4) r+=4; printf(“%dn“,r); 则程序的输出结果是() A) 10 B) 7 C) 6 D) 359. 有以下程序 #include 14 / 18main() int a; scanf(“%d“, if(a+, 则输出结果是 A) 10 B) 11 C) 9 D) 860.设 x=3,y=-4,z=6,写出表达式 !(xy)+(y!=z)|(x+y) if(a100) printf(“%dn“, a100); else printf(“%dn“, a0) B) !015 / 188、

11、若变量已正确定义,以下语句段的输出结果是_ x=0; y=2; z=3 switch( x ) case 0 : switch( y=2 ) case 1: printf(“ * “); break;case 2: printf(“ % “); break; case 1 : switch( z ) case 1: printf(“ $ “);case 2: printf(“ * “); break; default: printf(“ # “); 9、 int a=3; a+=(a main() int x; scanf(“%d“, if(x15)printf(“%d“,x-5); if(x

12、10)printf(“%d“,x); if(x5)printf(“%dn“,x+5); 若程序运行时从键盘输入 12,则输出结果为_。 11、以下程序运行后的输出结果是_。 #include main() int x=10,y=20,t=0; if(x=y)t=x;x=y;y=t; printf(“%d %dn“,x,y); 12、以下程序的运行结果是_。 main() int a=2,b=7,c=5;16 / 18switch(a0) case 1: switch (bc,a+cb,b+ca。 请填空。 main() float a,b,c; scanf(“%f%f%f”, if(_)pri

13、ntf(“YESn”);/*a,b,c 能构成三角形*/ else printf(“NOn”);/*a,b,c 不能构成三角形*/ 三、编程题 1. 从键盘输入一个学生的分数, 要求实现这样的判断功能: 如果分数大于 100,输出 Input error! 如果分数介于 100 到 90 之间, 输出 Very Good! 如果分 数介于 80 到 90 只,输出 Good! 如果分数介于 70 到 80 之间,输出 Middle 如果 分数介于 60 到 70 之间, 输出 Pass! 如果分数小于 60,输出 No Pass! 2. 输入一个整数,判断该数是奇数还是偶数。 3. 从键盘接收

14、三个整数,编程求出最小数。 17 / 184. 从键盘接收一个字符,如果是字母,输出其对应的 ASCII 码,如果是数字,按原样输出, 否则给出提示信息: 输入错误! 。 5. 输入一个字符,判断它是否是小写字母,是小写字母,则将它转换成大写字母,如果不 是,则不转换,然后输出所得到字符。 6. 编程判断输入的正整数是否既是 5 又是 7 的整倍数。若是,输出 yes,否则输出 no。 7. 编写一个简单计算器程序,输入格式为:data1 op data2。其中 data1 和 data2 是参加运算的两个数,op 为运算符,它的取值只能是+、-、*、/。 8. 已知银行整存整取存款不同期限的

15、月息利率分别为: 0.315% 期限一年 0.330% 期限二年 月息利率 0.345% 期限三年 0.375% 期限五年 0.420% 期限八年 要求输入存钱的本金和期限,求到期时能从银行得到的利息与本金的合计。附录:附录:答案:答案:一、选择题12345678910CDBCAAACCB 11121314151617181920BADCBBDCAD21222324252627282930BBCCDCBB BB31323334353637383940CBDABDDDDB41424344454647484950CBADAAABBA51525354555657585960ADBABCABAB二、填空题1 非 0, 02 低于3 高于4 高于5 A) a=b|a46 17 A) xc&a+cb & b+ca三、编程题(略)

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号