2-1
分数 4
作者 王秀
单位 福州大学
如果要求在if
后一对括号中的表达式在表示a
不等于 0 的时候的值为“真”,则能正确表示这一关系的表达式为(D )。
A.
a<>0
B.
!a
C.
a=0
D.
a
创建提问
2-2
分数 4
作者 颜晖
单位 浙江大学
在嵌套使用if语句时,C语言规定else总是(C)。
A.
和之前与其具有相同缩进位置的if配对
B.
和之前与其最近的if配对
C.
和之前与其最近的且不带else的if配对
D.
和之前的第一个if配对
创建提问
2-3
分数 4
作者 李廷元
单位 中国民用航空飞行学院
下列程序的运行结果是(C)
#include <stdio.h> int main (void) { int a, b, c; a = 20; b = 30; c = 10; if (a < b)a = b; if (a >= b)b = c; c = a; printf("a=%d, b=%d, c=%d\n", a, b, c); return 0; }
A.
a=20, b=10, c=20
B.
a=30, b=10, c=20
C.
a=30, b=10, c=30
D.
a=20, b=10, c=30
2-4
分数 4
作者 徐镜春
单位 浙江大学
下列程序段输出结果为 _B___。
int x = -3, y = 2;
- if(x>y);
- x = -x;
- if(x<y)
- y = -y;
- printf("x=%d,y=%d\n", x, y);
A.
x=3,y=-2
B.
x=3,y=2
C.
x=-3,y=2
D.
x=-3,y=-2
2-5
分数 4
作者 颜晖
单位 浙大城市学院
下列程序段的输出结果是(C)。
- int main(void)
- {
- int a = 2, b = -1, c = 2;
-
- if(a < b)
- if(b < 0)
- c = 0;
- else c++;
- printf("%d\n",c);
-
- return 0;
- }
A.
0
B.
1
C.
2
D.
3
创建提问
2-6
分数 4
作者 颜晖-历年试卷
单位 浙大城市学院
对于以下代码:(C)
- int i = 6;
- if ( i <= 6 ) printf("hello\n");;
- else printf("bye-bye\n");;
A.
打印出"hello"
B.
打印出"hello bye-bye"
C.
不能通过编译
D.
打印出"bye-bye"
2-7
分数 4
作者 李廷元
单位 中国民用航空飞行学院
下列条件语句中,功能与其他语句不同的是(D)
A.
if (a)printf(" %d\n", x); else printf(" %d\n", y);
B.
if (a == 0)printf(" %d\n", y); else printf(" %d\n", x);
C.
if (a != 0)printf(" %d\n", x); else printf(" %d\n", y);
D.
if (a == 0)printf(" %d\n", x); else printf(" %d\n", y);
2-8
分数 4
作者 颜晖
单位 浙大城市学院
有一函数
,以下程序段中错误的是(C)。
A.
if(x > 0) y = 1;
else if(x == 0) y = 0;
else y = -1;
B.
y = 0;
if(x > 0) y = 1;
else if(x < 0) y = -1;
C.
y = 0;
if(x >= 0);
if(x > 0) y = 1;
else y = -1;
D.
if(x >= 0)
if(x > 0) y = 1;
else y = 0;
else y = -1;
2-9
分数 4
作者 李廷元
单位 中国民用航空飞行学院
有定义语句“int a=1,b=2,c=3,x;”,则以下各程序段执行后,x的值不为3的是(C)
A.
if(c<a)x=1; else if(b<a)x=2; else x=3;
B.
if(a<3)x=3; else if(a<2)x=2; else x=1;
C.
if(a<3)x=3; if(a<2)x=2; if(a<1)x=1;
D.
if(a<b)x=b; if(b<c)x=c; if(c<a)x=a;
2-10
分数 4
作者 颜晖
单位 浙大城市学院
在执行以下程序时,为使输出结果为:t=4,则给a和b输入的值应满足的条件是(C)。
- int main(void)
- {
- int a,b,s,t;
-
- scanf("%d,%d",&a,&b);
- s = 1; t = 1;
- if(a > 0) s = s + 1;
- if(a > b) t = s + t;
- else if(a == b) t = 5;
- else t = 2 * s;
- printf("t=%d\n",t);
-
- return 0;
- }
A.
a>b
B.
a<b<0
C.
0<a<b
D.
0>a>b
2-11
分数 4
作者 李廷元
单位 中国民用航空飞行学院
下列程序运行时输入“2.0<回车>”,则输出结果是(C)
#include <stdio.h> int main(void) { float x, y; scanf("%f", &x); if (x < 0.0)y = 0.0; else if ((x < 5.0) && (x != 2.0))y = 1.0 / (x + 2.0); else if (x < 10.0)y = 1.0 / x; else y = 10.0; printf("%f\n", y); return 0; }
A.
0.000000
B.
0.250000
C.
0.500000
D.
1.000000
2-12
分数 4
作者 李廷元
单位 中国民用航空飞行学院
下列程序段的输出结果是(A)
#include <stdio.h> int main(void) { int x = 100, a = 10, b = 20, ok1 = 5, ok2 = 0; if (a < b) if (b != 15) if (!ok1)x = 1; else if (ok2)x = 10; x = -1; printf("%d\n", x); return 0; }
A.
-1
B.
0
C.
1
D.
不确定的值
2-13
分数 4
作者 李廷元
单位 中国民用航空飞行学院
下列程序段运行后x的值是(B)
int a = 0, b = 0, 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
2-14
分数 4
作者 颜晖
单位 浙大城市学院
设变量已正确定义,为了检查以下else-if语句的分支是否正确,至少需要设计(B )组测试用例。
- if(op == '+'){
- printf("=%.2f\n", value1 + value2);
- }else if(op == '-'){
- printf("=%.2f\n", value1 - value2);
- }else if(op == '*'){
- printf("=%.2f\n", value1 * value2);
- }else if(op == '/'){
- if(value2 != 0){
- printf("=%.2f\n", value1 / value2);
- }else{
- printf("Divisor can not be 0!\n");
- }
- }else{
- printf("Unknown operator!\n");
- }
A.
7
B.
6
C.
5
D.
4
2-15
分数 4
作者 张高燕
单位 浙大城市学院
语句if(x=0) y=1; else y=2;与(B )等价。
A.
if(x!=0) y=2; else y=1;
B.
x=0; if(x==0) y=2; else y=1;
C.
if(x==0) y=1; else y=2;
D.
if(x=0) y=2; else y=1;
2-16
分数 4
作者 王俊玲-ktp-5
单位 集美大学
请读程序:
- #include<cstdio>
- using namespace std;
-
- int main()
- { float x,y;
-
- scanf("%f",&x);
-
- if(x<0.0) y=0.0;
- else if((x<5.0)&&(x!=2.0))
- y=1.0/(x+2.0);
- else if (x<10.0) y=1.0/x;
- else y=10.0;
- printf("%f\n",y);
-
- return 0;
-
- }
若运行时从键盘上输入2.0(表示回车),则上面程序的输出结果是 (C )
A.
0.000000
B.
0.250000
C.
0.500000
D.
1.00000
2-17
分数 4
作者 王金玲
单位 赤峰学院
C语言的switch(表达式),其中表达式可以是(C ).
A.
只能为整数型
B.
只能为实数型
C.
可以是整数型和字符型
D.
可以是任意类型
2-18
分数 4
作者 颜晖
单位 浙大城市学院
下列叙述中正确的是(D)。
A.
break语句只能用于switch语句
B.
在switch语句中必须使用default
C.
break语句必须与switch语句中的case配对使用
D.
在switch语句中,不一定使用break语句
创建提问
2-19
分数 4
作者 颜晖
单位 浙大城市学院
下列程序段的输出结果是 (A)。
- int main(void)
- {
- int x = 1, a = 0, b = 0;
-
- switch(x)
- {
- case 0: b++;
- case 1: a++;
- case 2: a++; b++;
- }
- printf("a=%d,b=%d\n",a,b);
-
- return 0;
- }
A.
a=2,b=1
B.
a=1,b=1
C.
a=1,b=0
D.
a=2,b=2
创建提问
2-20
分数 4
作者 颜晖
单位 浙大城市学院
设变量已正确定义,以下( C)与其它switch语句不等价。
A.
- switch(choice){
- case 1: price = 3.0; break;
- case 2: price = 2.5; break;
- case 3: price = 4.0; break;
- case 4: price = 3.5; break;
- default: price = 0.0; break;
- }
B.
- switch(choice){
- default: price = 0.0; break;
- case 4: price = 3.5; break;
- case 3: price = 4.0; break;
- case 2: price = 2.5; break;
- case 1: price = 3.0; break;
- }
C.
- switch(choice){
- case 1: price = 3.0; break;
- case 2: price = 2.5; break;
- case 3: price = 4.0; break;
- case 4: price = 3.5; break;
- }
D.
- price = 0.0;
- switch(choice){
- case 1: price = 3.0; break;
- case 2: price = 2.5; break;
- case 3: price = 4.0; break;
- case 4: price = 3.5; break;
- }