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

2017年天津大学算法基础与面向对象程序设计考研复试核心题库

  摘要

一、选择题

1. 有以下程序:

程序运行的结果是( )。

A.*7

B.*3*5

C.*5

D.*2*6

【答案】A

【解析】程序的功能时输出从5开始的第一个除以3的余数为1,除以5的余数为2的数。在do-while 循环中,总是先执行后判断,即至少会执行一次。在循环中,如果满足(i%3==l)&&(i%5==2), 那么输入i 的值,退出循环。

2. 以下函数按每行8个输出数组中的数据:

下画线处应填入的语句是( )。

A.

B.

C.

D.

【答案】C

【解析】每行输出8个数组数据的实现,即输出8个后就输出一个换行,所以,应该对8取

余,当结果为0时输出换行符,即用语句

3. 以下选项中不能作为C 语言合法常量的是( )。

【答案】A 可表达。

【解析】常量包括整型常量、实型常量、字符常量和字符串常量等。单引号表示字符常量,但不能包含字符串。表达字符串常量时需用双引号。

4. 以下选项中合法的标识符是( )。

【答案】C

【解析】C 语言中标识符的命名规则是:标识符由字母、数字和下画线组成,并且第一个字符必须是字母或下画线。C 语言的标识符是区分大小写字母的。

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

A.14.0

B.31.5

C.7.5

D. 程序有错无输出结果

【答案】D

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

6. 有以下程序:

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

A.

B.

C.

D.

【答案】D while 函数判断p 指针指向地址的内容是否和a 指针指向地址的内容相等,【解析】如果不是,

则移动指针p+1, 当p 指向*b字符串中的时,和首地址元素相等,退出while 语句后,p 再向

输出及剩余的字符串,D 项正确。 右移动a 字符串长度+1个单位地址,此时p 指向

7. 有以下函数

该函数的功能是( )。

A. 计算S 所指字符串占用内存字节的个数

B. 比较两个字符串的大小

C. 计算s 所指字符串的长度

D. 将S 所指字符串复制到字符串t 中

【答案】A

【解析】本题中,首先让t 指向形参s , 然后通过一个循环体为空的while 循环,将t 逐次后移,直到其所指内容为(字符串结束标志)。此时t 仍然会被曾1, 所以从循环出来,t 指向的是s

是8所指字符串占用内存字节的个数,A 所指字符串的结束标志的后一个字节。因此,返回的

项正确。而C 项所说的长度并不包括字 符串结束标志位,错误。

8 有如下.

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

A.2.0

B.1.7

C.2

D.1

【答案】D 程序

【解析】在类型转换过程中,如果较高类型转换成较低类型,直接忽略多余位数。在程序执行过程为:调用函数sub (3.8,2.1. , 3.8—2.1=1.7(double 类型),(int )强制转换将1.7转换成int 类型1, 然后返回1并输出,故D 选项正确。

二、设计题