点击查看:2018年12月计算机二级C语言冲刺试题及答案汇总
1、以下语句的输出结果是( )。
int a=-1,b=4,k;
k=(+ +a<0)&&!(b - -<=0);
printf("%d,%d,%d\n",k,a,b);
A. 1,0,4
B. 1,0,3
C. 0,0,3
D. 0,0,4
2、下列程序的输出结果是( )。
char *p1="abcd", *p2="ABCD", str[50]="xyz";
strcpy(str+2,strcat(p1+2,p2+1));
printf("%s",str);
A. xyabcAB
B. abcABz
C. ABabcz
D. xycdBCD
3、执行下面的程序后,a的值是( )。
#define SQR(X) X*X
main( )
{ int a=10,k=2,m=1;
a/=SQR(k+m)/SQR(k+m);
printf("%d\n",a); }
A. 10
B. 1
C. 9
D. 0
4、设A为存放(短)整型的一维数组,如果A的首地址为P,那么A中第i 个元素的地址为( )。
A.P+i*2
B. P+(i-1)*2
来源:考试大
C. P+(i-1)
D. P+i
5、下列程序执行后输出的结果是( )。
int d=1;
fun (int p)
{ int d=5;
d + =p + +;
printf("%d,",d); }
main( )
{ int a=3;
fun(a);
d + = a + +;
printf("%d\n",d); }
A. 8, 4
B. 9, 6
C. 9, 4
D. 8, 5
6、表达式:10!=9的值是( )。
A. true
B. 非零值
C. 0
D. 1
7、若有说明: int i,j=7, *p=&i;, 则与i=j; 等价的语句是( )。
A. i= *p;
B. *p=*&j;
C. i=&j;
D. i=* *p;
8、不能把字符串:Hello!赋给数组b的语句是( )。
A. char b[10]={’H’,’e’,’l’,’l’,’o’,’!’};
B. char b[10]; b="Hello!";
C. char b[10]; strcpy(b,"Hello!");
D.char b[10]="Hello!";
9、在C程序中有如下语句:char *func(int x,int y); 它是( )。
A. 对函数func的定义。
B. 对函数func的调用。
C.对函数func的原型说明。
D. 不合法的。
10、以下程序的输出结果是( )。
char str[15]=”hello!”;
printf(“%d\n”,strlen(str));
A. 15
B. 14
C. 7
D. 6
参考答案:1、D 2、D 3、B 4、B 5、A 6、D 7、B 8、B 9、C 10、D
阅读程序题
1、int x=6, y=7;
printf(“%d,”,x++); printf(“%d\n”,++y);
程序的输出结果是__________。
2、float f=3.1415927;
printf(“%f,%5.4f,%3.3f”,f,f,f);
则程序的输出结果是__________。
3、a=3;
a+=(a<1)?a:1; printf(“%d”,a);
结果是__________。
4、main( )
{ int a[5]={2,4,6,8,10},*P,* *k;
p=a; k=&p;
printf("%d,",*(p++));
printf("%d\n",* *k); }
程序的输出结果是__________。
5、 main()
{int a,b;
for (a=1,b=1;a<=100;a++)
{ if(b>=20) break;
if(b%3==1)
{b+=3; continue; }
b-=5; } }
程序的输出结果a的值为__________。
参考答案:
(1) 6,8
(2) 3.141593,3.1416,3.142
(3) 4
(4) 2,4
(5) 8
微信搜索"考试吧"了解更多考试资讯、下载备考资料
相关推荐: