2024年4月浙江自考《C语言程序设计》每日一练(14)
编辑整理:浙江自考网 发表时间:2024-01-15 【大 中 小】
【1.66】说明语句'int(*p)();'的含义是。
A)p是一个指向一维数组的指针变量
B)p是指针变量,指向一个整型数据
C)p是一个指向函数的指针,该函数的返回值是一个整型
D)以上都不对
【1.67】设有说明int(*p)[4];其中的标识符p是。
A)4个指向整型变量的指针变量
B)指向4个整型变量的函数指针
C)一个指向具有4个整型元素的一维数组的指针
D)具有4个指向整型变量的指针元素的一维指针数组
【1.68】已知:char s[10],*p=s,则在下列语句中,错误的语句是。
A)p=s+5;B)s=p+s;C)s[2]=p[4];D)*p=s[0];
【1.69】已知:char s[100];int i;则引用数组元素的错误的形式是。
A)s[i+10]B)*(s+i)C)*(i+s)D)*((s++)+i)
【1.70】已知:char s[6],*ps=s;则正确的赋值语句是。
A)s='12345';B)*s='12345';C)ps='12345';D)*ps='12345';
【参考答案】
【1.66】答案:C
注释:要注意与说明语句'int(*p)[];'的区别。说明语句'int(*p)[];'说明的是一个指向数组的指针。
【1.67】答案:C
注释:题干中由于*和p被小括号括起,所以p应被解释为一个指针,而后的下标运算符[]说明所指向的对象是一个有4个int型元素的一维数组;如果是int(*p)(),则是指向函数的指针。对于int*p[4],则根据运算符的优先级,先考虑p和[]运算符的关系,所以它就是一个指针数组了。
【1.68】答案:B
注释:选项B有两处错误,一是数组名是常量,不能出现的赋值好的左侧,二是指针变量只能和整数做加,不能和作为地址常量的数组名相加。
【1.69】答案:D
注释:s作为数组名是地址常量,而s++是s=s+1,C语言不允许对常量进行赋值。
【1.70】答案:C
浙江自考网声明:
1、由于各方面情况的调整与变化,本网提供的考试信息仅供参考,考试信息以省考试院及院校官方发布的信息为准。
2、本网信息来源为其他媒体的稿件转载,免费转载出于非商业性学习目的,版权归原作者所有,如有内容与版权问题等请与本站联系。