2017年东北师范大学C++程序设计复试实战预测五套卷
● 摘要
一、选择题
1. 若变量已正确定义,则以下for 循环( ):
A. 执行4次B. 执行3次
C. 执行次数不确定 D. 执行123次 【答案】C
【解析】
优先级低于
逻辑与表达式。
规则为:对expl
求值,若为0, 则表达式为0, 则不计算exP2; 若expl 非0, 则求exP2值,作为表达式值。本题计算过程为:先判断a>b为假,m=0, 整个逻辑表达式为假,不计算右表达式,n=2。故C 选项正确。
2. 以下选项中能表示合法常量的是( )。
A. 整数:1,200 B. 实数:
1.5E2.0
【答案】D
【解析】A 项错误,表达错误;B 项错误,E 后面应为整数,不能是小数;C 项错误;字符斜杠的表示方法正确。
3. 有以下程序
程序的输出结果是( )。 A.8 B.5 C.7 D.6
【答案】D
第 2 页,共 24 页
因为第一个\表示是转义字符;D 项正确,表示空字符串,
第一个字符为
【解析】C 语言中的标识符区分大小写,pad 只实现了一次自增操作,结果输出6。
4. 有以下程序:
程序运行时键盘输入9〈回车>,则输出的结果是( )。 A.10 B.11 C.9 D.8
【答案】A
【解析】“++”和“一”运算,当以前缀形式出现时,贝U 先进行加一或减一操作,再取值,当以后缀形式出现时,则先取值,再进行加一或减一操作。判断条件中if (a++<9)是先用后加,即a 的值为9,所以条件不成立,但是a 已经进行了自增1操作,a 的值此时为10。执行else 语句时,因为打印a_-,是先用后减,所以先输出10,然后a 的值变为9。 5 若有定义inta , b ;, 通过语句.能把整数3赋给变量a , 5赋给变量b 的输入数据是( )。
A.35 B.3, 5 C.3;5 D.35
【答案】C
scanf 函数在输入字符型时,【解析】要求输入数据时按照一一对应的位置原样输入这些字符。根据语句scan 隔,故输入3; 5。
6. 有以下程序:
程序的运行结果是( )。
第 3 页,共 24 页
即要求输入整型数3和5, 由于语句中间是由相
A. B. C. D.
即
【答案】B
【解析】调用函数fun ,输出的是即输出
7. 设有定义: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 项。
8. 若有以下定义和语句:
则输出结果是( )。 A.5 5 B.10 5 C.10 7 D.5 8 【答案】A
【解析】strlen 函数是测试字符串长度的函数,求字符串的实际字符个数,不包括字符内,
在字符义字符
,
之后的所有字符均不计入长度中。所以的含义是一个字符【程序有错,
应为
而以】
所以s2
所指向的内容实际上是
在所以
开头的字符序列是转
二、设计题
9. 学生的记录由学号和成绩组成,N 名学生的数据已在主函数中放入结构体数组s 中,请编写函数fun , 它 的功能是:按分数的高低排列学生的记录,高分在前。
注意:部分源程序存在文件语句。
给定源程序:
第 4 页,共 24 页
中。
请勿改动主函数main 和其他函数中的任何内容,仅在函数fun 的花括号中填入你编写的若干