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

2018年华东师范大学教育学部885教育技术与C程序设计考研核心题库

  摘要

一、选择题

1. 以下选项中,当x 为大于1的奇数时,值为0的表达式是( )。

A.x%2==l

B.x/2

D.x%2==0

【答案】D

【解析】x 为大于1的奇数,x%2的值为1,x%2==0为假。

2. 有以下程序:

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

A.1, 12,13,4,15,

B.10,9, 8,7,6,

C.1, 7, 13, 9, 15,

D.10, 12, 8, 4,6,

【答案】A

【解析】fun ( )函数功能是:对数组中,下标对3求余为0的元素减去5, 下标对3求余不为0的元素累加5, 所以执行完fun ( )函数后,数组c 中元素值为1,12, 13, 4, 15, 答案为A 选项。

3. 有以下说明语句:

指针s 所指字符串的长度是( )。

A.17

B.15

C.14

D. 说明语句不合法

【答案】C

【解析】

4. 有以下定义:

inta ;

longh ;

double x,y ;

则以下选项中正确的表达式是( )。

【答案】C

【解析】C 项正确,(int )(x-y )是把x-y 得到的浮点数强制转换成整型。A 项错误,a*y结果是浮点数,不能参与模运算;B 项错误,C 语言中没有<>运算符;D 项错误,x+y是右值,不能给其赋值。

5. 有以下程序:

程序:

程序的运行结果是( )。

A.6

B.5

C.4

开头的转义字符也是字符常量。用一对双引号括起来的多个字符为字符串。

为转义字符,所以字符串长度为14。

D.3

【答案】A

【解析】程序执行过程为:定义字符串指针p 并为其初始化为“01234”,调用函数fun (p ), 将指针传入函 数。while 循环找到字符串的束符地址,然后使这个指针指向结束符下一个单元,结束循环。返回字符串首地址 与结束符下一个地址之差,也即是字符串长度加1。输出地址差为6, 故A 选项正确。

6. 若有函数声明

A. 函数参数array ,ptr 都是指针变量

B. 函数参数array 不是指针变量,ptr 是指针变量

C. 调用函数时,实参数组的值将一一复制给array 数组

D. 调用函数时,array 是按值传送,ptr 是按地址传送

【答案】A

【解析】数组名为数组的首地址,也是指向数组的指针,所以array 和ptr 都是指针,A 项正确,B 项错误。调用函数时,将实参数组首地址赋给指针array , 而不是传递整个数组元素,C 项错误。调用函数时,ar-ray 与ptr 都是按地址传送的,D 项错误。

7. 有以下程序

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

A.lbc ,a23

B.abc ,123

C.123,abc

D.321,cba

【答案】A

si 应该指向的是数组的首地址,【解析】字符串是一个特殊的数组,按照数组的规则,即“abc ”

的第一个字符的地址。s2指向的是“123”的第一个字符的地址。调用swap 函数之后交换的是两个字符串的第一个字符W 和T 的内容,因此打印输出为A 。

以下叙述正确的是( )。