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

2016年西安邮电大学物联网与两化融合研究院高级语言程序设计之C语言程序设计复试笔试仿真模拟题

  摘要

一、选择题

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

A.

B.

C.

D. 答:D 【解析】x 为大于1的奇数,

2. 有以下程序

的值为1,

为假。

程序运行后,若从键盘输入(从第1列开始) 123<回车> 45678<回车>

则输出结果是( )。 A.1245 B.1256 C.1278 D.1267 答:A

【解析】scanf ( )是格式化输入函数;getehar ( )函数从键盘缓冲区读入下一个字符;putehar ( )输出一个字符;printf ( )函数是格式化输出函数。在题目中,程序执行到scanf ( )函数时,会暂停等待用户输入4个字符,按题意输入123〈回车〉后,字符1〜3被分别赋值到cl 〜c3中,而c4会得到一个换行符

然后执行第1个getchar ( )函

数,由于前面的scanf ( )函数读完了缓冲区中的所有字符,所以此时程序又会暂停等待用户输入,按题意输入45678〈回车〉后,缓冲区第一个字符4赋值c5, 第二个字符5赋值给c6。

3. 对于一个正常运行的C 程序,以下叙述中正确的是( )。

A. 程序的执行总是从程序的第一个函数开始,在main 函数结束 B. 程序的执行总是从main 函数开始

C. 程序的执行总是从main 函数开始,在程序的最后一个函数中结束 D. 程序的执行总是从程序的第一个函数开始,在程序的最后一个函数中结束 答:B

【解析】一个正常运行的C 程序总是从main 函数开始执行,最后返回到main 函数结束。

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

A.C 程序中的注释只能出现在程序的开始位置和语句的后面 B.C 程序书写格式严格,要求一行内只能写一个语句 C.C 程序书写格式自由,一个语句可以写在多行上 D. 用C 语言编写的程序只能放在一个程序文件中 答:C

【解析】C 程序的注释可以出现在C 程序的任何位置,注释符号:“//”或“/*•••*/”。C 程序中,一行内可写多个语句,每条语句用分号“;”结束。用C 语言编写的程序可以放在多个程序文件中,用#indude命令行实现文件包含功能。

5. 有以下程序:

程序的运行结果是( )。 A.abcdl234mnop5678 B.abcd234op8 C.a2o8 D.alm5 答:B

【解析】程序执行过程为:定义指针数组,长度为4, 并为其初始化为4个字符串。定义指向指针的指针变 量,并为其初始化为指针数组首地址。f0r 循环依次输出4个字符串,第i 个字符串从第i 个下标值处开始输出到 字符串结束,即第一个字符串输出abed , 第二个字符串输出234, 第三个字符串输出op ,第四个字符串输出8。程序的运行结果是abcd2340p8, 故B 项正确。

6. 有以下程序:

程序运行的结果是( )。 A.3 3 1 B.4 1 C.2 D.1 答:D

【解析】else 子句总是与最前面最近的不带else 的if 相结合,与书写格式无关,所以本题中的else 语句与第 二个if 语句配对,且if 和else 都在第一个if 的控制范围内。首先判断立,直接退出第一个if 语句,执行

输出结果为1。

7. 以下选项中,合法的C 语言实数是( )。

答:B

【解析】实型常量指数形式由十进制数加阶码标志符号)组

成。

为指数形式实数,B 项正确。

阶数不是整数,A 项错误。E13阶码标志前

缺少十进制数,C 项错误。缺少阶码,D 项错误。

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

A. 语句

B. 对于字符串常量D. 在语句答:B

【解析】B 项正确,C 编译程序将自动在字符串常量最后添加串的存储单元,因此数组str 的长度大于字符串的长度。

不成

的值是x 加之前的值,所以

或以及阶码(只能为整数,可以带

系统已自动在最后加入了

并不等价 字符,表示串结尾

C. 对于一维字符数组,不能使用字符串常量来赋初值

中,数组str 的大小等于字符串的长度

AC 两项错误,可以直接用

字符串常量给一维字符数组赋初值,习惯上均省略花括号;D 项错误,’\0’会占用一个不属于字符