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 的一个副