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

2018年北京联合大学移动商务803软件基础之C程序设计考研仿真模拟五套题

  摘要

一、选择题

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

A.C 程序总是以main ( )作为程序执行的起始行

B.main ( )函数若不带参数,其后面的一对圆括号可省略

C. 函数体内的定义语句和可执行语句允许任意穿插出现

D.C 语言中的语句之间必须用分号作为分隔符

【答案】A

【解析】main ( )函数后面的括号告诉编译器这是一个函数,不可以省略,排除B 选项;在复合语句中,不仅可以有执行语句,还可以有定义语句,定义语句应该出现在执行语句的前面,故排除C 选项;C 语言中的某些语句可以不用分号,例如if 语句,宏定义,故D 选项错误;答案为A 选项。

2. 在C 语言中,以下选项中不能正确表示10X1000之值的是( )。

A.1.0E4.0

B.1.E4

C.10E3

D.1.0e4

【答案】A

【解析】实型常量用带小数点的数字表示,其值有两种表达形式,分别为十进制小数形式和指数形式。指数形式由十进制数加阶码标志“e ”或“E ”以及阶码(只能为整数,可以带符号)组成,而A 项中阶码4.0是浮点数,所以A 项不能正确表示10X1000之值,B 、C 、D 项都表示正确并且值为10000,故选择A 项。

3. 有以下程序:

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

A.=

B.XXX

C.=XX

D.X=

【答案】A

【解析】主函数首先为结构体定义两个变量分别使用字符串拷贝函数strcpy ( )为si 和s2的成员name 赋值,再将中的成员信息赋值给因此输出为项正确。

4. 有以下程序

程序的输出结果是( )。

A.8

B.5

C.7

D.6

【答案】D

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

5. 有以下程序:

t

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

A.0

B.1

C.2

D.3

【答案】C

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

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

0, 即if 判断为假,执行

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

6. 表达式:(int )((double )9/2-(9)%2)的值是( )。

A.0

B.3

C.4

D.5

【答案】B

【解析】运算符“/”,“%”的优先级高于“-”故先进行除法和求余运算,再进行减法运算。强制类型转换表达式的形式为:(类型名)(表达式)。“9/2”转换成double 类型,再转换成int 类型,结果为4, 减号后面的结果为1,故结果为3。

7. 有以下程序:

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

【答案】D

【解析】声明结构类型S 中有一个字符数组name , 在

input , 为input 中成员name 初始化

给name ,

由于后,调用函数函数的形参为结构体指针,因此函数中,定义了一个结构变量执行功能是把赋值函数改变形参指针data 指向的name 值的同时,也改变了实参input 的成员name 值;而形参value 为整型变量,是num 的一个副