2017年湖南师范大学教育科学学院877C程序设计与网络技术考研仿真模拟题
● 摘要
一、选择题
1. 有以下程序:
程序运行后的输出结果是( )。
A.1, 2
B.3, 4
C.5, 6
D.123, 456
【答案】C
【解析】程序中首先定义一个一维数组,然后将数组中的值写入到
5和6。
2. 若有定义语句:
以下叙述中错误的是( )。
A. 定义语句中的p 只能存放double 类型变量的地址
B. 定义语句中的*号是一个说明符
C. 定义语句中的*号是一个间址运算符
D. 定义语句中*p=&a把变量a 的地址作为初值赋给指针变量p
【答案】C
【解析】C 项错误,只有取指针变量的值时,星号*才是间址运算符,引用指针指向的存储单元。A 项正确, p 是double 类型的指针,只能存放double 类型的地址;B 项正确,定义指针变量时,星号是一个说明符,用来说明该变量是指针变量;D 项正确,
用来求出double 变量a 的地址赋给指针变量p ,而使p 指向a 。
第 2 页,共 37 页 中,然后再从中读出数组中的元素,每次读出2个元素,分别赋值给k 和n , 循环执行3次,故最终k 和n 的值为是求地址运算符,
3. 以下选项中不能作为C 语言合法常量的是( )。
【答案】A
【解析】常量包括整型常量、实型常量、字符常量和字符串常量等。单引号表示字符常量,但不能包含字符串。表达字符串常量时需用双引号。
4. 设有定义_以下能给数组x 下标为6的元素读入数据的正确语句是( ) 。
A.
B.
C.
D.
【答案】C
A 项,【解析】 元素类型为double , 所以输入B 项,,有误:虽然x+6为指针,但*(x+6)
并非地址;D 项,使用p[6]表7K 的不是地址,方式不正确。
5. 有以下程序:
程序运行后的输出结果是( )。
A.6
B.1
C.0
D.3
【答案】D 【解析】按位与运算符。a=3=118,b=3=118,按位与结果为11B=3,D 项正确。
6. 以下叙述错误的是( )。
A. 未经赋值的全局变量值不确定
B. 未经赋值的auto 变量值不确定
C. 未经赋值的register 变量值不确定
D. 未经赋值的静态局部变量值为0
【答案】A
【解析】C 语言中,系统将未经赋初值的全局变量默认为0, 答案为A 选项。
第 3 页,共 37 页
7. 有以下程序:
程序运行后的输出结果是( )。
A.6
B.10
C.11
D.15
【答案】C
for 循环计算a 元素中某5个元素的和, 【解析】数组b 用来存储需要求和的a 中元素的下标。
8. 若有定义
则执行表达式后a 、b 、c 的值依次为( )。
【答案】C
【解析】根据优先级规则,II 两边都是括号,则从左至右执行括号中的表达式,将的值赋值给a ,即a 为5, 不为0, 则右边的括号不需要再执行。
9. 以下程序中函数f 的功能是:当flag 为1时,进行由小到大排序;当flag 为0时,进行由大到小排序。
程序运行后的输出结果是( )。
A.1,2,3,4,5,6,7, 8, 9,10,
B.3, 4, 5, 6, 7, 2, 1, 8, 9, 10,
第 4 页,共 37 页