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

2016年重庆邮电大学自动化学院J03程序设计(C)(同等学力加试)复试笔试仿真模拟题

  摘要

一、选择题

1. 有以下程序:

程序运行后的输出结果是( )。 A.1 B.123 C.23 D.3 答:A 【解析】和

是转义字符,表示空字符,故

成立,输出1;

是字符常量和0不等,

,不执行if 后面的语句,所以最后输出只有1,故答案为A 选项。都是字符常量,因为

2. 在C 语言中,只有在使用时才占用内存单元的变量,其存储类型是( )。

A.auto 和 register B.extern 和 register C.auto 和 static D.static 和 register 答:A

【解析】C 语言中,动态存储区域中存放的变量在使用时才分配内存空间,函数调用时返回auto 变量的储存处单元是分配在内存的动态的地址和自动类 局部变量等存放在动态存储区域中。

存储区中,每当进入函数体时自 动分配存储单元。register 变量也是自动类变量, 。static 说明的变extern 量为静态变量,静态变量在内存的静态存储中 占据着永久的存储单元,直至程序运行结束。说明的变量为外部变量,属于全局变量,全局变量在整个程 序运行期间都占用内存空间。

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

A. 不能用字符串常量对字符数组名进行整体赋值操作

B. 字符串常量“Hello”会被隐含处理成一个无名字符型数组,它有5个元素

C. D. 答:A

在语法上是合法的,运行也是安全的

效果是一样的

【解析】A 项正确,不可以用赋值语句给字符数组整体赋一串字符,但是可以直接用字符串B 项错误,常量给一维字符 数组赋初始值。编译器会在字符串常量最后添加最近的’\0’作为其结束标志,运行时不安全;D 项错误,不能给数组str 赋值。

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

A. 可以用关系运算符比较字符串的大小 B. 空字符串不占用内存,其内存空间大小是0 C. 两个连续的单引号是合法的字符常量 D. 两个连续的双引号是合法的字符串常量 答:D

【解析】A 项错误,关系运算符不能比较字符串大小,可以用函数库中的字符串比较函数来比较字符串的大小;B 项错误,空字符串占用一个字节的内存;C 项错误,字符常量是用单引号把一个字符括起来;D 项正确,两个连续的双引号是一个字符串常量,称为空串。

5. 有如下程序:

程序运行后的输出结果是( )。 A.X B.XYZ C.YZ D.Y 答:A 【解析】字符不成立,不输出;判断

6. 有以下程序:

它共有6个元素;

C 项错误,在语法上是合法的,但是没有字符串尾标识符,系统将要在其后的内存中找一个距它

的ASCII 码值分别为0、48、97、98。putchar 函数是

不成立,不输出。故A 项正确。

向标准输出设备上输出一个字符。程序执行过程为:判断‘\0’==0成立,输出X ; 判断‘0’==0

t

程序运行后的输出结果是( )。 A.0 B.1 C.2 D.3 答:C 【解析】

运算,当以前缀形式出现时,则先进行加一或减一操作,再取值,当以

结果为

然后输出b 的值。即b 为2。

则其中与w 等价的表达式是( )。

后缀形式出现时,则先取值,再进行加一或减一操作。a 初始定义为1,b 为0, 先执行0, 即if 判断为假,执行

7. 如有表达式

A.w==l B.w==0

c.

D. 答:D

【解析】在C 语言中,没有专门的“逻辑值”,而是用非0表示“真”,用0表示“假”。此条件表达式的形式为<表达式1>?<表达式2>:<表达式3>, 当表达式1的值为真,即为非零时,求出表达式2的值作为结果;当表达式1的值为假,求出表达式3的值作为结果。可见表达式W ,不为1时返回(++y)等价于W!=0。A 项,w==l表示当w 的结果为1是返回(-X )。

8. 设有宏定义

:且变量m 已正确定义并赋值,则宏调用:IsDIV

A. 判断m 是否能被5或7整除 B. 判断m 是否能被5和7整除 C. 判断m 被5或7整除后是否余1 D. 判断m 被5和7整除后是否都余1 答:D 【解析】

要求一个选择表达式,当否则返回

都为真,即

返回1,这是

为真时返回1,否则返回0,即当k 除以n 的余数为1是返回1,

是逻辑表达式,只有当IsDIV (m ,5)和IsDIV (m ,为真时所要表达的是( )。

7)同时为真时,整个表达式才为真。

9. 有以下程序(其中k 的初值为八进制数):