内容正文:
《编程语言基础——C语言》高等教育出版社(第5版)
第五章 数组 章节过关卷
考试时间90分钟 满分100分
班级 姓名 成绩
1、 单项选择题(本题15小题,每小题2分,满分30分)
1. 在C语言中,以下对一维数组初始化说法正确的是:( )
A. 只能在定义数组时进行初始化,之后无法更改
B. 可以在定义数组时进行初始化,也可以在后续代码中进行赋值
C. 只能在后续代码中进行赋值,不能在定义数组时进行初始化
D. 一维数组无法进行初始化
2. C语言中的一维数组初始化必须满足的条件是:( )
A. 初始化值的个数不能超过数组的大小
B. 初始化值的个数必须与数组的大小相同
C. 初始化值的个数可以少于或等于数组的大小
D. 不需要满足任何条件,初始化个数没有限制
3. 字符数组的初始化是为了:( )
A. 保证数组的大小
B. 赋值给数组的元素
C. 确定数组的索引范围
D. 确保数组中的字符顺序
4. 关于二维数组的定义,以下哪个选项描述正确?( )
A. 二维数组的行数和列数必须是相同的
B. 二维数组的行数和列数可以不同
C. 二维数组的行数和列数必须是整数
D. 二维数组的行数和列数必须是常量
5. 在C语言中,以下对二维数组的引用说法正确的是:( )
A. 引用二维数组元素时只需提供一个下标
B. 引用二维数组元素时需要提供两个下标
C. 引用二维数组元素时需要提供三个下标
D. 引用二维数组元素时需要使用指针
6. 字符数组的大小是由以下哪个因素决定?( )
A. 数组名的长度
B. 所存放的字符串长度
C. 元素的个数
D. 输入的字符个数
7. 在声明字符数组时,未指定数组大小,直接通过字符串进行初始化的方式可以适应以下哪种情况?( )
A. 字符串长度小于数组的默认大小
B. 字符串长度等于数组的默认大小
C. 字符串长度大于数组的默认大小
D. 字符串与数组的默认大小无关
8. 在C语言中,一维数组的定义方式为:类型说明符 数组名,其中数组名是( )
A.[整型常量表达式] B.[整型表达式]
C.[整型常量]或[整型表达式] D.[常量]
9. 数组定义为int a[3][2]={1,2,3,4,5,6},值为6的数组元素是( )
A.a[3][2] B.a[2][1] C.a[1][2] D.a[2][3]
10. 字符数组定义为char a[]=”abcd”,在C语言中a在内存中存储的字节是( )
A.4字节 B.5字节 C.3字节 D.2字节
11. 数组定义为int a[2][2]下列赋值错误的是( )
A.a[2][2]=0 B.a[0][1]=0 C.a[0][0]=0 D.a[1][1]=0
12. 数组int a[2][2]={0,1,2,3}中数组如果a[0][0]是第一个元素则第二个元素是( )
A.a[0][0] B.a[0][1] C.a[1][0] D.a[1][1]
13. 在C语言中,以下哪个选项是正确的二维数组的初始化方式?( )
A. int arr[2][2] = {1, 2, 3, 4};
B. int arr[2][2] = {1, 2}, {3, 4};
C. int arr[2][2] = {{1, 2}, {3, 4}};
D. int arr[2][2] = {{1, 2}, {3}};
14. 对于字符数组的初始化,以下哪个选项是错误的?( )
A.char str[] = "Hello";
B.char str[6] = "Hello";
C.char str[10] = {'H', 'e', 'l', 'l', 'o', '\0'};
D.char str[]; str = "Hello";
15. 对于一个二维数组 matrix[3][4],以下选项中哪一个表示访问第3行第2列的元素?( )
A. matrix[2][1]
B. matrix[3][4]
C. matrix[4][2]
D. matrix[3][2]
二、判断题(本题15小题,每小题2分,满分30分)
1. C语言中只能逐个引用数组元素而不能一次引用整个数组.( )
2. 同一数组的元素在内存中存储是连续存放的,占有连续的存储单元.( )
3. 二维数组在内存中存储以列为主