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

2017年东华大学F1502C语言与数据结构算法上机测试之C语言程序设计考研复试核心题库

  摘要

一、选择题

1. 以下选项中,能用作用户标识符的是( )。

【答案】C

【解析】标识符是由若干个字符组成的字符序列,用来命名程序的一些实体。C 语言定义标识符应遵循以下六种规则:①标识符由字母、数字或下划线组成;②第一个字符必须是字母或下划线;③标识符最多由274个字 符组成;④在标识符中严格区分大小写字母;⑥关键字不能作为自定义的标识符在程序中使用。

2. 表达式3.6-5/2+1.2+5%2的值是( )。

A.4.8 B.3.8 C.3.3 D.4.3

【答案】B

【解析】3.6--5/2+1.2+5%2=3.6-2+1.2+l=3.8;需要注意的是,两个整数相除仍然得到整数,小数部分被省略,5/2=2。

3. 有以下程序:

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

【答案】C

【解析】本题将两个字符串常量赋值给一个二维字符数组,用字符常量为字符数组赋值需要在最后加上一个休止符

表示字符串结束,所以数组长度为字符的个数加1, 而且数组的下标是

从0开始计数,所以P 指向第二个字符串。

4. 关于C 语言中数的表示,以下叙述中正确的是( )。

A. 只有整型数在允许范围内能精确无误地表示,实型数会有误差 B. 只要在允许范围内整型和实型都能精确表示

C. 只有实型数在允许范围内能精确无误地表示,整型数会有误差 D. 只有八进制表示的数才不会有误差 【答案】A

【解析】实型数据在内存中存储的二进制位数是有限的,而一个十进制实数转化为二进制实数时,其有效数字位数有可能会超过尾数的存储长度,从而导致有效数字丢失而产生误差。在整形数允许范围之内,二进制可以 表示任意一个整数。

5. 有以下程序

程序的运行结果是( )。 A.accbbxxyy ,bbxxyy B.acc ,bbxxyy C.accxxyy ,bbxxyy D.accxyy ,bbxxyy

【答案】A

【解析】函数fun 的功能是将第二个字符串链接到第一个字符串的末尾,第二个字符串不变。

6. 有以下程序:

程序的运行结果是( )。 A.5

B.2 C.6 D.3

【答案】A

【解析】malloc (size )函数的返回值是新分配的存储区的首地址,将该地址赋值给p 指针,然后取p 指针 的地址,调用fun 函数。fun 函数中对指向指针的指针s 指向的内存单元赋值,其中

表示二维数组x 的第二行的行地址,与

等价,A 项正确。

表示二维数组X 的第二行第二列的地址,所以

赋值给

为p ,所以

代表

fun 函数的功能是将二维数组X 的第二行第二列的值,即

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

A. 基类型不同的指针可以直接相互赋值 B. 函数可以通过指针形参向所指单元传回数据 C. 字符型指针可以指向一个字符串

D. —般情况下,指针的运用可使程序代码效率更高 【答案】A

【解析】把一个指针变量的值赋给另一个指针变量,但一定要确保这两个指针变量的基类型是相同的。

8. 有以下程序:

程序运行后的输出结果是( )。 A.8, 17 B.8, 16 C.8, 8 D.8, 20 【答案】A

【解析】static 变量编译时,将其分配在内存的静态存储区中,在整个程序运行期间都不释放