2017年山西大学计算机与信息技术学院863高级语言程序设计基础[专业硕士]考研仿真模拟题
● 摘要
一、选择题
1. 有以下程序:
程序运行后的输出结果是( )。
A.1,3
B.2,3
C.1,4
D.1,2
【答案】A
【解析】其中p=p+l; 只改变指针p 的地址,与p 的内容无关,所以m 值没有改变,而
是改变该指针所指地址中的内容,所以n 变为3,m 不变。
2. 设函数中有整型变量n ,为保证其在未赋值的情况下初值为0, 应选择的存储类别是 ( )。
A.auto
B.register
C.static
D.auto 或 register
【答案】C
【解析】静态存储类型定义变量在未对其初始化时会对其初始化为默认值,其中int 型的默认初始化是0,其他选项的存储类型不能保证。
3. 以下选项中有语法错误的是 。
A.
B.
C.
D.
【答案】D
【解析】考查指针数组的概念,选项D 中str 为二维字符数组,不能直接把一个字符串赋值到二维数组的某一行中。
第 2 页,共 51 页
4. C 语言中char 类型数据占字节数为( )。
A.3
B.4
C.1
D.2
【答案】C
【解析】char 为关键字。字符变量在内存中占一个字节,可以存放ASCII 字符集中的任何字符。
5. 以下不能用于实型数据的运算符是( )。
A.%
B./
C.*
D.+
【答案】A
【解析】“%”符号两边必须是整数,因此答案为A 项。
6. 以下叙述中正确的是( )。
A. 在对指针进行加、减算术运算时,数字1表示1个存储单元的长度
B. 如果p 是指针变量,则*p表示变量p 的地址值
C. 如果p 是指针变量,则&p是不合法的表达式
D. 如果p 是指针变量,则*p+1和*(p+1)的效果是一样的
【答案】A
,而是【解析】A 项正确,在对指针进行加、减运算时,数字“1”不再代表十进制整数“1”
指1个存储单元长度。B 项错误,
7. 有以下程序:
程序运行后的输出结果是( )。
A.1, 4, 8
B.4, 4, 4
C.1, 2, 4
D.1, 1, 4
第 3 页,共 51 页 表示p 的值;C 项错误,表示变量p 的地址;D 项错误
,是先取p 的值,然后执行+1操作,是先对指针移动1个存储空间,然后取值。
【答案】B
【解析】sizeof ( )函数表示求该变量所占字节空间,同时一个指针变量占用4字节长度[在Win32系统中], 因此输出为4。
8. 有以下程序
在VC++6.0平台上编译运行,程序运行后的输出结果是( )。
A.4, 8
B.4, 4
C.2, 4
D.10, 6
【答案】A
【解析】C 语言中利用“sizeof ( )”函数判断数据类型长度,在vC6平台中,int 型数据占4个字节,double 型数据占8个字节。
9. 有以下程序:
若要使程序的运行结果为248, 应在下画线处填入的是( )。
A.
B.1248 C. D.
【答案】D
【解析】要输入248,是124的两倍,124为01111100,248为11111000,因此只要左移一位即可。
10.有以下程序:
第 4 页,共 51 页
相关内容
相关标签