2017年山西大学数学科学学院834程序设计考研题库
● 摘要
一、选择题
1. 若有代数式
(其中e 仅代表自然对数的底数,不是变量),则以下能够正确表示该
代数式的C 语言表达式是( )。
【答案】A
【解析】math.h 是数学运算库函数的头文件名:
2. 有以下程序:
程序运行后的输出结果是( )。 A.0 B.1 C.10 D.4
【答案】A
【解析】题for 循环内有break 和continue 语句,且均放在b+=a语句前面,无论if 条件是否满足,b+=a都不会被执行,因此b 值始终为0。
3. 若有定义语句:且
【答案】A
【解析】二维数组名是指向指针的指针,所以a 和q 都为指向指针的指针,而p 为指向int
第 2 页,共 51 页
则错误的赋值是( )。
类型的指针,p 和a 不同类型,故A 项用返回整数的地址,然后复赋值P 。
4. 有以下程序:
程序运行后的输出结果是( )。 A. B. C. D. 【答案】D
赋值语句错误。其余选项可以正确赋值,其中D 项是
while 函数判断p 指针指向地址的内容是否和a 指针指向地址的内容相等,【解析】如果不是,则移动指针p+1, 当p 指向*b字符串中的
时,和首地址元素相等,退出while 语句后,p 再向
输出
及剩余的字符串,D 项正确。
右移动a 字符串长度+1个单位地址,此时p 指向
5. 有如下定义:
的是( )。
【答案】A
【解析】A 项中,因为n=l, 即每次写入1个结构体数据,x 是数组的首地址,因此,每次写入的数据都是数组的首个结构体元素,没有将整个数组写入文件中去。
6. 以下可以将任意一个两位整数n 的个位数与十位数对换的表达式为( )。
第 3 页,共 51 页
若文件已正确打开,且数组x 的10个元素均已赋值,以下将数组元素写到文件中的语句错误
【答案】A 【解析】A 项
得到十位数字,
得到个位数字,将个位数乘以10加上十位数字
,
实现两位整数个位数与十位
是十位
实现将任意一个两位整数个位数与十位数对换,A 项正确。B 项
得到个位数字,
数之和,B 项错误。C 项
为十位数字,
不能实现题目中要求,C 项错误。D 项
数字,为原两位整数减去十位数字,不是个位数字,D 项错误。
7. 有以下程序:
以下程序:
程序运行后的输出结果是( )。 A.7, 4 B.4, 10 C.8, 8 D.10, 10 【答案】B
【解析】C 语言中,
用来统计字符串的字符个数,
是求为数组分配的存储
空间大小。该题中字符串p 的字符个数为4, 字符数组a 的大小为10。
8. 有以下程序
第 4 页,共 51 页