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

2018年山西大学计算机与信息技术院834程序设计之C程序设计考研基础五套测试题

  摘要

一、选择题

1. 有以下程序:

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

【答案】D

【解析】函数f 对结构体进行修改,并返回新的结构体;main 函数先定义了一个结构体变量a 并为它赋初值,然后调用函数f 修改结构体变量的成员值,最后输出新的结构体变量成员。

2. 关于“while (条件表达式)循环体”,以下叙述正确的是( )。

A. 循环体的执行次数总是比条件表达式的执行次数多一次

B. 条件表达式的执行次数总是比循环体的执行次数多一次

C. 条件表达式的执行次数与循环体的执行次数一样

D. 条件表达式的执行次数与循环体的执行次数无关

【答案】D

【解析】一般来说,while 循环是先判断条件,满足条件后执行循环体,执行完后接着判断条件,执行,直到最后一次判断条件后不成立,跳出循环,所以最后一次执行了条件表达式,但是没有执行循环体。

但是while 循环体中有break 时,条件表达式的执行次数与循环体的执行次数一样。比如:

应该说条件表达式的执行次数不会比循环体的执行次数多。

3. 有以下程序

程序的输出结果是( )。

A.8

B.5

C.7

D.6

【答案】D

【解析】C 语言中的标识符区分大小写,pad 只实现了一次自增操作,结果输出6。

4. 有以下程序:

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

A.1, 2, 1, 2

B.1, 2. 2, 1

C.2, 1, 2, 1

D.2, 1. 1, 2

【答案】B

【解析】本题定义了两个整型变量,然后用两个指针分别指向这两个整型变量,接着对指针进行交换,那么原来指向第一个整数的指针将指向第二个整数,原来指向第二个整数的指针将指向第一个整数。

5. 若有以下程序

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

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。

6. 有以下程序:

程序的运行结果是( )。

A.11, 10

B.10, 10

C.10,11

D.11, 11

【答案】A

【解析】当i=l0时循环继续执行,i 值赋值给变量a 。赋值完成后执行i=i+l, 此时i=ll, 判定是

否满足条件不满足条件,结束循环。循环结束时,printf ( )是从右到左结合的,输出i , a 的值为11,10。

7. 有如下程序: