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

2017年长春师范大学C程序设计复试仿真模拟三套题

  摘要

一、选择题

1. 若有以下程序

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

A.4,3,4

B.4,3,3

C.6,3,6

D.6,6,6

【答案】B

【解析】函数sp (p )调用前,p 指向k ; 调用后,指针p 被复制到a ,a 也指向

存单元,k 和*p仍然是3。

2. 下列叙述中错误的是( ) 。

A.C 程序在运行过程中所有的计算都以二进制方式进行

B.C 程序在运行过程中所有的计算都以十进制方式进行

C. 所有的C 程序都需要在连接无误后才能运行

D.C 程序中整型变量只能存放整数,实型变量只能存放浮点数

【答案】B

【解析】在C 程序运行过程中,编译器的作用是将程序转换为目标代码,目标代码都是二进制的。

3. 有以下程序:

第 2 页,共 15 页 语句使得a 指向变量b (但是p 仍然指向k ); 在sp 函数内部输出4,sp 函数没有改变指针p 指向的内

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

A.32

B.12

C.21

D.22

【答案】C

【解析】C 语言中函数参数传递有两种方式传值传递和传址传递,传址传递对应的变量在被调用函数中修改对应的参数的值,会影响调用函数中对应的变量的值,传值传递对应的变量在被调用函数中修改不会改变调用函 数中对应的变量的值。本题中采用的传值传递,fun 函数体内输出p 的值为2, 并没有影响到fun 函数外a 的值,a 的值在main 函数内依然为1。

4. 有以下程序:

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

A.10,64

B.10,10

C.64,10

D.64,64

【答案】A

【解析】C 语言中带参数的宏可以理解为用参数直接替代定义式中的变量,而不经过任何修改。所以

5. C 源程序中不能表示的数制是( )。

A. 二进制

B. 八进制

C. 十进制

D. 十六进制

【答案】A

【解析】C 语言中整型常量可以是十进制数、八进制数、十六进制数,虽然运行方式以二进制数运行,但整型常量不包括二进制数。

第 3 页,共 15 页

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

A. 宏名必须用大写字母表示

B. 宏定义必须位于源程序中所有语句之间

C. 宏替换没有数据类型限制

D. 宏调用比函数调用耗费时间

【答案】C

【解析】A 项错误,用作宏名的标识符通常习惯用大写字母表示,宏名可以是任何合法的C 语言标识符;B 项错误,在语言中,宏定义可以根据需要写在任何位置:D 项错误,宏调用是在编译前由编译预处理程序完成的,不占运行的时间。

7. 若有以下程序

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

A.11,2

B.25,2

C.11,12

D.25,26

【答案】D

【解析】S (k+j)展开后是(3+2)*(3+2)=25,T (k+j)展开后是(3+2)*(3+2)/(3+2)*(3+2)+1=26。

8. 有以下程序:

己知字母A 的ASCII 码值为65, 程序运行后的输出结果是( )。

A.E , 68

B.D , 69

C.E , D

D. 输出无定值

【答案】A

第 4 页,共 15 页