选择题
- 下列关于数组的说法错误的是:
A. 数组是一组相同类型元素的集合
B. 数组必须先定义后使用
C. 数组的长度可以是变量
D. 数组名必须遵循命名规则
- 下列数组初始化正确的是:
A. int n = 5; int arr[n];
B. int arr[10] = {1, 2, 3};
C. int arr[] = {1, 2, 3, "hello"};
D. int arr[5] = {1, 2, 3, 4, 5, 6};
- 下列代码输出的结果是:
#include <stdio.h> int main() { int arr[5] = {1, 2, 3}; printf("%d\n", arr[4]); return 0; }
A. 1
B. 2
C. 3
D. 0
- 下列关于字符数组的说法正确的是:
A. 字符数组不能存储字符串
B. 字符数组初始化时可以省略结束符 '\0'
C. char str[] = "hello"; 等价于 char str[] = {'h', 'e', 'l', 'l', 'o'};
D. char str[5] = "hello"; 是合法的初始化
- 下列关于数组长度的说法正确的是:
A. 数组长度是数组元素的大小
B. 数组长度可以在运行时动态改变
C. sizeof(arr) / sizeof(arr[0]) 可以用来计算数组长度
D. int arr[10]; 定义的数组长度为 10 个字节
程序填空题
1.完成以下代码,使其打印数组
arr 的所有元素:
#include <stdio.h> int main() { int arr[5] = {1, 2, 3, 4, 5}; int i; for (i = 0; i < _____; i++) { printf("%d ", arr[i]); } return 0; }
2.完成以下代码,使其计算并打印数组
arr 的长度:
#include <stdio.h> int main() { int arr[] = {1, 2, 3, 4, 5}; int length = _____; printf("Array length: %d\n", length); return 0; }
3.完成以下代码,使其初始化一个字符数组并打印其内容:
#include <stdio.h> int main() { char str[] = _____; // 初始化字符数组为 "hello" printf("%s\n", str); return 0; }
4.完成以下代码,使其初始化一个包含 10 个元素的整型数组,其中前 5 个元素为 1 到 5,其余元素为 0:
#include <stdio.h> int main() { int arr[10] = {_____}; // 初始化数组 int i; for (i = 0; i < 10; i++) { printf("%d ", arr[i]); } return 0; }
5.完成以下代码,使其定义一个浮点型数组并打印其所有元素的地址:
#include <stdio.h> int main() { float arr[3] = {1.1, 2.2, 3.3}; int i; for (i = 0; i < 3; i++) { printf("%p\n", _____); } return 0; }
文章评论