2018年北方民族大学软件工程832C语言程序设计与数据结构之C程序设计考研仿真模拟五套题
● 摘要
一、选择题
1. 设有定义
以下能够代表数组元素
A. B. I C. D.
【答案】B 的是( )。 【解析】B 项,S+3指向a[3]的地址,
先级高于*
, 等价子代表元素,对I 取出数组元素A 项,小括号和方括号的优先级相同,从左向右结合,先取的值,然后再进行方括号运算,编译错误;C 项,方括号的优元素进行间址运算,编译错误;D 项,间址操
作符*的优先级高于加号,先取出8指向的数据,然后加3, 并不是数组元素
2. 设有定义:则以下语句错误的是( )。
A.p=a;
B.p=b;
C.p=c; D.
【答案】A
【解析】p 为指针变量,存放变量的地址。对指针变量赋值,值必须是地址值。a 为整型变量不是地址值, 不能赋值给p , A项错误。数组名为数组首地址,b 为地址可以赋值给p , B项正确。c 为指针变量,初始化为 NULL , 与p 均为整型指针,可以将其赋值给p , C项正确。&为取地址运算符,为数组元素b[0]的地址,可以赋值给p ,D 项正确。
3. 以下不属于C 语言位运算符的是( )。
A.! B. C.
D. 〜
【答案】A
【解析】c 语言常用的位运算符有:”按位求反,“<<”左移,“>>”右移,
按位异或,“”按位或。A 项“!”为逻辑运算符“非”。
第 2 页,共 38 页 按位与
,
4. 若有以下程序
则程序的输出结果是( )。
A.17,37
B.49,2401
C.17,289
D.49,289
【答案】A
【解析】S (k+j)展开后是5+2*5+2=17,T (k+j)展开后是5+2*5+2*5+2*5+2=37。
5. 有如下程序:
程序运行时,输入
A.DCDC
B.DCBA
C.BABA
D.ABCD
【答案】B 则输出结果是( )。
【解析】本题考查了函数的递归调用,进入函数后,字符变量ch 每次保存读进来的字
后,下一次读取不满足if 条符,如果不是换行符,则继续读取下一个字符常量,当ch 保存完
件,函数进行输出,依次输出答案为B 选项。
6. fun 函数的功能是:通过键盘输入给x 所指的整型数组所有元素赋值。在下画线处应该填写的是( )。
第 3 页,共 38 页
A. B. C. D.
【答案】D
【解析】数组名本身就是地址,所以不需要用符号。C 选项不能对所有元素赋值而是反复给一个数值赋值且是死循环。
7. 有以下程序(字母A 的ASCII 代码为65):
程序运行后的输出结果是( )。
A. 输出格式不合法,输出出错信息
B.A , Y
C.65, 90
D.65, 89
【答案】D
【解析】字符可以用整型来输出,输出的是对应的ASCII 值。‘A ’的ASCII 值为65, ‘Y ’的ASCII 值为89, 所以输出结果为65, 89。
8. 有以下程序段:
若指定文件不存在,且无其他异常,则以下叙述错误的是( )。
A. 输出“不能打开文件!”
B. 输出“成功打开文件!”
C. 系统将按指定文件名新建文件
D. 系统将为写操作建立文本文件
【答案】A
第 4 页,共 38 页