2017年中南民族大学C程序设计复试仿真模拟三套题
● 摘要
一、选择题
1. 下列定义数组的语句中,正确的是( )。
A )
【答案】D
【解析】一维数组定义格式是:类型名数组名[整型常量表达式]。D 项正确,它使用预处理宏定义,N 可以看做是常量。A 项错误,没有指明数组的长度;B 项错误,数组长度不能由变量指明;C 项错误,数组长度应该整型常量表达式。
2. C 语言程序中,运算对象必须是整型数的运算符是( )。
A.&&
B./
C.%
D.*
【答案】C
【解析】模运算中不能出现浮点数,运算对象只能是整数。
3. 以下选项中与语句功能不同的switch 语句是( )。
B )
C ) D )
【答案】B
【解析】在switch 语句的执行过程中,执行完case 后面的语句后,如果遇到break 语句就停止,否则将继续执行下一个case 中的语句,直到遇到break 语句。B 项,当a==1是
a=b, 刚好和题干要求相反。
4. 有如下程序:
第 2 页,共 15 页 时
程序运行后的输出结果是( )。
A.3,1,2,0, 0,
B.3,5, 10, 4,0,
C.3,3,3,3,0,
D.3,2,2, 2,0,
【答案】A
【解析】在对数组进行初始化时,如果在说明数组时给出了长度,但没有给所有的元素赋予初始值,而只依次给前面的几个数组元素赋予初值,那么C 语言将自动对余下的元素赋初值0, 则airay={3, 5, 10, 4, 0}。按位与运算,当参加运算的两个二迸制数的对应位都为1, 则该位的
For 结果为1,否则为0。将数组元素与3=11B按位与,即
循环输出与运算结果:3,1,2,0,0,故A 选项正确
5. 有以下程序:
程序的运行结果是( )。
A.5
B.2
C.6
D.3
【答案】A
【解析】malloc (size )函数的返回值是新分配的存储区的首地址,将该地址赋值给p 指针,然后取p 指针 的地址,调用fun 函数。fun 函数中对指向指针的指针s 指向的内存单元赋值,其中表示二维数组x 的第二行的行地址,
与等价,A 项正确。 表示二维数组X 的第二行第二列的地址,所以赋值给为p ,所以
代表fun 函数的功能是将二维数组X 的第二行第二列的值,即
6. 有以下程序:
第 3 页,共 15 页
程序运行后的输出结果是( )。
A.123
B.ABC
C.abc
D.012
【答案】A
【解析】当满足输出即字符在ASCII 码相减进行输出,表示输出十进制整数。循环开始以此类推答案为A 选项。
7. 若k 是int 类型变量,且有以下for 语句:
下面关于语句执行情况的叙述中正确的是( )。
A. 循环体执行一次
B. 循环体执行两次
C. 循环体一次也不执行
D. 构成无限循环
【答案】A
【解析】本题中k 初始值为-1,执行一次循环体,执行完后k 值为0, 不满足k<0条件,退出循环,所以执行了一次。
8. 设有如下程序段:
语句后,以下叙述正确的是( )。
表示 则执行A. 可以用B.s 数组中元素的个数和p 所指字符串长度相等
C.s 和p 都是指针变量
D. 数组s 中的内容和指针变量p 中的内容相等
【答案】A
【解析】A 项正确,后,指针p 指向s 的首地址,B 项错误,p 是字符串指针所指向的字符串为“Beijing”,其长度为7, 而数组a 中元素的个数为20; C项错误,s 为字符数组名;D 项,s 中的空间大于 p 所指空间。
第 4 页,共 15 页