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

合集下载

c语言选择结构程序设计习题册答案

c语言选择结构程序设计习题册答案

第五章选择结构程序设计基础练习(A)一、填空题1.关系表达式的运算结果是逻辑值。

C语言没有逻辑型数据, 以1 代表“真”, 以0代表“假”。

2.逻辑运算符!是单目运算符, 其结合性是由右结合性。

3.C语言提供的三种逻辑运算符是&& 、|| 、! 。

其中优先级最高的为! ,优先级最低的为| | 。

4.逻辑运算符两侧的运算对象不仅可以是0和1, 或者是0和非0的整数, 也可以是任何类型的数据。

系统最终以0 和非0 来鉴定它们属于“真”或“假”。

5、设y为int型变量, 请写出描述“y是偶数”的表达式(y%2==0) 。

6、设x, y, z均为int型变量, 请写出描述“x或y中有一个小于z”的表达式x<z||y<z 。

7、条件“2<x<3或x<-10”的C语言表达式是x<-10||x>2&&x<3。

8、判断char型变量ch是否为大写字母的对的表达式是(ch>=‘A’)&&(ch<=‘Z’)。

9、当a=3,b=2,c=1时, 表达式f=a>b>c的值是0 。

10、当a=5,b=4,c=2时, 表达式a>b!=c的值是 1 。

11.已知A=7.5,B=2,C=3.6, 表达式A>B&&C>A||A<B&&!C>B的值是0 。

12.若a=6,b=4,c=2, 则表达式!(a-b)+c-1&&b+c/2的值是 1 。

13、有int x,y,z;且x=3,y=-4,z=5, 则表达式(x&&y)==(x||z)的值为 1 。

14、有int x,y,z;且x=3,y=-4,z=5, 则以下表达式的值为 1 。

!(x>y)+(y!=z)||(x+y)&&(y-z)15.有int a=3,b=4,c=5,x,y;, 则以下表达式的值为0 。

C语言选择结构题(含答案)

C语言选择结构题(含答案)

第9、10课时实验一:写出下列程序的运行结果。

1、以下程序的运行结果是:2,-1#include "stdio.h"main(){ int a,b,d=241;a=d/100%9;b=(-1)&&(-1);printf("%d,%d",a,b);}2、以下程序的运行结果是:0,6,0main(){ int a=5,b=6,w=1,x=2,y=3,z=4,c;c=(a=w>x)&&(b=y>z);printf("%d,%d,%d",a,b,c);}3、设x、y和z是int型变量,且x=3,y=4,z=5,则下面表达式中值为0的是D。

A)’x’&&‘y’B)x<=yC)x||y+z&&y-zD)!((x<y)&&!z||1)4、设有:int a=1,b=2,c=3,d=4,m=2,n=2;执行(m=a>b)&&(n=c>d)后n的值为B。

A)1 B)2 C)3 D)45、已知int x=10,y=20,z=30;以下语句执行后x,y,z的值是B。

if(x>y)z=x; x=y; y=z;A)x=10,y=20,z=30 B)x=20,y=30,z=30C)x=20,y=30,z=10 D)x=20,y=30,z=206、以下if语句语法正确的是B。

A)if(x>0)printf(“%f”,x)else printf(“%f”,-x);B)if(x>0){ x=x+y; printf(“%f”,x); }else printf(“%f”,-x);C)if(x>0){ x=x+y; printf(“%f”,x); };else printf(“%f”,-x);D)if(x>0){ x=x+y; printf(“%f”,x) }else printf(“%f”,-x);7、以下程序的运行结果是:***tttmain(){ int a=0,b=0,c=0;if(a==c+b) printf("***\n");if(a=c+b) printf("###\n");if(c>=a+b) printf("ttt\n");}8、以下程序,输入6时,输出5,输入7时,输出为7 main(){int x;scanf(“%d”,&x);if(x- ->6)printf(“x=%d”,++x);elseprintf(“x=%d”,x++);}9、请写出以下程序的输出结果__1_。

(完整版)C语言选择题(附答案)

(完整版)C语言选择题(附答案)

第一单元C语言概述一、选择题1、C语言中主函数的个数为(A)个。

A)1 B)2C)无穷个D)任意个2、以下关于C语言描述错误的是(D)。

A)一个C程序总是从main函数开始执行TB)每个语句和数据声明的最后必须有一个分号TC)C语言的注释符是以“/*”开始并以“*/”结束的TD)一个C程序可以包含多个main函数F3、C 语言源程序文件后缀为(C )。

A).EXE B).OBJ C).C D).ASM4、C语言是由(C )组成的。

A)子程序B)主程序与子程序C)函数D)过程5、C语言属于(B )语言A)机器语言B)汇编语言C)高级语言D)面向对象语言第二单元C语言基础一、选择题1、C语言中普通整型变量int在内存中占(B )字节。

A)1 B)2 C)3 D)42、下列不是C语言基本数据类型的是(A )。

A)字符型B) 整型C) 浮点型D) 结构体3、有关自增、自减运算,以下只有(D )是正确的。

A) ---f B) ++78 C) a—b++ D) d++4、已知A=7.5,B=2,C=3.6,表达式(A>B && C>A) || (A<B && !C>B)的值是(A )。

A)0 B)10 C)1 D)55、若有x=1,y=2,z=3,则表达式(x<y?x:y)= =z的值是(D )。

A)1 B)2 C)3 D)06、判断char型变量ch是否为大写字母的正确表达式是(C )。

A) ‘A’<=ch<=‘Z’B) (ch>=‘A’)&(ch<=‘Z’)C) (ch>=‘A’)&&(ch<=‘Z’) D) (‘A’<= ch)AND(‘Z’>= ch)7、判断整型变量digit是否为数字的正确表达式是(C )。

A) ‘0’<=ch<=‘9’B) (ch>=‘0’)&(ch<=‘9’)C) (ch>=‘0’)&&(ch<=‘9’) D) (‘0’<= ch)AND(‘9’>= ch)8、一个C程序的执行是从(A )。

C语言选择题(附答案)(最新整理)

C语言选择题(附答案)(最新整理)

B)int a,c, c=5;
C)a=5,b=5,c=5;
D)a=b=c=5;
41、C 语言中双精度浮点型变量 double 在内存中占(D )字节。
A)1
B)2
C)4
D)8
42、以下哪个数学函数的作用是求某数的平方根( A )。
A)sqrt()
B)fabs()
C)pow()
D)exp()
43、两次运行下面的程序,如果从键盘上分别输入 6 和 3,则输出结果是( C )。
A) ‘A’<=ch<=‘Z’
B) (ch>=‘A’)&(ch<=‘Z’)
C) (ch>=‘A’)&&(ch<=‘Z’)
D) (‘A’<= ch)AND(‘Z’>= ch)
7、判断整型变量 digit 是否为数字的正确表达式是( C )。
A) ‘0’<=ch<=‘9’
B) (ch>=‘0’)&(ch<=‘9’)
j /= i*j;
printf(“%d”,j);
A)0
B)1
C)2
D)3
28、不是 C 语言提供的合法关键字是( D )。
A)switch B)char
C)case
D)this
29、在 C 语言中,要求参加运算的数必须时整数的运算符是( C )。
A)/
B)*
C)%
D) =
30、若已定义 x 和 y 为 double 类型,且 x=1;则表达式 y=x+3/2 的值是( C )。
C)3,2,3
D)2,3,2
45、读出以下语句的输出结果是( D )。

国家二级C语言选择结构循环结构机试模拟试卷1_真题(含答案与解析)-交互

国家二级C语言选择结构循环结构机试模拟试卷1_真题(含答案与解析)-交互

国家二级C语言(选择结构、循环结构)机试模拟试卷1(总分66, 做题时间90分钟)1. 选择题1.下列选项中,当x为大于1的奇数时,值为0的表达式是( )。

SSS_SINGLE_SELA x%2==0B x/2C x%2!=0D x%2==1分值: 2答案:A解析:算术运算符的优先级高于关系运算符的优先级,所以当x为大于1的奇数时,A选项的值为假,即0。

B选项的值为不定值,但绝对不是O。

C选项的值为真,即1。

D选项的值为真,即1。

2.若a是数值类型,则逻辑表达式(a==1)‖(a!=1)的值是( )。

SSS_SINGLE_SELA 1B 0C 2D 不知道a的值,不能确定分值: 2答案:A解析:逻辑或“‖”要求只要两边的运算对象有一个非零,结果就为真。

虽然不知道a的值,但是若a为l,则左边运算对象为1;若a的值不是l,则右边运算对象的值为1,所以总能保证一边非零。

3.当变量e的值不为2、4、6时,值为“真”的表达式是( )。

SSS_SINGLE_SELA (c>=2&&e<=6)&&(c%2 1=1)B (c==2)‖(c==4)‖(c==6)C (c>=2&&c<=6)&&!(c%2)D (c>=2&&c←6)‖(c!=3)lI(c!=5)分值: 2答案:D解析:逻辑或运算符中只要有一个运算量为真,结果就是真,当c>=2&&c<=6条件不成立时,c的值肯定不是2、3、4、5、6,所以c!:3与c!:5均成立,所以D选项的结果一定为真。

4.有以下程序: #include main() { int a=1,b=2,c=3,d=0;if(a==1&&b++==2) if(b!=2‖c一!=3) prinff(“%d,%d,%d\n”,a,b,c);else prinff(“%d,%d,%d\n”,a,b,c);else prinff(“%d,%d,%d\n”,a,b,c); } 程序的运行结果是( )。

C语言习题四选择结构程序设计

C语言习题四选择结构程序设计

习题四选择结构程序设计1. 设变量x和y均已正确定义并赋值。

以下if语句中,在编译时将产生错误信息的是______。

A、if(x++);B、if(x>y && y!=0);C、if(x>0) x--D、if(y<0) {;}else y++; else x++;解析:本题考查的是if语句。

if后表达式两侧的圆括号不可少,最后是一条语句或是用花括号括起来的一组语句。

选项A和B是在表达式后跟了一条空语句,选项D是在表达式后跟了一组空语句,选项C中x--是表达式而不是语句,所以在编译时会出现错误信息。

故本题答案选C。

2. 有以下程序main(){ int i;for(i=1;i<=40;i++){ if(i++%5==0)if(++i%8==0) printf ("%d",i);}printf("\n"); }执行后的输出结果是______。

A、5B、24C、32D、40解析:本题考查的是if语句的应用。

在满足for 语句条件下,第一个if语句的条件是指i先对5取余后,再自行加1;第二个if语句的条件是指:i=i+1后,再对8取余。

故本题答案选C。

3. 在嵌套使用if语句时,C语言规定else总是______。

A、和之前与其具有相同缩进位置的if配对B、和之前与其最近的if配对C、和之前与其最近的且不带else的if配对D、和之前的第一个if配对解析:本题考查的是if语句的使用规则。

在嵌套使用if语句时,C语言规定else总是和之前与其最近的且不带else的if配对。

故本题答案为C。

4. 有以下程序main(){ int i=1,j=2,k=3;if(i++==1&&(++j==3||k++==3))printf("%d %d %d\n",i,j,k); }程序运行后的输出结果是______。

(完整版)c语言选择结构试题带答案

(完整版)c语言选择结构试题带答案

(完整版)c语言选择结构试题带答案一、选择题1. 以下非法的赋值语句是A: n=(i=2,++i); B: j++; C: ++(i+1); D: x=j>0;2. 已有定义:int x=3,y=4,z=5;,则表达式!(x+y)+z-1 && y+z/2 的值是A: 6 B: 0 C: 2 D: 13. 阅读以下程序:main(){ int x;scanf(“%d”,&x);if(x--<5) printf(“%d”,x);else printf(“%d”,x++);}程序运行后,如果从键盘上输人5,则输出结果是()。

A: 3 B: 4 C: 5 D: 64. 有如下程序main0{ int a=2,b=-1,c=2;if(a<b)< bdsfid="79" p=""></b)<>if(b<0) c=0;else c++printf("%d\n",c);}该程序的输出结果是A: 0 B: 1 C: 2 D: 35. 有以下程序#includemain(){ int a,b,c=246;a=c/100%9;b=(-1)&&(-1);printf("%d,%d\n",a,b);}输出结果是( )。

A: 2,1 B: 3,2 C: 4,3 D: 2,-16.两次运行下面的程序,如果从键盘上分别输入6 和4,则输出结果是main( ){ int x;scanf("%d",&x);if(x + + >5) printf("%d",x);else printf("%d\n",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(b>0) printf("%b",b);A: 1 B: 2 C: 3 D: 49. C 语言中,逻辑“真”等价于A: 大于零的数B: 大于零的整数C: 非零的数D: 非零的整数10. C 语言的switch 语句中,case 后A: 只能为常量B: 只能为常量或常量表达式C: 可为常量及表达式或有确定值的变量及表达式D: 可为任何量或表达式11. 已知int i=10;表达式"20-0<=i<=9"的值是A: 0 B: 1 C: 19 D: 2012. 设有int i, j, k; 则表达式i=1,j=2,k=3, i&&j&&k 的值为A: 1 B: 2 C: 3 D: 013. 逻辑运算符两侧运算对象的数据类型A: 只能是0 或1B: 只能是0 或非0 正数C: 只能是整型或字符型数据D: 可以是任何类型的数据14. 能正确表示“当x 的取值在[1,10]和[200,210]范围内为真,否则为假”的表达式是()A: (x>=1)&&(x<=10)&&(x>=200)&&(x<=210)B: (x>=1)||(x<=10)||(x>=200)||(x<=210)C: (x>=1)&&(x<=10)||(x>=200)&&(x<=210)D: (x>=1)||(x<=10)&&(x>=200)||(x<=210)15. 已知x=43,ch=’a’,y=0;则表达式(x>=y&&ch<’b’&&!y)的值是()A: 0 B: 1 C: 语法错误D: 假16. 执行下列语句后a 的值为int a=5,b=6,w=1,x=2,y=3,z=4;(a=w>x)&&(b=y>z);A: 5 B: 0 C: 2 D: 117. 以下程序的输出结果是()main(){ int a=5,b=0,c=0;if(a=b+c) printf(“***\n”);else printf(“$$$\n”);}A: 有语法错误不能通过编译B: 可以通过编译但不能通过连接C: ***D: $$$18. 以下程序的输出结果是()main(){ int m=5;if(m++>5) printf(“%d\n”,m);else printf(“%d\n”,m--);}A: 4 B: 5 C: 6 D: 719. 若运行时给变量x 输入12,则以下程序的运行结果是()main(){ int x,y;scanf(“%d”,&x);y=x>12?x+10:x-12;printf(“%d\n”,y);}A: 0 B: 22 C: 12 D: 1020. 若w=1,x=2,y=3,z=4,则表达式w<x?w:y<="" 2="" 3="" 4="" b:="" bdsfid="163" c:="" d:="" p="" 的值是a:=""></x?w:y21. 设有int a=2,b;则执行b=a&&1;语句后,b 的结果是A: 0 B: 1 C: 2 D: 322. 设有int m=1,n=2;则++m==n 的结果是A: 0 B: 1 C: 2 D: 323. 设有int n=2;则++n+1==4 的结果是A: true B: false C: 1 D: 024. 设有int n=2;则++n+1==4,n 的结果是A: 1 B: 2 C: 3 D: 425. 以下使i 的运算结果为4 的表达式是A: int i=0,j=0; (i=3,(j++)+i);B: int i=1,j=0; j=i=((i=3)*2);C: int i=0,j=1; (j==1)?(i=1):(i=3);D: int i=1,j=1; i+=j+=2;26. 当a=5,b=2 时,表达式a= =b 的值为A: 2 B: 1 C: 0 D: 527. 若执行以下程序时从键盘上输入9,_______则输出结果是main(){ int n;scanf("%d",&n);if(n++<10) printf("%d\n",n);else printf("%d\n",n--);}A: 11 B: 10 C: 9 D: 828. main(){ int a,b,d=241;a=d/100%9;b=(-1)&&(-1);printf(“%d,%d”,a,b);}A: 6,1 B: 2,1 C: 6,0 D: 2,029. 若有int x=10,y=20,z=30;以下语句执行后x,y,z 的值是()if (x>y)z=x;x=y;y=z;A: x=10,y=20,z=30B: x=20,y=30,z=30C: x=20,y=30,z=10D: x=20,y=30,z=2030. 下列表达式中能表示a 在0 到100 之间的是A: a>0&a<100 B: !(a<0||a>100) C: 0<a0&&a<100)</a31. 为了避免嵌套的if—else 语句的二义性,C 语言规定else 总是与()组成配对关系。

c语言第4章 选择结构程序设计习题答案

c语言第4章 选择结构程序设计习题答案

第4章选择结构程序设计习题(P111)4。

2 C语言中如何表示“真”和“假”?系统如何判断一个量的“真”和“假”?答:C语言中用1表示真,0表示假;系统按照“非0为真,0为假”判断一个逻辑量的真假。

4.3 写出下面各逻辑表达式的值。

设a=3,b=4,c=5。

(1)a+b〉c&&b==c (2)a||b+c&&b-c (3)!(a〉b)&&!c||1(4)!(x=a)&&(y=b)&&0 (5)!(a+b)+c—1&&b+c/2解:该题在求解过程中注意:一、优先级。

逻辑运算符(&&和||)低于算术运算符和关系运算符而高于赋值运算符,在逻辑运算符中,逻辑非最高,逻辑与其次,逻辑或最低;二、逻辑表达式的求值规则。

(P94)所以得以上表达式的值分别为:(1)0 (2)1 (3)1 (4)0 (5)14。

4有3个整数a、b、c,由键盘输入,输出其中最大的数。

分析:这是一个规模较小的求最值的算法,习题1.6用函数的方法实现。

该题不用函数调用实现,但方法类似。

法一:先求前两个数的最值,再用前两个数的最值和第三个数比较即得结果。

法二:先假设第一个数是最值,再依次和第二、第三个数比较得结果。

其中都要用到单分支或双分支选择结构语句。

参考程序如下:法一:main(){ int a,b,c,max;/*定义4个整型变量,其中a,b,c存原始数据,max存最值*/ printf(”\ninput the value of a,b,c:"); /*提示输入*/scanf(”%d%d%d",&a,&b,&c);/*格式符之间无分隔符,输入时可以以空格、回车、跳格分隔*/if(a>b) max=a;else max=b;if(max<c) max=c;printf("\nmax=%d\n",max);}法二:main(){int a,b,c,max;printf(”\ninput the value of a,b,c:”);scanf(”%d%d%d",&a,&b,&c);max=a;if(max〈b) max=b;if(max<c) max=c;printf("\nmax=%d\n”,max);}4.6有一个函数:写一段程序,输入x,输出y的值。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1. 以下非法的赋值语句是A: n=(i=2,++i);B: j++;C: ++(i+1);D: x=j>0;2. 已有定义:int x=3,y=4,z=5;,则表达式!(x+y)+z-1 && y+z/2 的值是A: 6B: 0C: 2D: 13. 阅读以下程序:main(){ int x;scanf(“%d”,&x);if(x--<5) printf(“%d”,x);else printf(“%d”,x++);}程序运行后,如果从键盘上输人5,则输出结果是()。

A: 3B: 4C: 5D: 64. 有如下程序main0{ int a=2,b=-1,c=2;if(a<b)if(b<0) c=0;else c++printf("%d\n",c);}该程序的输出结果是A: 0B: 1C: 2D: 35. 有以下程序#include <stdio.h>main()a=c/100%9;b=(-1)&&(-1);printf("%d,%d\n",a,b);}输出结果是( )。

A: 2,1B: 3,2C: 4,3D: 2,-16.两次运行下面的程序,如果从键盘上分别输入6 和4,则输出结果是main( ){ int x;scanf("%d",&x);if(x + + >5) printf("%d",x);else printf("%d\n",x - -); }A: 7 和5B: 6 和3C: 7 和4D: 6 和47. 能表示x 为偶数的表达式是A: x%2==0B: x%2==1C: x%2D: x%2!=08. 下面的程序段中共出现了几处语法错误?int a,b;scanf("%d",a);b=2a;if(b>0) printf("%b",b);A: 1B: 2C: 3D: 49. C 语言中,逻辑“真”等价于A: 大于零的数B: 大于零的整数C: 非零的数D: 非零的整数10. C 语言的switch 语句中,case 后A: 只能为常量B: 只能为常量或常量表达式C: 可为常量及表达式或有确定值的变量及表达式D: 可为任何量或表达式11. 已知int i=10;表达式"20-0<=i<=9"的值是A: 0B: 1C: 19D: 2012. 设有int i, j, k; 则表达式i=1,j=2,k=3, i&&j&&k 的值为A: 1B: 2C: 3D: 013. 逻辑运算符两侧运算对象的数据类型A: 只能是0 或1B: 只能是0 或非0 正数C: 只能是整型或字符型数据D: 可以是任何类型的数据14. 能正确表示“当x 的取值在[1,10]和[200,210]范围内为真,否则为假”的表达式是()A: (x>=1)&&(x<=10)&&(x>=200)&&(x<=210)B: (x>=1)||(x<=10)||(x>=200)||(x<=210)C: (x>=1)&&(x<=10)||(x>=200)&&(x<=210)D: (x>=1)||(x<=10)&&(x>=200)||(x<=210)15. 已知x=43,ch=’a’,y=0;则表达式(x>=y&&ch<’b’&&!y)的值是()A: 0B: 1C: 语法错误D: 假16. 执行下列语句后a 的值为int a=5,b=6,w=1,x=2,y=3,z=4;(a=w>x)&&(b=y>z);A: 5B: 0C: 217. 以下程序的输出结果是()main(){ int a=5,b=0,c=0;if(a=b+c) printf(“***\n”);else printf(“$$$\n”);}A: 有语法错误不能通过编译B: 可以通过编译但不能通过连接C: ***D: $$$18. 以下程序的输出结果是()main(){ int m=5;if(m++>5) printf(“%d\n”,m);else printf(“%d\n”,m--);}A: 4B: 5C: 6D: 719. 若运行时给变量x 输入12,则以下程序的运行结果是()main(){ int x,y;scanf(“%d”,&x);y=x>12?x+10:x-12;printf(“%d\n”,y);}A: 0B: 22C: 12D: 1020. 若w=1,x=2,y=3,z=4,则表达式w<x?w:y<z?y:z 的值是A: 4B: 3C: 2D: 121. 设有int a=2,b;则执行b=a&&1;语句后,b 的结果是A: 0C: 2D: 322. 设有int m=1,n=2;则++m==n 的结果是A: 0B: 1C: 2D: 323. 设有int n=2;则++n+1==4 的结果是A: trueB: falseC: 1D: 024. 设有int n=2;则++n+1==4,n 的结果是A: 1B: 2C: 3D: 425. 以下使i 的运算结果为4 的表达式是A: int i=0,j=0; (i=3,(j++)+i);B: int i=1,j=0; j=i=((i=3)*2);C: int i=0,j=1; (j==1)?(i=1):(i=3);D: int i=1,j=1; i+=j+=2;26. 当a=5,b=2 时,表达式a= =b 的值为A: 2B: 1C: 0D: 527. 若执行以下程序时从键盘上输入9,_______则输出结果是main(){ int n;scanf("%d",&n);if(n++<10) printf("%d\n",n);else printf("%d\n",n--);}A: 11B: 10C: 928. main(){ int a,b,d=241;a=d/100%9;b=(-1)&&(-1);printf(“%d,%d”,a,b);}A: 6,1B: 2,1C: 6,0D: 2,029. 若有int x=10,y=20,z=30;以下语句执行后x,y,z 的值是()if (x>y)z=x;x=y;y=z;A: x=10,y=20,z=30B: x=20,y=30,z=30C: x=20,y=30,z=10D: x=20,y=30,z=2030. 下列表达式中能表示a 在0 到100 之间的是A: a>0&a<100B: !(a<0||a>100)C: 0<a<100D: !(a>0&&a<100)31. 为了避免嵌套的if—else 语句的二义性,C 语言规定else 总是与()组成配对关系。

A: 缩排位置相同的ifB: 在其之前未配对的ifC: 在其之前未配对的最近的ifD: 同一行上的if32. 已知:int x,a,b;下列选项中错误的if 语句是A: if(a=b) x++;B: if(a<=b) x++;C: if(a-b) x++;D: if(x) x++;33. 当把以下四个表达式用作if 语句的控制表达式时,有一个选项与其它三个选项含义不同,这个选项是()。

A: k%2B: k%2==1D: !k%2==134. 设有定义:int a=2,b=3,c=4;,则以下选项中值为0 的表达式是()。

A: (!a==1)&&(!b==0)B: aC: a && bD: a||(b+b)&&(c-a)35. 以下程序段的输出结果是。

int a=10,b=50,c=30;if(a>b)a=b;b=c;c=a;printf("a=%d b=%d c=%d\n",a,b,c);A: a=10 b=50 c=10B: a=10 b=30 c=10C: a=50 b=30 c=10D: a=50 b=30 c=5036. 以下4 个选项中,不能看作一条语句的是A: {;}B: a=0,b=0,c=0;C: if(a>0);D: if(b==0) m=1;n=2;以下题目为二级题37. if语句的基本形式是:if(表达式)语句,以下关于“表达式”值的叙述中正确的是A)必须是逻辑值B)必须是整数值C)必须是正数D)可以是任意合法的数值38. 有以下程序段int i,n;for(i=0;i<8;i++){n=rand()%5;switch (n){ case 1:case 3:printf("%d\n",n); break;case 2:case 4:printf("%d\n",n);continue;}printf("%d\n",n);}以下关于程序段执行情况的叙述,正确的是A)for循环语句固定执行8次B)当产生的随机数n为4时结束循环操作C)当产生的随机数n为1和2时不做任何操作D)当产生的随机数n为0时结束程序运行39.有以下程序#include <stdio.h>main(){ int x=1,y=0;if(!x) y++;else if(x==0)if (x) y+=2;else y+=3;printf("%d\n",y);}程序运行后的输出结果是A)3B)2C)1D) 040.有以下程序#include <stdio.h>int fun (int x,int y){ if(x!=y) return ((x+y)/2);else return (x);}main(){ inta=4,b=5,c=6;printf("%d\n",fun(2*a,fun(b,C)));}程序运行后的输出结果是A)3B)6C)8D)1241. 有以下程序:#include <stdio.h>main(){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,0B)0,0,0,3C)编译有错D) 0,1,2,042. 有以下程序:#include <stdio.h>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=%d\n",a,b);}A) a=2,b=2B) a=2,b=1C) a=1,b=1D) a=1,b=043. 若有定义int x, y; 并已正确给变量赋值,则以下选项中与表达式(x-y)?(x++) : (y++)中的条件表达式(x-y) 等价的是()A) (x-y<0||x-y>0)B) (x-y<0)C) (x-y>0)D)(x-y==0)44 .有以下程序:#include <stdio.h>main(){int x=1,y=0;if ( !x ) y++;else if (x==0)if(x) y+=2;else y+=3;printf("%d\n",y);}程序运行后的输出结果是()A) 3B) 2C) 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)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("%d\n",k); 中,以下不可替代W的是()。

相关文档
最新文档