国二c试题及答案
一、单项选择题(每题2分,共10题)
1.以下关于C语言的叙述中正确的是()
A.C程序总是从第一个函数开始执行
B.在C程序中,要调用的函数必须在main函数中定义
C.C程序总是从main函数开始执行
D.C程序中的main函数必须放在程序的开始部分
答案:C
2.若有定义:inta=7;floatx=2.5,y=4.7;则表达式x+a%3(int)(x+y)%2/4的值是()
A.2.500000
B.2.750000
C.3.500000
D.0.000000
答案:A
3.以下选项中合法的标识符是()
A.1_2
B.void
C.a-b
D._2a
答案:D
4.若有语句:chars1[]=string,s2[8],s3,s4=string;则对函数库strcpy调用正确的是()
A.strcpy(s1,Hello1);
B.strcpy(s4,Hello2);
C.strcpy(s3,Hello3);
D.strcpy(s2,Hello4);
答案:A
5.若定义inta[2][3];则对a数组元素的正确引用是()
A.a[2][0]
B.a[2][3]
C.a[0][3]
D.a[1][2]
答案:D
6.以下不能正确计算代数式的C语言表达式是()
A.1/3sin(1/2)sin(1/2)
B.sin(0.5)sin(0.5)/3
C.pow(sin(0.5),2)/3
D.1.0/3pow(sin(0.5),2)
答案:A
7.以下程序的输出结果是()
```c
includestdio.h
main()
{
inta=5,b=4,c=3,d;
d=(abc);
printf(%d\n,d);
}
```
A.0
B.1
C.2
D.3
答案:A
8.若有以下定义和语句:
```c
inta=4,b=3,p,q,w;
p=a;q=b;w=q;q=NULL;
```
则以下选项中错误的语句是()
A.q=0;
B.w=p;
C.p=a;
D.p=w;
答案:A
9.以下程序的输出结果是()
```c
includestdio.h
voidfun(intx)
{
x=10;
}
main()
{
inta=5;
fun(a);
printf(%d\n,a);
}
```
A.5
B.10
C.0
D.随机值
答案:A
10.以下关于函数的叙述中正确的是()
A.每个函数都可以被其它函数调用(包括main函数)
B.每个函数都可以被单独编译
C.每个函数都可以单独运行
D.在一个函数内部可以定义另一个函数
答案:B
二、多项选择题(每题2分,共10题)
1.以下属于C语言数据类型的有()
A.整型
B.实型
C.字符型
D.枚举型
答案:ABCD
2.以下运算符中,优先级高于赋值运算符的有()
A.+
B.
C.==
D.%
答案:ABD
3.以下关于数组的描述正确的有()
A.数组名代表数组的首地址
B.数组元素可以是不同类型的数据
C.数组在内存中是连续存储的
D.可以通过数组名对数组整体进行输入输出
答案:AC
4.以下哪些函数属于标准输入输出函数()
A.printf
B.scanf
C.getchar
D.putchar
答案:ABCD
5.以下关于指针的描述正确的有()
A.指针变量中存储的是内存地址
B.可以对指针进行加法和减法运算
C.指针可以指向数组
D.指针可以指向函数
答案:ABCD
6.以下哪些是C语言中的循环结构()
A.for循环
B.while循环
C.do-while循环
D.switch结构
答案:ABC
7.以下关于函数参数传递的描述正确的有()
A.可以通过值传递的方式传递参数
B.可以通过地址传递的方式传递参数
C.值传递时函数内对参数的修改会影响实参
D.地址传递时函数内对参数的修改会影响实参
答案:ABD
8.以下属于C语言预处理命令的有()
A.include
B.define
C.if
D.else
答案:ABCD
9.以下关于结构体的描述正确的有()
A.