2016年北京理工大学数学与统计学院应用统计硕士(专业学位)之C语言程序设计考研复试题库
● 摘要
一、选择题
1. 设有定义:
答:C
【解析】C 语言中if 语句后面只跟一条语句时,可以省略大括号。即if 语句仅作用于紧随其后的那条语句或者是复合语句的内容,所以A 项,执行三条语句组成的复合语句;BD 两项执行大括号中的三条语句;而C 项 只执行
2. 若有定义:inta ,b :
通过语句
能把整数3赋给变量a , 5赋给变量b 的输入数据是( )。
A.3, 5
B.3;5
C.35
D.35
答:B
scanf 函数中如果使用通配符, 【解析】则在输入数据时也必须使用相同的通配符与它相匹配。
3. 设有定义:intx=7, y=12;,则以下表达式值为3的是( )。
A. (y%=x)-(x%=5)
B.y%=(x%=5)
C.y%=x-x%5
D.y%=(x-x%5)
答:A
,A 项可改写成y=y%x,x=x%5,再计算y-x 计算【解析】A 项正确,a%=b表示a=a%(b )
的结果为3,满足题意;B 项为0, C 项为2, D 项等同于C 项。
4. 有以下程序:
第 2 页,共 33 页 以下语句中执行效果与其他三个不同的是( )。
执行时输入:123<回车>, 则输出结果是( )。
A.1,2,3,2,3,3,
B.1, 2, 3,
C.2, 3, 4, 3, 4, 4,
D.1, 1, 1, 2, 2, 3
答:A
【解析】本题执行过程为:输入1, 匹配easel , 输出1, 然后执行b++得b=2, 再执行下一个case 的语句输出2,然后执行b++得b=3,继续执行default , 输出3; 输入2,执行case2, 输出2, 然后执行b++得b=3,执行default 输出3; 输入3,执行default 输出3。故A 项正确。
5. 有以下程序:
程序的运行结果是( )。
A.6,5,4,3,2,1,
B.1, 1
C.1, 1, 1, 1, 1, 1,
D.1,2,3,4,5,6,
答:A
【解析】本题中递归函数调用执行过程为
:
输
出也即返回执行之后的输出x[0]语句,即5, 同理再返回上一个f 函数,依次输出4, 3,2,1。
第 3 页,共 33 页
6. 有以下计算公式:
若程序前面已在命令行中包含math , h 文件,不能够计算上述公式的程序段是( )。
答:A
【解析】sqrt 函数是math.h 文件中用来计算平方根的苦函数。A 项错误,当x 小于零时,A 项会出现运行时错误。B 项使用if-else 语句实现功能;C 项使用两条if 语句实现;D 项使用三目运算符实现,结果等价于BC 两项。
7. 关于C 语言中数的表示,以下叙述中正确的是( )。
A. 只有整型数在允许范围内能精确无误地表示,实型数会有误差
B. 只要在允许范围内整型和实型都能精确表示
C. 只有实型数在允许范围内能精确无误地表示,整型数会有误差
D. 只有八进制表示的数才不会有误差
答:A
【解析】实型数据在内存中存储的二进制位数是有限的,而一个十进制实数转化为二进制实数时,其有效数字位数有可能会超过尾数的存储长度,从而导致有效数字丢失而产生误差。在整形数允许范围之内,二进制可以 表示任意一个整数。
8. 有以下程序
程序运行后的输出结果是( )。
A.5
B.50
C.6
D.60
答:A
【解析】最后一句应该是
指针p 指向c ,指针s 指向c[5],s-p 就是c 的地址与c[5]的地址之差(以int 的存储空间为单,s 和p 都是int 型变量s=p+5,所以s-p=5。 位)
第 4 页,共 33 页