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

2017年西北工业大学机电学院程序设计基础(加试)复试仿真模拟三套题

  摘要

一、选择题

1. 结构化程序由顺序、选择、循环三种基本结构组成,以下相关叙述错误的是( )。

A. 三种基本结构不可以嵌套使用

B. 顺序结构是按语句在程序中的先后顺序逐条执行,没有分支,没有转移 C. 选择结构是根据不同的条件执行不同分支中的语句

D. 循环结构是根据条件决定是否重复、重复执行多少次循环体语句 【答案】A

【解析】结构化程序主要由3种基本控制结构组成,顺序结构是最基本的算法结构,当执行由这些语句构成的程序时,将按这些语句在程序中的先后顺序逐条执行,没有分支,没有转移,没有步骤之间的相互约束,没有 对某一步骤的多次使用,完全按照步骤的原有次序依次执行,B 选项叙述正确。选择结构根据不同的条件去执行 不同分支中的语句,C 选项叙述正确。循环结构就是根据各自的条件,使同一组语句重复执行多次,D 选项叙述正确。三种结构可以嵌套使用,A 选项叙述错误,选择A 选项。

2. 有以下程序:

程序的运行结果是( )。 A.10 B.20 C.14 D.16

【答案】C 【解析】

3. 若有定义:

A.ps[0]是字符串”aa” B. C. D.

是字符串”aa”的首地址 是字符串”aa”的首地址 是字符串”aa”

第 2 页,共 16 页

系统默认为指针指向数组中第

执行的是将数组

个元素,因此,在for 循环中

累加后赋值给n , 最后输出,值为14。

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

【答案】C

ps 是指针变量,ps[0]指向的是数组首个元素的地址,【解析】定义一个字符串数组指针ps 后,即字符串“aa” 的首地址,C 项正确。

4. 若有定义

【答案】C 必须是整数。

A 项,赋值运算符的优先级高于“,”运算法,先进行赋值;B 项,将

右边的逻辑表达式

的计算结果赋给变量D 项,首先对变量a 求逻辑非操作,然后将结果赋值给变量i

5. 下列叙述中正确的是( )。

A. 每个C 程序文件中都必须要有一个main 函数 B. 在C 程序中main 函数的位置是固定的 C.C 程序中所有函数之间都可以相互调用 D. 在C 程序的函数中不能定义另一个函数 【答案】D

【解析】D 项正确,C 语言语法规定,在函数中不能定义其他函数。A 项错误,C 程序必须要有一个main 函数,但并不是每个文件中都要有;B 项错误,main 函数的位置没有特殊要求;C 项错误,从其他函数中不能调用main 函数。

6. 有以下程序:

程序运行后的输出结果是( )。 A.3 B.2 C.1 D.0

【答案】D

第 3 页,共 16 页

则不符合C 语言规定的赋值语句是( )。

【解析】C 项错误,在C 语言的算术运算符中,取余运算符的左右两侧的两个运算分量

【解析】C 语言的语法规定:else 子句总是与前面最近的不带else 的if 相结合,与书写格式无关。可以写成下面的形式:

)即判定为false ,y 值不发生变化,然后else 判定x==0,仍然为false ,不执行else 语句,y 值不发生变化。

7. 以下函数findmax 拟实现在数组中查找最大值并作为函数值返回,但程序中有错导致不能实现预定功能。

造成错误的原因是( )。 A. 定义语句B. 赋值语句C. 语句D. 赋值语句【答案】D

【解析】本题中for 循环中首先将MIN 值赋值给max , 然后用将MIN 值与

值进行比较,所以无论

先执

的值是什么,都不会影响if 的判断语句,

始终执行。

所以函数返回的是数组中最后一个元素的值。本题的错误在于

8. 以下不是合法C 语言转义字符的是( )。

A. B. C.

第 4 页,共 16 页

中max 未赋初值

中,不应给max 赋MIN 值

中判断条件设置错误

放错了位置

与max 的值比较。每次都是

的位置,for 循环之前应