1、15 的C语言表达式是A) 1015 B) a=11 | a=12 | a=13 | a=1410 & a15 D) !(a=15)A5. 设x 、y 、z 、t均为int型变量,则执行以下语句后,t的值为 x=y=z=1; t=+x | +y & +z;A) 不定值 B) 4C) 1 D) 0C6. 语句:printf(%d,(a=2) & (b= -2);的输出结果是A)无输出 B)结果不确定C)-1 D)17. 能正确表示a和b同时为正或同时为负的逻辑表达式是A) (a=0 | b=0) & (a0 | b=0 & b0 & b a+b8. 为了避免嵌套的if-else语句的二义性,C语
2、言规定else总是与( )组成配对关系。A) 缩排位置相同的if B) 在其之前未配对的ifC) 在其之前未配对的最近的if D) 同一行上的if9. 已知 int x=10,y=20,z=30,则执行 if (xy) z=x;x=y;y=z; 语句后,x、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=20if (xz=x;10. 执行下面程序的输出结果是( )。 main( ) int a=5,b=0,c=0; if (a=a+b) printf(*n); else printf(
3、#n A) 有语法错误不能编译B) 能通过编译,但不能通过连接C) 输出 *D) 输出 #if (a=a+b) a=a+b是一个赋值表达式,值为5判断一个数据的“真”或“假”时,以和非为根据:如果为,则判定为“逻辑假”;如果为非,则判定为“逻辑真”。11. 运行下面程序后,输出是( )。 int k=-3; if (k15?a+10:a-10; printf(%dn,b) ;A) 5 B) 25C) 15 D) 10表达式?表达式表达式条件运算符的执行顺序:先求解表达式,若为非(真)则求解表达式,此时表达式的值就作为整个条件表达式的值。若表达式的值为(假),则求解表达式,表达式的值就是整个条件
4、表达式的值。条件运算符优先级高于赋值运算符 ,低于关系运算符和算术运算符。13. 以下选项中,两个条件语句语义等价的是( )。A) if(a=2)printf(,a); B) if(a-2)printf( if(a=2)printf(%n if(a!=2)printf(C) if(a)printf( D) if(a-2)printf( if(a=0)printf(A(1)无论什么情况都输出a,A(2)只有a=2的时候才输出a;B(1)当a!=2时输出a,B(2) 也是当a!=2时输出a输出a;C(1)当a!=0时输出a,C(2) 也是当a=0时输出a输出a;D(1)当a!=2时输出a,D(2)
5、 当a=2时输出a输出a;14. 在执行以下程序时,为了使输出结果为:t=4 则给a和b输入的值应满足的条件是 int s,t,a,b;%d,%da,&b); s=1; t=1; if (ab) t=s+t; else if (a=b) t=5; else t=2*s;t=%dn,t);b B) abab D) 0b本题应该是a0&15. 下面程序的输出结果是 int x=100,a=10,b=20,ok1=5,ok2=0;b) if (b! if (!ok1) x=1; else if (ok2) x=10; x=-1;,x);A) -1 B) 0C) 1 D)不确定的值 main( ) i
6、f (b! if (! x=1; else if (ok2) x=10; printf(16. 下面程序的输出结果是 #include int a=2,b=7,c=5; switch(a case 1:switch(b break; case 0:switch(c=5) case 0:* case 1:# default:%break; printf(nA) & B) !#&C) % D) *include 99) place=3; else if(num9) place=2; place=1; i=num/100; j=(num-i*100)/10; k=(num-i*100-j*10)
7、; switch (place) case 3:%d%d%dn,k,j,i); case 2:%d%dn,k,j);,k);A) 123 B) 1,2,3C) 321 D) 3,2,1main( ) else if(num case 2:18. 运行下面程序时,若从键盘输入数据为86 int t;t); if (t=90) printf(An else if (t=80) printf(Bn=70) printf(Cn=60) printf(DnEnOKnA) B B) B OKC) B D) B OK C D E OK else if (t else printf(19. 以下程序的运行结果
8、是( )。 int a=0,b=1,c=0,d=20,x; if (a) d=d-10; else if (!c) x=15; else x=25;,d);A) 15 B) 25C) 20 D) 1020. 运行下面程序时,从键盘输入1605 int t,h,m; h=(t/100)%12; if (h=0) h=12;%d:,h); m=t%100; if (m10) printf(0,m); if (t1200|t=2400)AMPMA) 6:05PM B) 4:05PMC) 16:05AM D) 12:05AM /*h=4*/ /*m=5*/21、运行下面程序时,从键盘输入数据为2,13
9、,55) printf(/* (x+5) x先和5比较,结果未假,不执行此if语句执行else,x加1 成为6*/,x-);/*x为6,先输出6,x变为5*/A) 7 B) 6C) 5 D) 45) x先和5比较,结果假,不执行此if语句执行else,x成为6*/24、当a=1,b=3,c=5,d=4时,执行下面一段程序后,x的值为 if (cd) x=1;c) if (bd) x=2; else x=3; else x=6; else x=7;A) 1 B) 2C) 3 D) 6 if (a25、下面的程序片段所表示的数学函数关系是 -1(x0) 1 (x0) 0 (x 0 (x0) -1(x0?1:x B) if(x) else if (x else if (x=0) y=0; else y=-1;28、执行下列程序,输入为1的输出结果是( )。 int k;k); switch (k),k+);Full!C) 2 D) 1 3 2 4 3 5 4 case 1: case 3: case 4:29执行下面程序时,若从键盘输入20 & cpf+10; else k=cp-A) 2 B) 4C) 1 D) 10 #include
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1