1
单选(3分)
以下代码片段的输出是:D
int j=4;
for ( int i=j; i<=2*j; i++ ) {
switch ( i/j ) {
case 0:
case 1: printf(“*”); break;
case 2: printf(“#”);
}
}
-
A.****
-
B.*#
-
C.****##
-
D.****#
2
单选(3分)
下列程序段输出结果为:B
int x=1, y=012;
printf(“%d”,y*x++);
-
A.24
-
B.10
-
C.12
-
D.20
3
单选(3分)
下面程序段的输出结果是?A
int k;
while(k!=0) k=k-1;
printf(“%d”, k);
-
A.0
-
B.因为k没有初值,所以结果不确定
-
C.因为没有给k赋初值,因此程序不能通过编译
-
D.1
4
单选(3分)
以下哪个不是C语言的关键字?A
-
A.include
-
B.if
-
C.int
-
D.for
5
单选(3分)
对for(表达式1;;表达式3)
可理解为 B
-
A.for(表达式1; 表达式1;表达式3)
-
B.for(表达式1;1;表达式3)
-
C.for(表达式1; 表达式3;表达式3)
-
D.for(表达式1;0;表达式3)
6
单选(3分)
对于以下代码:
int i,j=6;
以下哪句话是对的?B
-
A.不能通过编译
-
B.i不会被初始化,而j是6
-
C.i被初始为0,而j是6
-
D.i和j的初始值都是6
7
单选(3分)
对于以下代码:
char ch = -1;
printf("%d\n", ch);
输出结果是?B
-
A.255
-
B.-1
-
C.运行错误,因为%d和ch的类型不匹配
-
D.ASCII码表中255那个位置的字符
8
单选(3分)
对于以下代码:
int i; scanf("%d", &i); i %= 4;
执行后,i会有几种可能性?B
-
A.不好说
-
B.7
-
C.3
-
D.2
9
单选(3分)
对于以下代码:
int i=6;
do {
printf("%d", i--);
} while (0);
哪句话是对的 C
-
A.打印不出东西
-
B.因为while(0),无法编译
-
C.打印出6
-
D.打印出5
10
单选(3分)
以下哪个for语句是错误的?D
-
A.for (i=0; i<10, j<10; i++);
-
B.for (;;);
-
C.for (i=0; i<10; i--);
-
D.for (i=0;j=0; i<10; i++ );
11
填空(3分)
表达式ch =‘B’+‘8’-‘3’表示的字符是:G
12
填空(3分)
以下代码的输出是 _0____.
int x=0, y=0, z=0;
z = (x==1) && (y=2);
printf("%d ", y);
13
填空(3分)
以下代码段的结果是:10int i=10;
long long t = sizeof(i++);
printf("%d", i);
14
填空(3分)
表达式(double)(10/4*4)
的结果是 8.000000
15
填空(3分)
以下代码的输出是 :9 1 20
int i,x,y; i=x=y=0; do { ++i; if ( i%2 ) x+=i, i++; y +=i++; } while ( i<=7 ); printf("%d %d %d", i, x, y);