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

2018年北京联合大学移动商务803软件基础之C程序设计考研核心题库

  摘要

一、选择题

1. 有以下程序:

程序运行的结果是( )。

【答案】A

【解析】在C 语言中,函数参数传递的作用是“传值”,形参和实参是两个没有关系的变量。函数fun 交换了参数值,但只是交换了形参的值,结果并不会传递给实参。所以数组c 没有发生变化,原样输出。

2. 以下叙述中错误的是( )。

A. —个C 程序可以包含多个不同名的函数 B. —个C 程序只能有一个主函数

C.C 程序在书写时,有严格的缩进要求,否则不能编译通过 D.C 程序的主函数必须用main 作为函数名 【答案】C

【解析】一个C 程序有且只有一个主函数main 。一个C 程序可以包含多个不同名字的子函数。C 程序在书写时没有严格的缩进要求。

3. 以下选项中,合法的C 语言常量是( )。

A.1.234

D.2Kb 【答案】A

【解析】整型常量:用不带小数点的数字表示。实型常量:用带小数点的数字表示。字符型常量:用带有单引号的一个字符表示。字符串常量:用一对双引号括起来的一串字符。1.234为实型常量,A 选项正确。选项错误。

4. 若有以下定义和语句:

则值为6的表达式是(提示:

【答案】D

的优先级高于

( )。

不合法,若改成

则为字符串常量,B 选项错误。

不合

法,不是任何类型常量,C 选项错误。2Kb 不合法,若加上双引号“2Kb ”为字符串常量,故D

【解析】定义指向结构体变量的指针P ,并将结构体数组首地址赋给加一指向数组第二个元素,其成员ri=6, D 项正确员5。

5. 有以下程序:

程序运行的结果是( )。 A.4 B.34 C.31 D.32

指针自

指向结构体数组第一个元素,其成

是后缀,先取值,所以表达

指向结构体数组第一个元素,其成员n=5,由于

式为5, 之后再自加一为结构体数组第一个元素,其成员n=5, 先取值,表达式为

【答案】C

【解析】函数fun 的形参有三个,第一个是指针,它指向长度为4的int 数组;后两项都是int 型变量;返回值为int 类型。fun 函数调用发生在a 的第i 行,

指针s 初始时指向a 的第一行,

指向

作用相同,都表示a 中第i 行第k 列元素。函数fun 的作用是找出数组

s 中,第k 列、第疔中的最大值; 即找出二维数组a 的第0列中最大值,返回31。

6. C 语言中的标识符分为关键字、预定义标识符和用户标识符,以下叙述中正确的是 ( )。

A. 预定义标识符(如库函数中的函数名)可用作用户标识符,但失去原有含义 B. 用户标识符可以由字母和数字任意顺序组成 C. 在标识符中大写字母和小写字母被认为是相同的字符 D. 关键字可用作用户标识符,但失去原有含义 【答案】A

【解析】C 语言允许把预定义标识符重新定义另作他用,但这将失去预先定义的原意。B 项,标识符的第一个字符必须为字母或下划线;C 项,标识符中,大写字母和小写字母被认为是两个不同的字符;D 项,关键字不能另作他用。

7. 下面选项中关于位运算的叙述正确的是( )。

A. 位运算符都需要两个操作数

B. 位运算的对象只能是整型或字符型数据 C. 左移运算的结果总是原操作数据2倍 D. 右移fe 算时,尚位总是补0 【答案】B

【解析】B 项正确,C 语言中,位运算的对象只能是整型或字符型数据,不能是其他类型的数据。A 项错误,位运算符中取反操作符只需要一个操作符;C 项错误,左移时,若左端移出的部分不包含有效二进制数1, 则每左移一位,相当于移位对象乘以2, 如果端移出的部分包含有效二进制数1,结论不成立;D 项错误,右移运算时,对于无符号整数和正整数,高位补0; 对于负整数,高位补1。

8. 若有定义语句

A.char B.int C.double D.float 【答案】c

则表达式值的类型是( )。

【解析】在多目运算符相关联的运算数中,如果类型不一致,系统将自动进行类型转换,使两边的类型达到一直后,再进行运算,转换的规则是由“低到高”。

是字符型,a 是整型,b

是double 型。字符型数据占1个字节,整型占2个字节,double 型占8个字节,故三者相加后为