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

2018年南京师范大学文院803程序设计语言之C程序设计考研强化五套模拟题

  摘要

一、选择题

1. 有以下函数:

函数的功能是( )。

A. 查找x 和y 所指字符串中是否有

B.x 、y 所指字符串最前面连续相同的字符个数

C. 将y 所指字符串赋值给x 所指存储空间

D. 统计x 和y 所指字符串中相同的字符个数

【答案】B

【解析】由程序可知,定义语句中的x 和y 是用户标识符,在每个变量前的是一个说明符,循环执行只有在x 和y 所指字符串中最前面连续相同,并统计其个数,一旦不满足,则终止循环而返回相同个数II 。

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

A. 函数的形参类型不能是指针类型

B. 函数的类型不能是指针类型

C. 设有指针变量为

【答案】C

【解析】C 项正确,一般情况下,double 类型的变量长度为8个字节,对指针进行加、减运算时,数字“1”指1个存储单元长度。A 项错误,函数的形参可以是数值类型,也可以是指针类型;B 项错误,C 语言中有指向函数的指针,称为函数指针;D 项错误,int 类型的指针只能指向int ,不能指向double ,指针变量不能混用。

3. 有以下程序:

第 2 页,共 42 页 则p+1将指针p 移动8个字节 D. 基类型不同的指针变量可以相互混用

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

A.6 1

B.7 0

C.6 3

D.7 1

【答案】B 【解析】这时分配的内存就是7个字节,包括结束字符

第一个遇到结束字符

求的是字符串的个数,为0。

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

造成错误的原因是( )。

A. 定义语句

B. 赋值语句

C. 语句

D. 赋值语句

【答案】D

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

将MIN 值与

值进行比较,所以无论

先执

5. 有以下程序:

第 3 页,共 42 页

无论之后如为空

,何赋值,都不会改变,sizeof 是计算字符串所占存储空间的大小,因

此结束赋值,这时中max 未赋初值 中,不应给max 赋MIN 值 中判断条件设置错误 放错了位置 与max 的值比较。每次都是始终执行。的值是什么,都不会影响if 的判断语句,所以函数返回的是数组中最后一个元素的值。本题的错误在于的位置,for 循环之前应

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

A.13.700000

B.14.000000

C.15.400000

D.14.900000

【答案】A

sqrt 为平方根计算函数,【解析】

6. C 语言中,最基本的数据类型包括( )。‘

A. 整型、实型、逻辑型

B. 整型、字符型、数组

C. 整型、实型、字符型

D. 整型、实型、结构体

【答案】C

【解析】C 语言中,最基本的数据类型包括整型、实型、字符型,答案为C 选项。

7. 有以下程序

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

A.0, 2

B.0, 3

C.1, 3

D.1, 2

【答案】D 【解析】

话,则是与逻辑操作符,两侧都为真,结果为真,否则结果为假;如果前面为0的. 后面的不予判定,这是逻辑操作符的短路特性。

的执行顺序是,先判定a 是否等于0, 如果等于0, 执行a++,跳出循环(短

路性);如果a 不等于0, 执行a++,然后执行++b,再判定b 是否等于0, 根据判定结果决定是否进行下一次循环。

第一次循环,a 等于-2, 执行a++; b 等于0, 执行++b,得到a 等于-1,b 等于1;

第二次循环,a 等于-1,执行a++; b 等于1, 执行++b, 得到a 等于0, b 等于2;

第 4 页,共 42 页

格式输出后为13.700000。