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

2017年华南理工大学设计学院803算法语言(C)考研导师圈点必考题汇编

  摘要

一、选择题

1. 以下叙述中错误的是( )。

A. 非零的数值型常量有正值和负值的区分

B. 常量是在程序运行过程中值不能被改变的量

C. 定义符号常量必须用类型名来设定常量的类型

D. 用符号名表示的常量叫符号常量

【答案】C

【解析】在C 语言程序中,可以用一个符号名来代表一个常量,称为符号常量,符号常量在定义是不需要类型,其本身就能表达其类型。

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

A.14.0

B.31.5

C.7.5

D. 程序有错无输出结果

【答案】D

【解析】宏定义有两种:无参数的宏定义,即#definePT3.5; 带参数的宏定义,不能用宏来计算,宏只能做简单的代替而不能做计算,故程序会报错。

3. 表达式:(int )((double )9/2-(9)%2)的值是( )。

A.0

B.3

C.4

D.5

【答案】B

,【解析】运算符“/”“%”的优先级高于“-”故先进行除法和求余运算,再进行减法运算。

强制类型转换表达式的形式为:(类型名)(表达式)。“9/2”转换成double 类型,再转换成int 类型,结果为4, 减号后面的结果为1,故结果为3。

4. 以下选项中可用作C 程序合法实数的是( )。

A..leO

B.3.0e0.2

C.E9

D.9.12E

【答案】A

【解析】浮点型常量分十进制小数形式和指数形式。指数形式要求字母e (或者E )前后必须

有数字,且e 后面的指数必须为整数。BCD 三项错误。

5. 设变量均己正确定义并且赋值,以下与其他三组输出结构不同的一组语句是( )。

【答案】D

【解析】“++”和“一”运算,当以前缀形式出现时,则先进行加一或减一操作,再取值,当以后缀形式出现时,则先取值,再进行加一或减一操作。++X表示先将X 值加1后再用,X++表示先使用X 值,用后再加1,所以本题中ABC 选项都会输出x+1的值。

6. 有如下程序:

程序运行时,输入

A.1234

B.4321

C.4444

D.1111

【答案】B 则输出结果是( )。

【解析】在调用一个函数的过程中又出现直接或间接的调用该函数本身,称为函数的递归调用。本题程序的 执行过程为:在输入1234〈回车〉的情况下,调用

人1,

在这次调用中的局部变量

调用

调用条件成立→调用•

调用函数,读入3,

局部变量函数,读函数,读入2,

局部变量

函数,读入4,

局部变量函数,读入回车,if 条件不成立,返回执行每次调用函数中if 语句后的输出语句,即依次输出4321。故B 选项正确。

7. 以下叙述中错误的是( )。

A. —个C 程序可以包含多个不同名的函数

B. —个C 程序只能有一个主函数

C.C 程序在书写时,有严格的缩进要求,否则不能编译通过

D.C 程序的主函数必须用main 作为函数名

【答案】C

【解析】一个C 程序有且只有一个主函数main 。一个C 程序可以包含多个不同名字的子函数。C 程序在书写时没有严格的缩进要求。

8. 有以下程序

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

A.2,3,1

B.2,3,2

C.2,3,3

D.2,2,1

【答案】A

,赋值运算符的优先级高于逗号运算符的优先级,【解析】对于表达式“z=x++,y++,++y; ”

,,可改成“(z=x++)(y++)(++y)”。然后从左向右先计算表达式z=x++,因为x++先使用后自増,

所以z 的值为1,x 的值为2。再计算逗号表达式第二个表达式y++,此时y 的值为1,y++的值为2。最后计算第三个表达式++y,y 的值为3。

9. 若有以下程序

则程序的输出结果是( )。