12899: 【选择题】第5章:选择控制结构 作业题
Description
1、 若x=0,y=3,z=3,以下表达式值为0的是( )
A. !x B.x<y? 1:0 C. x%2&&y==z D. y=x||z/3
2、 以下运算符中优先级最低的运算符为( )
A. && B. ! C. != D. ?:
3、 在C语言中,能代表逻辑值"真"的是( )
A. true B.大于0的数 C. 非0整数 D. 非0的数
4、 能正确表示逻辑关系:“a≥10或a≤0”的C语言表达式是( )
A. a>=10 or a<=0 B. a>=0|a<=10 C. a>=10 &&a<=0 D. a>=10‖a<=0
5、 判断char型变量c1是否为大写字母的表达式为( )
A. ’A’<=c1<=’Z’ B. (c1>=’A’) & (c1<=’Z’)
C.(’A’<=c1)AND (‘Z’>=c1) D. (c1>=’A’)&& (c1<=’’Z’)
6、 设有语句“int a=4;b=3,c=-2,d=2;”,则逻辑表达式“a>0&&b&&c<0&&d>0”的值是( )
A. 1 B. 0 C. -1 D. 出错
7、 设a为整型变量,则不能正确表达数学关系10<a<15的C语言表达式是( )
A. 10<a<15 B. a==11||a==12||a==13||a==14
C. a>10&&a<15 D. !(a<=10)&&!(a>=15)
8、 在下面的条件语句中(其中s1和s2表示是C语言的语句),只有一个在功能上与其它三个语句不等价,它是( )
A. if (a) s1 ; else s2; B. if (a= =0) s2; else s1;
C. if (a!=0) s1; else s2; D. if (a= =0) s1; else s2;
9、 假定所有变量均已正确定义,则下列程序段运行后y的值是( )
int a=0,y=10;
if(a=0) y--;
else if(a>0) y++;
else y+=y;
A.20 B. 11 C. 9 D. 0
10、 假定所有变量均已正确定义,则下列程序段运行后x的值是( )
a=b=c=0; x=35;
if(!a) x--;
else if(b);
if(c) x=3;
else x=4;
A. 34 B. 4 C. 35 D. 3
11、 C语言对嵌套if语句的规定是:else语句总是与( ) 配对。
A. 其之前最近的if B. 第一个if
C. 缩进位置相同的if D. 其之前最近的且尚未配对的if
12、 在C语言语句中,用来决定分支流程的表达式是( )
A. 可用任意表达式 B. 只能用逻辑表达式或关系表达式
C. 只能用逻辑表达式 D. 只能用关系表达式
13、 #include <stdio.h>
void main()
{
int x=0,a=0,b=0;
switch(x)
{
case 0: b++;
case 1: a++;
case 2: a++;b++;
}
printf(“a=%d,b=%d\n”,a,b);
}
该程序的输出结果是( )
A. a=2,b=1 B. a=1,b=1 C. a=1,b=0 D. a=2,b=2
14、 以下程序的输出结果是:( )
#include <stdio.h>
void main()
{
int x=-10,y= 1,z=1;
if(x<y)
if(y<0) z=0;
else z=z+1;
printf(“%d\n”,z);
}
A. 0 B. 1 C. 2 D. 3
15、 以下程序段的输出结果是( )
int a=10,b=50,c=30;
if(a>b)
a=b;
b=c;
c=a;
printf("a=%2d b=%2d c=%2d\n",a,b,c);
A. a=10 b=50 c=10 B. a=10 b=30 c=10
C. a=50 b=30 c=10 D. a=50 b=30 c=50
16、 若int i=10; 执行下列程序后,变量i的正确结果是( )
switch ( i )
{
case 9: i+=1;
case 10: i+=1;
case 11: i+=1;
default : i+=1;
}
A. 13 B. 12 C. 11 D. 10
17、 请问:下面这个程序段的输出是什么( )
int a,b,c;
a=7;b=8;c=9;
if(a>b)
a=b,b=c;c=a;
printf("a=%d b=%d c=%d\n",a,b,c);
A. a=7 b=8 c=7 B. a=7 b=9 c=7
C. a=8 b=9 c=7 D. a=8 b=9 c=8
18、 该程序的运行结果是( )
#include <stdio.h>
void main()
{
int a,b,c;
a=2;b=7;c=5;
switch(a>0)
{
case 1:
switch(b<10)
{
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("&");
}
printf("\n");
}
A. ^#& B. ^ C. & D. ^!*#%&
Output
int main()
{
printf("----------");
//假如:本次习题有5道题,则你的输出格式应为printf("AAAAA");
//选项均由大写A,B,C,D组成,输出语句有一条
return 0;
}
Sample Input Copy
no input needed
Sample Output Copy
参考答案:CDDDDAADABDADCBAAA