|
12.
以下程序的输出结果是
(
)
main()
{int i=012,j=22,k=0x10;
printf(
“
%d,%d,%d
\
n
”
,i,j,k);
}
A. 12
,
22
,
10
B. 10
,
22
,
10
C. 12
,
22
,
16
D. 10
,
22
,
16
13.
合法的数组定义是
(
)
A. int a
[]
="china
”
B. int a
[
5
]
={0,1,2,3,4,5}
C. char a="china"
D. char a
[]
={0,1,2,3,4,5}
14.
对于以下宏定义:
#define M(x) x*x
#define N(x,y) M(x)+M(y)
宏调用
N(2*5,2+5)
执行后值为
(
)
A. 17
B. 117
C. 149
D. 140
15.
执行下列程序段后,
i
的值是
(
)
int i=1,a=2;
switch(a)
{ case 1: i*=2;
case 2: i*=3;
case 3: i*=4;
default: i*=5;
}
A. 120
B. 3
C. 60
D.
以上程序段有语法错误
16.
若
a=4
执行下列语句后,
b
的值为
(
)
if(a>=3) if(a!=3)
b=3;else b=2;else b=1;
A. 0
B. 1
C. 2
D. 3
17.
定义如下变量和数组,则下面语句的输出结果是
(
)
int i;
int x
[
3
][3]
={1,2,3,4,5,6,78,9};
i=0;
while(i<3)
{printf(
“
%d
”
,x
[
2-i
][
i
]
);
i++;}
A. 9 5 1
B. 7 4 1
C. 7 5 3
D. 9 6 3
18.
以下程序执行后输出结果是
(
)
f(int a)
{int b=0;
static int c=3;
a=a+b+c;
c++;
retrun(a);
}
main()
{int a=2,i,k;
for(i=0;i<2;i++)
k=f(a+i);
printf(
“
%d
”
,k);
}
A. 3
B. 7
C. 5
D. 4
19.
下列赋值语句中正确的是
(
)
int x
[
5
]
={1,2,3,4,5},*p
;
A. p=&x
B. *p=x
C. *(p+2)=x;
D. p=x+2
20.C
语言既能把字符又能把数字输出到指定的文件中,可调用的函数是
(
)
A. fputs()
B. fputc()
C. fscanf()
D. fprintf()
二、填空题
(
每空
2
分,共
30
分
)
|