2017年南京邮电大学面向对象程序设计(同等学力加试)复试仿真模拟三套题
● 摘要
一、选择题
1. 以下选项中叙述正确的是( )
A.C 程序中的语句要经过编译才能转换成二进制机器指令
B. 算法需要包含所有三种基本结构
C. 有些算法不能用三种基本结构来表达
D. 简单算法的操作步骤不能超过20步
【答案】A
【解析】编译就是把高级语言变成计算机可以识别的二进制语言,不经过编译的源程序是不能运行的,A 选项正确。算法不一定要包含所有三种基本结构,也可以只包含一种或两种,B 选项错误。结构化程序主要由3种 基本控制结构组成,循环结构、选择结构、顺序结构,它们组成的算法结构可以解决任何复杂的问题,C 项错误。算法的复杂程序不是由操作步骤多少决定的,而是按时间复杂度与空间复杂度来衡量,D 选项错误。
2. C 语言编译程序的功能是( )。
A. 执行一个C 语言编写的源程序
B. 把C 源程序翻译成码
C. 把C 源程序翻译成机器代码
D. 把C 源程序与系统提供的库函数组合成一个二进制执行文件
【答案】C
【解析】变异程序可以把用户按C 寓言规定的语法写出的语句翻译成二进制的机器指令,每条C 语句经过编译最终都将转换成二进制的机器指令。
3. 有以下程序:
程序的运行结果是( )。
D.ab
【答案】C
【解析】函数fun 中有两个while 循环,第一个while 循环语句查找第一个非字符;第二个while 循环语句将a 所指向的字符赋值给b ,这个循环的作用是将a 中第一个非的后的字符都复制到b 中。整个函数fun 的功能时将a 字符串中讲第一个非的字符开始的字符赋值给b 。
4. 设有定义:
则以下赋值语句中错误的是( )。
A.data2=datal;
B.data2=(2,6);
C.data2.real=datal.real;
D.data2.real=datal.unreal;
【答案】B
【解析】B 项错误,对结构体进行初始化时,应该用花括号括起来的一组值,而不是用小括号。
5. 为了避免在嵌套的if-else 语句中产生二义性,C 语言规定与else 子句配对是( )。
A. 与其在同一行上的if 子句
B. 在其之后最近的不带else 的if 子句
C. 与其缩排位置相同的if 子句
D. 在其之前最近的不带else 的同层if 子句
【答案】D
【解析】if 总是与它上面最近的、未配对的else 配对。
6. 有以下程序
:
程序的运行结果是( )。
A.6
B.5
C.4
D.3
【答案】B
【解析】条件运算符语法形式为:执行规则为:计算表达式expl 的值,测试其是否为0; 如果expl 的值非0, 则对exp2求值,并把这个值作为条件表达式的
结果输出,不计算exp3; 如果expl 的值为0,则对exp3求值,并把这个值作为条件表达式的
结果输出,不计算exP2。函数ml 实现返回传入两个参数中的最小值。函数m2实现返回传入两个参数中的最大值。函数fun 实现返回传入两个参数之和。程序执行过程为:调用ml (2, 3)返回2, 调用m2(3, 1)返回3, 调用fun (2,3)返回5,输出结果5,故B 项正确。
7. 以下叙述中正确的是( )
A. 程序设计的任务就是编写程序代码并上机调试
B. 程序设计的任务就是确定所用数据结构
C. 程序设计的任务就是确定所用算法
D. 以上三种说法都不完整
【答案】D
【解析】程序设计是指设计、编程、调试程序的方法和过程。因为程序是软件的主体,软件的质量主要通过 程序的质量来体现,在软件研宄中,程序设计的工作非常重要,内容涉及相关的基本概念、工具、方法及方法学。
8. 有以下程序:
程序的运行结果是( )。
【答案】A
【解析】程序执行过程为:将a 赋给b , 调用f 函数,将b 中name 地址与gender 和score 的值传进函数,执行函数体,strcpy 函数改变b 中name 值,但由于后两个成员为值传递不能改变b 中gender 和score 值。调用函数结束后,结构体