安徽省计算机二级c语言笔试试题及答案
一、单项选择题(每题2分,共20分)
1.在C语言中,合法的字符常量是()
A.\084B.\x43C.abD.\0
答案:B
2.若有定义:inta=5;则表达式a+=a-=aa的值是()
A.-40B.40C.-25D.25
答案:A
3.以下不能正确定义二维数组的选项是()
A.inta[2][2]={{1},{2}};
B.inta[][2]={1,2,3,4};
C.inta[2][2]={{1},2,3};
D.inta[2][2]={1,2,3,4};
答案:C
4.在C语言中,函数返回值的类型是由()决定的。
A.return语句中的表达式类型
B.调用该函数的主调函数类型
C.定义函数时所指定的函数类型
D.形参的数据类型
答案:C
5.以下叙述中正确的是()
A.全局变量的作用域一定比局部变量的作用域大
B.静态(static)类别变量的生存期贯穿于整个程序的运行期间
C.函数的形参都属于全局变量
D.未在定义语句中赋初值的auto变量和static变量的初值都是随机值
答案:B
6.若有以下程序段:
intc1=1,c2=2,c3;
c3=1.0/c2c1;
则执行后,c3的值是()
A.0B.0.5C.1D.2
答案:A
7.以下程序的输出结果是()
includestdio.h
intmain(){
inta=1,b=2;
if(a++b++)
printf(%d%d,a,b);
else
printf(%d%d,a,b-1);
return0;
}
A.12B.23C.22D.11
答案:C
8.以下能正确定义字符串的语句是()
A.charstr[]={\064};
B.charstr=kx43;
C.charstr=;
D.charstr[]=string;
答案:D
9.设有如下定义:
structsk{
inta;
floatb;
}data;
intp;
若要使p指向data中的a成员,正确的赋值语句是()
A.p=a;B.p=data.a;C.p=data.a;D.p=data.a;
答案:C
10.以下程序的功能是()
includestdio.h
intmain(){
FILEfp;
charstr[]=Hello,world!;
fp=fopen(test.txt,w);
fputs(str,fp);
fclose(fp);
return0;
}
A.在屏幕上显示Hello,world!
B.把Hello,world!存入test.txt文件中
C.在打印机上打印出Hello,world!
D.以上都不对
答案:B
二、多项选择题(每题2分,共20分)
1.以下哪些是C语言中的基本数据类型()
A.整型B.浮点型C.字符型D.结构体类型E.指针型
答案:ABC
2.关于C语言中的函数,以下说法正确的是()
A.函数可以嵌套定义
B.函数可以有返回值也可以没有返回值
C.函数的参数可以是常量、变量或表达式
D.函数调用可以作为一个函数的实参
E.函数中的局部变量在函数调用结束后就被释放
答案:BCDE
3.在C语言中,以下哪些表达式的值为0()
A.5%2B.0==1C.a-aD.30E.NULL
答案:BDE
4.对于以下代码:
inta[3][4]={1,2,3,4,5,6,7,8,9,10,11,12};
以下哪些表达式可以正确访问数组元素()