1 逻辑运算符两侧运算对象的数据类型_____。
A 只能是0或1
B 只能是0或非0正数
C 只能是整型或字符型数据
D 可以是任何类型的数据
2 下列运算符中优先级最高的是_____。
A <
B +
C &&
D !=
3 能正确表示“当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)
4 判断char型变量ch是否为大写字母的正确表达式是_____。
A ‘A’<=ch<=‘Z’
B (ch>=‘A’)&(ch<=‘Z’)
C (ch>=‘A’)&&(ch<=‘Z’)
D (‘A’<=ch)AND(‘Z’>=ch)
5 以下不正确的if语句形式是____。
A if(x>y&&x!=y);
B if(x==y)x+=y;
C if(x!=y)scanf(“%d”,&x)else scanf(“%d”,&y);
D if(x<y){x++;y++;}
6 以下程序的运行结果是_____。
main( )
{int m=5;
if(m++>5)printf(“%d\n”,m);
else printf(“%d\n”,m--);
}
A 4
B 5
C 6
D 7
7 当a=1,b=3,c=5,d=4时,执行完下面一段程序后x的值是_____。
if(a<b)
if(c<d)x=1;
else
if(a<c)
if(b<d)x=2;
else x=3;
else x=6;
else x=7;
A 1
B 2
C 3
D 6
8 以下程序的输出结果是_____。
main( )
{int a=100,x=10,y=20,ok1=5,ok2=0;
if (x<y)
if(y!=10)
if(!ok1)
a=1;
else
if(ok2) a=10;
a=-1;
printf(“%d\n”,a);
}
A 1
B 0
C -1
D 值不确定
9 为了避免在嵌套的条件语句if—else中产生二义性,C语言规定:else子句总是与_____配对。
A. 缩排位置相同的if
B. 其之前最近的 if
C 其之后最近的if
D 同一行上的if
10 若有条件表达式,(exp)?a++:b--,则以下表达式中能完全等价于表达式(exp)的是_____。
A (exp==0)
B (exp!=0)
C (exp==1)
D (exp!=1)