当前位置:问答库>考研试题

2016年浙江师范大学数理与信息工程学院C程序设计(同等学力加试)复试笔试最后押题五套卷

  摘要

一、选择题

1. 有以下程序:

编译时编译器提示错误信息,你认为出错的语句是( )。

C.k=l,m=8;

答:A

【解析】A 项,

是不正确的表达式;

2. 若变量已正确定义,则以下for 循环( ):

A. 执行4次B. 执行3次

C. 执行次数不确定

D. 执行123次

答:C

【解析】

优先级低于

逻辑与表达式。规则为:对expl 求值,若为0, 则表达式为0, 则不计算exP2; 若expl 非0, 则求exP2值,作为表达式值。本题计算过程为:先判断a>b为假,m=0, 整个逻辑表达式为假,不计算右表达式,n=2。故C 选项正确。

3. 有以下程序:

程序的运行结果是( )。

A.246

B.135

C.123

D.456

答:A

【解析】程序执行过程为:定义二维数组s 与指针数组ps , for循环实现将二维数组每一行的首地址赋值给 对应的指针数组元素,然后输出二维数组每行的第二个元素。程序的运行结果是246。

4. 设有两行定义语句:

intscanf ;

floatcase ;

则以下叙述正确的是( )。

A. 两行定义语句都不合法

B. 两行定义语句都合法

C. 第1行语句不合法

D. 第2行语句不合法

答:D

【解析】预定义标识符是系统已经有过定义的标识符,用户可以重新定义,可以作为变量名。scanf 为库函数名,属于预定义标识符,可以被用户重定义,第一行语句合法。C 语言关键字是被保留的,不能用作其他用途的一些标识符,它们在程序中都代表着固定的含义,用户不可重新定义。case 是选择结构switch 语句中的关键字,不可被用户重定义,第二行语句不合法。

5. 以下选项中叙述正确的是( )

A.C 程序中的语句要经过编译才能转换成二进制机器指令

B. 算法需要包含所有三种基本结构

C. 有些算法不能用三种基本结构来表达

D. 简单算法的操作步骤不能超过20步

答:A

【解析】编译就是把高级语言变成计算机可以识别的二进制语言,不经过编译的源程序是不能运行的,A 选项正确。算法不一定要包含所有三种基本结构,也可以只包含一种或两种,B 选项错误。结构化程序主要由3种 基本控制结构组成,循环结构、选择结构、顺序结构,它们组成的算法结构可以解决任何复杂的问题,C 项错误。算法的复杂程序不是由操作步骤多少决定的,而是按时间复杂度与空间复杂度来衡量,D 选项错误。

6. 有以下程序

程序的运行情况是( )。

A. 形成无限循环

B. 输出6

C. 输出5

D. 输出4

答:A

【解析】本题执行过程为:i=l,k=0, i<6成立,执行for 循环:

退出switch

, 成立,执行for 循环:,匹配easel ,k=l, break 匹配case2,k=2,执行continue ,由于其只用于循环结构,退出switch , 且不执行此次for 循环以后的语句,i=2不变,i<6成立,执行下一次for 循环,以后的循环情况完全一致,i=2不会改变,形成无限循环。故A 项正确。

7. 设有定义以下选项中能够使字符型指针c 正确指向一个字符串的是( )。

A. B. C. D.

答:A

【解析】scanfO 函数是将C 定义为一个字符数组的数组名,选项C 是将c 定义为一个字符型变量,选项 D 应该是在指针的定义同时为它赋值,否则是不合法的。选项A 中定义字符数组str ,再将字符数组stt 的首地址 赋给字符型指针C 。

8. 有以下程序

程序运行后的输出结果是( )。

A.1

B.10

C.11

D.2

答:A