2017年南昌大学高级语言程序设计考研复试核心题库
● 摘要
一、选择题
1. 有以下程序段
以下选项中表达式的值为11的是( )。
【答案】A
【解析】pt_>x值为10,_>优先级高于++,前置++表达式的值为加1之后的值,所以A 项结果为11。
2. 若有定义:
则以下不能正确表示该数组元素的表达式是( )。 A. B. C. D. 【答案】A 【
解
析
】
a
数
组
元
素
可
用
五
种
表
达
式
来
引
用
:
A 项,C 语言中规
定,方括号的优先级高于相当于是
的地址,表示数组元素
的地址,
C 项,
是元素
项,是元素
3. 若有以下程序
第 2 页,共 25 页
B 项,是不能表示数组元素。
是
的地址,
D
的地址,表示数组元素的地址,表示数组元素
A.11,2 B.25,2 C.11,12 D.25,26 【答案】D
【解析】S (k+j)展开后是(3+2)*(3+2)=25,T (k+j)展开后是(3+2)*(3+2)/(3+2)*(3+2)+1=26。
4. 有以下结构体说明、变量定义和赋值语句
则以下scanf 函数调用语句有错误的是( )。 A. B. C. D.
【答案】D 【解析】
5. 有以下程序:
程序运行后从第一列开始输入以下数据: 2473<回车>
第 3 页,共 25 页
不是地址,不能用于scanf 函数中。
A.668977 B.4444 C.6677877 D.68766 【答案】A
【解析】本题执行过程为:输入句,跳出分支结构;输入入
7,7,执行break
6. 设有定义:
【答案】D
【解析】逗号表达式的计算过程是从左到右逐个求每个表达式的值,取最右边一个表达式的值作为该逗号表达式的值。赋值运算结合性为由右向左结合,赋值运算符左值为变量,右值为变量或常量,且左右两边数据类型 相同才能实现赋值。成功实现赋值后以左值为返回值。逻辑表达式成立则返回1,不成立返回0。D 选项逻辑表 达式逗号表达式X ,y 取y 值为表达式值,然后赋值给取y 值为表达式值,然后赋值给式值12。故选择D 选项。
7. 以下不能正确表示代数式
A.2*a*b/c/d B.a*b/c/d*2 C.a/e/d*b*2 D.2*a*b/c*d 【答案】D
【解析】*、/优先级相同,所以采用从左到右结合的方式。D 项,应该改为:2*a*b/(c*d)。
8. 有以下程序:
程序运行后的输出结果是( )。
第 4 页,共 25 页
首先匹配caseO , 依次输出6, 6, 后执行break 语
匹配case2,输出8,执行break 语句,跳出分支结构;输
匹配default , 输出9,执行break 语句,跳出分支结构;输入匹配easel ,依次输出
语句,跳出分支结构。输入回车,结束循环。
以下表达式值不等于12的是( )。
不成立,则表达式值为0。B 选项
取y 值为表达
表达式值为12。C 选项逗号表达式
表达式值为12。A 选项逗号表达式
的C 语言表达是( )。