- 4
- 0
- 约6.64万字
- 约 102页
- 2026-10-03 发布于山东
- 举报
c语言考试题库模拟考试题库B卷及参考答案详解(完整版)
1.以下关于C语言数组的描述,错误的是?
A.数组名作为函数参数传递时,实际上传递的是数组首元素的地址
B.二维数组在定义时,若省略行号,编译器会根据初始化列表的元素个数和列数自动计算行数
C.数组元素的下标从1开始,例如arr[1]是第一个元素
D.数组越界访问会导致未定义行为,但编译器可能不会报错
【答案】:C
解析:本题考察数组的基本概念。C语言中数组下标从0开始,arr[0]才是第一个元素。A正确,数组名作为函数参数时退化为指针,传递首元素地址;B正确,二维数组定义时省略行号(如inta[][3]={{1,2,3},{4,5,6}}),编译器会根据初始化列表自动计算行数;D正确,数组越界访问是未定义行为,编译器可能不检查(如越界访问可能导致数据错误或程序崩溃)。正确答案为C。
2.关于typedefstruct{inta;}S;以下说法正确的是?
A.必须用structSs;来定义结构体变量
B.可以用Ss;定义结构体变量
C.该结构体无法被其他源文件使用
D.S是结构体变量名
【答案】:B
解析:本题考察typedef关键字对结构体类型的重命名。typedefstruct{inta;}S;中,typedef将匿名结构体类型重命名为S,因此可以直接使用S作为结构
原创力文档

文档评论(0)