- 1
- 0
- 约6.67万字
- 约 102页
- 2026-10-09 发布于山东
- 举报
c语言考试题库通关检测卷(综合卷)附答案详解
1.以下关于C语言数组的描述,错误的是?
A.intarr[5]={1,2,3};中arr[4]的值为0
B.数组名作为函数参数传递时,会退化为指向数组首元素的指针
C.C语言数组的下标从1开始计数
D.当数组作为函数参数时,不能直接用sizeof(arr)获取数组总大小
【答案】:C
解析:本题考察C语言数组的初始化规则与参数传递特性。A选项中,数组初始化列表元素不足时,未显式初始化的元素自动初始化为0,故arr[4]=0正确;B选项中,数组名作为函数参数时会退化为指针,正确;C选项中,C语言数组下标从0开始,而非1,错误;D选项中,数组作为参数退化为指针,sizeof(arr)在函数内返回指针大小而非数组总大小,正确。
2.指针变量p指向int数组arr的第3个元素(arr[2]),则执行p+=2后,p指向哪个元素?
A.arr[0]
B.arr[2]
C.arr[3]
D.arr[4]
【答案】:D
解析:本题考察指针运算。数组元素在内存中连续存储,int类型占4字节。p初始指向arr[2],p+=2表示指针向后移动2个int元素,因此指向arr[2+2]=arr[4]。正确答案为D。
3.若有inta[5]={10,20,30,40,50};int*p=a;执行
原创力文档

文档评论(0)