2017年南京师范大学文学院803程序设计语言考研冲刺密押题
● 摘要
一、选择题
1. 以下不合法的数值常量是( )。
B.lei C.011
D.Oxabcd 【答案】A
【解析】E 前E 后有数字,E 后数字为整数,A 项E 后面为小数,错误。
2. 有以下函数:
程序运行后的输出结果是( )。 A.2 4 6 8 10 B.1 3 5 7 9 C.1 2 3 4 5 D.6 7 8 9 10 【答案】D
【解析】函数exch 的作用就是把数组某个元素的值变为这个元素位置加5后对应的元素值, 所以执行完之后输出数组x 的前五个元素的值,其实就是数组x 的后五个元素的值,即6 7 8 9 10。
3. 以下程序:
程序运行后的结果是( )。 A.1 3 7 B.7 3 1 C.7 3 D.3 7
【答案】D
【解析】函数fun 是递归函数,递归终止条件是x 小于等于4, 当大于等于4是递归调用第一次循环
调用
跳出if 循环,执行输出x=3, 然后回到第一次循环,执
行if 循环的语句,输出x=7。
4. 有以下程序:
程序的运行结果是( )。
【答案】A
【解析】结构体作为函数参数时是传值调用。本题中,函数传递的是实参结构体变量中的值。函数体内对形参结构体变量中任何成员的操作都不会影响对应实参中成员的值。因此f ( )没有任何实际作用。
5. 以下叙述中错误的是( )。
A. 在程序中凡是以“#”开始的语句行都是预处理命令行 B. 预处理命令行的最后不能以分号表示结束 C.#defineMAX是合法的宏定义命令行
D.C 程序对预处理命令行的处理是在程序执行的过程中进行的 【答案】D
,其中的末尾不得用“;【解析】在C 语言中,以“#”开头的行都称为“编译预处理命令行””结束,区别语句的定义和说明语句。C 项,中的宏定义为不带参数的宏命令行,宏名之后可以有替换文本,也可以没有。编译预处理是在编译程序对C 源程序进行编译前执行的。
6. 有以下定义和语句:
在VC6平台上编译运行,程序运行后的输出结果是( )。 A.3,4 B.4,4 C.4,8 D.10,6 【答案】C
【解析】整型数据占4个字节,而双精度型数据占8个字节。
7. 有以下程序
程序的运行结果是( )。
【答案】B
【解析】struct 变量作为形参和返回值时,传递的是结构体类型的值。f 函数中,把b 变量赋