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

2018年北京市培养单位中丹院864程序设计之C程序设计考研核心题库

  摘要

一、选择题

1. 以下关于算法的叙述中错误的是( )

A. 算法可以用伪代码、流程图等多种形式来描述

B. —个正确的算法必须有输入

C. 一个正确的算法必须有输出

D. 用流程图可以描述的算法可以用任何一种计算机高级语言编写成程序代码

【答案】B

【解析】一个正确的算法可以有零个或者多个输入,必须有一个或者多个输出。

2. 有以下程序:

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

A.1

B.2

C.4

D.8

【答案】D

【解析】f (l )输出2,然后调用f (2)输出4, 再调用f (4)输出8。

3. 以下叙述中正确的是( )。

A.C 语言规定必须用main 作为主函数名,程序将从此开始执行

B. 可以在程序中由用户指定任意一个函数作为主函数,程序将从此开始执行

C.C 语言程序将从源程序中第一个函数开始执行

D.main 的各种大小写拼写形式都可以作为主函数名,如:MAIN , Main等

【答案】A

【解析】用户不能指定某函数为主函数,函数从main 函数开始执行,C 语言函数名区别大小写。

4. 以下选项中,能用作数据常量的是( )。

【答案】D

【解析】A 项错误,十六进制数用数学0和字符x (或大写字母X )开头;B 项错误,八进制整数常量以数字0开始,有效数字为0〜7; C项错误,C 语言中实型常量有两种表示:小数形式和指数形式。指数形式中,字母e (或E )之前必须要有数字,且后面的指数必须为整数。

5. 有以下程序:

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

A.02

B.13

C.57

D.12

【答案】D 【解析】具有短路效应,当前面的表达式结果为逻辑假时后面的表达式不在进行

的计算,k 的值为1, 所以结果为1和2。计算。k++首先去k 的值,为0, 为逻辑假不在进行

6. 以下叙述中正确的是( )。

A. 不能用字符串常量对字符数组名进行整体赋值操作

B. 字符串常量“Hello”会被隐含处理成一个无名字符型数组,它有5个元素 C.

D.

【答案】A

【解析】A 项正确,不可以用赋值语句给字符数组整体赋一串字符,但是可以直接用字符串

B 项错误,常量给一维字符 数组赋初始值。编译器会在字符串常量最后添加

最近的’\0’作为其结束标志,运行时不安全;D 项错误,不能给数组str 赋值。

7. 有以下程序:

在语法上是合法的,运行也是安全的 效果是一样的 它共有6个元素;C 项错误,在语法上是合法的,但是没有字符串尾标识符,系统将要在其后的内存中找一个距它

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

A.3

B.6

C.8

D.12

【答案】B

【解析】fun 函数的功能是返回两个数的算术平均数。

调用,

相当于

运算,向下取整),

8. 有以下程序:

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

A. 在main 函数中声明了 findmax 函数

B. 在main 函数中定义了 findmax 函数

C. 在main 函数中两次调用了 findmax 函数

D. 在main 函数内、外重复定义了 findmax 函数

【答案】A

【解析】程序编译是从上到下进行的,所以如果函数定义放在主函数之后,那么在函数调用时必须提前声明函数,可以在主函数之前声明函数,也可以在主函数中函数调用之前声明函数。题目中函数findmax 定义放在了函数之后,所以主函数中声明了 findma 函数

为函数声明

,为函数调用

为函数定义。A 选项正确。B 选项是在main 函数外定义的findmax

函数,错误。在main 函数中,出现了一次findmax 函数的声明和一次findmax 函数的调用,不是两次调用,C 选项错误。D 选项在main 函数内不是定义findmax 函数而是声明findmax 函数。

是嵌套其中

(之间的输出结果是6。