2017年上海海事大学文理学院828数据结构及程序设计之C程序设计考研仿真模拟题
● 摘要
一、选择题
1. 有以下程序:
程序运行后的输出结果是( )。
A.6
B.1
C.0
D.3
【答案】D 【解析】按位与运算符。a=3=118,b=3=118,按位与结果为11B=3,D 项正确。
2. 有以下程序
程序运行后的输出结果是( )。
A.3
B.1
C.2
D.4
【答案】B
第 2 页,共 34 页
【解析】函数' 有两个形参,第一个形参是传值,第二个形参是传引用,在函数fun 内部改变s 的值,则在函数fun 外部也会发生相应改变。f 是函数内部的局部变量,递归调用时,把局部变量f 以指 针的形式传入,在下一层函数中会对f 进行修改,当下一层函数返回后,再把当前局部变量f 赋值给形参s 。函 数调用过程如下表所示。
3. 表达式
A.9
B.-9
C.18
D.0
【答案】D
【解析
J
4. 有如下程序:
程序运行后的输出结果是( )。
A.Ta=l,b=2
B.Fa=0,b=2
C.Fa=l,b=l
D.Ta=0,b=l
【答案】C
【解析】题目中判断if 条件是否成立,a++先取值为0,则
printf 按照格式输出a=l,b=l。故C 选项正确。
5. 有以下程序(字母A 的ASCII 代码为65):
第 3 页,共 34 页 的值是( )。 计算顺序为
首先
即
最后,
即为0,且不计算b++,而后a 自增得a=l,if 条件不成立执行else 函数体,输出F 。最后执行语句
程序运行后的输出结果是( )。
A. 输出格式不合法,输出出错信息
B.A , Y
C.65, 90
D.65, 89
【答案】D
【解析】字符可以用整型来输出,输出的是对应的ASCII 值。‘A ’的ASCII 值为65, ‘Y ’的ASCII 值为89, 所以输出结果为65, 89。
6. 若有函数:
以下叙述中正确的是( )。
A. 调用fun 函数时只有数组执行按值传送,其他实参和形参之间执行按地址传送
B. 形参a 和n 都是指针变量
C. 形参a 是一个数组名,n 是指针变量
D. 调用fun 函数时将把double 型实参数组元素一一对应地传送给形参a 数组
【答案】B
【解析】AC 两项错误,函数中的形参已经退化为一个指针;D 项错误,fun 中只是传入一个指针,并没有把数组的元素顺序赋值。
7. 若有定义语句则表达式
A.char
B.int
C.double
D.float
【答案】c 值的类型是( )。
【解析】在多目运算符相关联的运算数中,如果类型不一致,系统将自动进行类型转换,使两边的类型达到一直后,再进行运算,转换的规则是由“低到高”。
double 型,即选择答案C 。
8. 有以下程序(strcat 函数用以连接两个字符串):
第 4 页,共 34 页
是字符型,a 是整型,b 是double 型。字符型数据占1个字节,整型占2个字节,double 型占8个字节,故三者相加后为