2017年云南大学软件学院904计算机程序设计[专业硕士]之C程序设计考研导师圈点必考题汇编
● 摘要
一、选择题
1. 以下叙述中错误的是( )。
A.C 语言中的每条可执行语句和非执行语句最终都将被转换成二进制的机器指令 B.C 程序经过编译、链接步骤之后才能形成一个真正可执行的二进制机器指令文件 C. 用C 语言编写的程序称为源程序,它以D.C 语言源程序经编译后生成后缀为【答案】A
【解析】A 项错误,注释语句不会被翻译成二进制的机器指令。C 源程序经过C 编译程序编,然后由“连接程序”(Link )的软件,译之后生成后缀 为.OBJ 的二进制文件(称为目标文件)
把OBJ 文件与各种库函数连接 起来生成一个后缀为.EXE 的可执行文件。
2. 以下叙述中错误的是( )。
A. 用户定义的函数中可以没有return 语句
B. 用户定义的函数中可以有多个return 语句,以便可以调用一次返回多个函数值 C. 用户定义的函数中若没有return 语句,则应当定义函数为void 类型 D. 函数的return 语句中可以没有表达式 【答案】B
【解析】用户定义的函数有两种:①void 函数,可以没有return 语句,如果有return 语句,也不可以返回任何表达式;②指定返回类型函数,至少有一个返回语句。在一个函数内,可以根据需要在多处出现return 语句,但无论有多少个return 语句,return 语句只会被执行一次然后退出函数,并且只能返回一个函数值。
3. 以下可以将任意一个两位整数n 的个位数与十位数对换的表达式为( )。
【答案】A
【解析】A 项
得到十位数字,
得到个位数字,将个位数乘以10加上十位数字
,
实现两位整数个位数与十位
是十位
实现将任意一个两位整数个位数与十位数对换,A 项正确。B 项
得到个位数字,
数之和,B 项错误。C 项
为十位数字,
不能实现题目中要求,C 项错误。D 项
第 2 页,共 45 页
代码形式存放在一个文本文件中
的目标程序
数字,为原两位整数减去十位数字,不是个位数字,D 项错误。
4. 设有定义:
则以下赋值语句中正确的是( )。 A.s[0]=m[l]; B.s=m; C.s.l3=m.n;
D.s[2].x=m[2].x; 【答案】A
【解析】定义了结构体类型数组s ,长度为2,结构体类型数组m ,长度为2,并进行了初始化。同类型的结构体可以直接用变量名实现赋值,A 选项正确。数组名为数组首地址,地址常量之间不可以相互赋值,B 选项错误。C 选项引用结构体成员错误,数组名为地址常量不是结构体变量,不能引用成员。D 选项数组越界,不存在s[2]与m[2]。
5. 以下不能用于实型数据的运算符是( )。
A.% B./ C.* D.+
【答案】A
【解析】“%”符号两边必须是整数,因此答案为A 项。
6. 若有定义语句则的值是( )。
A.7 B.8 C.9 D.10
【答案】A
【解析】在C 语言中,字符串可以存放数字字符串,但规定以字符
作为字符串结束标识。
所以字符数组的长度并不是字符串的长度,系统字符串"1234567\0\0"与"1234567" 等效,所以字符串长度是有效字符数组的长度,即为7。
7. 以下不能将s 所指字符串正确复制到t 所指存储空间的是( )。
A. B. C. D. 【答案】C
【解析】C 项,
能够实现将s 中除了字符串结束标志的字符
以外的所有字符
复制到t 中,字符串t 是不完整的。
第 3 页,共 45 页
8. 若有以下程序段
不能正确引用字符串的选项是( )。 A. B. C. D. 【答案】D
【解析】strp 是char *类型、长度为4的数组,4个指针分别指向字符串数组str 中的4个字符串。D 项错误,step 是char*的数组,不能引用字符串。A 项正确,引用strp 数组中第一个指针指向的内容,gpaa”; B 项正确,str 是字符串数组,引用数组中的”aa”; C 项正确,于
访问strp 中第四个指针指向的内容,即 ”d”。
9. 有以下程序:
程序运行的结果是( )。
【答案】D
【解析】对结构体变量赋初值时,相同类型的变量可以通过等号直接赋值,它会将每个成员在结构体中的顺一一对应赋初值,可知
输出函数中要求输出的浮点数有效位为2位。
10.有以下程序(字母A 的ASCII 代码为65):
程序运行后的输出结果是( )。
A. 输出格式不合法,输出出错信息 B.A , Y
第 4 页,共 45 页
等价