2017年中南林业科技大学机电工程学院341农业知识综合三[专业硕士]之C程序设计考研冲刺密押题
● 摘要
一、选择题
1. 有以下程序:
程序运行后的输出结果是( )。
A.10,64
B.10,10
C.64,10
D.64,64
【答案】A
【解析】C 语言中带参数的宏可以理解为用参数直接替代定义式中的变量,而不经过任何修改。所以
,
2. 若有定义语句:
以下叙述中错误的是( )。
A. 定义语句中的p 只能存放double 类型变量的地址
B. 定义语句中的*号是一个说明符
C. 定义语句中的*号是一个间址运算符
D. 定义语句中*p=&a把变量a 的地址作为初值赋给指针变量p
【答案】C
【解析】C 项错误,只有取指针变量的值时,星号*才是间址运算符,引用指针指向的存储单元。A 项正确, p 是double 类型的指针,只能存放double 类型的地址;B 项正确,定义指针变量时,星号是一个说明符,用来说明该变量是指针变量;D 项正确,
第 2 页,共 36 页 是求地址运算符,
用来求出double 变量a 的地址赋给指针变量p ,而使p 指向a 。
3. 以下叙述中正确的是( )。
A. 在对指针进行加、减算术运算时,数字1表示1个存储单元的长度
B. 如果p 是指针变量,则*p表示变量p 的地址值
C. 如果p 是指针变量,则&p是不合法的表达式
D. 如果p 是指针变量,则*p+1和*(p+1)的效果是一样的
【答案】A
,而是【解析】A 项正确,在对指针进行加、减运算时,数字“1”不再代表十进制整数“1”
指1个存储单元长度。B 项错误,表示p 的值;C 项错误,表示变量p 的地址;D 项错误
,
是先取p 的值,然后执行+1操作,是先对指针移动1个存储空间,然后取值。
4. 以下关于字符串的叙述中正确的是( )。
A.C 语言中有字符串类型的常量和变量
B. 两个字符串中的字符个数相同时才能进行字符串大小的比较
C. 可以用关系运算符对字符串的大小进行比较
D. 空串比空格打头的字符串小
【答案】D
【解析】字符串比较的方法是:依次对si 和S2中对应位置上的字符两两进行比较,当出现第一对不相同的字符时,即由这两个字符决定所在串的大小(比较字符大小的依据是其值)。空格是一种字符,所以空串肯定比空格打头的字符串小。
5. 有以下说明语句:
指针s 所指字符串的长度是( )。
A.17
B.15
C.14
D. 说明语句不合法
【答案】C
【解析】以
6. 设有以下函数:
第 3 页,共 36 页 码开头的转义字符也是字符常量。用一对双引号括起来的多个字符为字符串。
为转义字符,所以字符串长度为14。
【答案】A
【解析】函数指针的一般定义形式为数据类型(*指针变量名)( )。D 项中
,
带有两个数据类型,不符合函数指针定义。
7. 下列叙述中错误的是( )。
A.C 程序在运行过程中所有的计算都以二进制方式进行
B.C 程序在运行过程中所有的计算都以十进制方式进行
C. 所有的C 程序都需要在连接无误后才能运行
D.C 程序中整型变量只能存放整数,实型变量只能存放浮点数
【答案】B
【解析】在C 程序运行过程中,编译器的作用是将程序转换为目标代码,目标代码都是二进制的。
8. 表达式
A.9
B.-9
C.18
D.0
【答案】D
【解析
J
计算顺序为
首先
即
最后,
即的值是( )。
9. 设a ,b ,C 是整型变量,且已正确赋初值,以下选项中错误的赋值语句是( )。
【答案】D
【解析】D 项,“( )”具有最高优先级,b 先赋值9,再根据赋值运算符号自右向左进行赋值,再给b 赋值为1,再计算2=b,赋值运算符左边必须是一个变量,但数值2是常量,语法错误。
10.有以下程序段
若要求使p 指向一个int 型的动态存储单元,在横线处应填入的是( )。
A.int
B. (int*)
C.int*
第 4 页,共 36 页