2017年贵州大学机械工程学院846C考研强化模拟题
● 摘要
一、选择题
1. 有以下程序:
程序运行后的输出结果是( )。
A.1, 3
B.0, 2
C.0, 3
D.1, 2
【答案】D
【解析】在C 语言中,没有专门的“逻辑值”,而是用非0表示“真”,用0表示“假”。第一次循环之后a=_l, b=l,第二次循环之后,a=0, b=2, 第三次循环时,由于a=0, 此时产生短路现象,即系统跳过b++不再对它进行求值,这时,a 自增1,由0变为1, 而b 的值不变,仍为2,故结果为1,2。
2. 以下选项中,合法的一组C 语言数值常量是( )。
A.12. 0Xa23 4.5e0
B.028 .5e_3 -0xf
C..177 4el.5 Oabc
D.0x8A 10.000 3.e5
【答案】A
【解析】A 项,C 语言中小数必须要有小数点,但是小数部分可以省略,12. 是合法的常量;C 语言中十六进制数以0X 或Ox 开头,0Xa23是指十六进制数a23; 在C 语言中,“e ”或“E ”后跟一个整数来表示以10为底的幂数,
只能在(K7之间;D 项,10,000中不能有逗号。
3. 有以下程序
:
程序运行后的结果是( )。
A.1, 2, 4
B.1, 3, 6
C.3, 10, 14
第 2 页,共 42 页 B 项,028表示的是八进制,以0开头,0后面的数字只能在0~7之间。C 项,4el.5,e 后面只能跟整数,Oabc 表示八进制,0后面的数字
D.3, 6, 10
【答案】C
【解析】case 分支后面如果没有break , 那么就会顺序执行下面的case , 直到遇到break 跳出或者到switch 语句块结尾。所以第一次循环后s 的值为3, 打印输出。第二次S 的值为即
为10, 打印输出。第三次没有匹配成功直接执行default 语句,s=s+4, 所以s 的值为14, 打印输出。
4. 以下不是C 语言字符型或字符串常量的是( ) A. B. C. D.
【答案】C
【解析】字符常量是用单引号把一个字符括起来,转义字符常量以一个反斜线开头后跟一个特定的字符或者对应的ASCII 值表示。字符串常量是由双引号括起来的一串字符。C 项既不是字符型常量,也不是字符串常量。AB 两项,均是字符串常量;D 项,是字符型常量。
5. 若有定义:inta ,b :
通过语句
能把整数3赋给变量a , 5赋给变量b 的输入数据是( )。
A.3, 5
B.3;5
C.35
D.35
【答案】B
scanf 函数中如果使用通配符, 【解析】则在输入数据时也必须使用相同的通配符与它相匹配。
6. 设函数中有整型变量n ,为保证其在未赋值的情况下初值为0, 应选择的存储类别是 ( )。
A.auto
B.register
C.static
D.auto 或 register
【答案】C
【解析】静态存储类型定义变量在未对其初始化时会对其初始化为默认值,其中int 型的默认初始化是0,其他选项的存储类型不能保证。
7. 有以下程序
第 3 页,共 42 页
程序运行后的输出结果是( )。
A.3
B.1
C.2
D.4
【答案】B
【解析】函数' 有两个形参,第一个形参是传值,第二个形参是传引用,在函数fun 内部改变s 的值,则在函数fun 外部也会发生相应改变。f 是函数内部的局部变量,递归调用时,把局部变量f 以指 针的形式传入,在下一层函数中会对f 进行修改,当下一层函数返回后,再把当前局部变量f 赋值给形参s 。函 数调用过程如下表所示。
8. 以下选项中关于C 语言常量的叙述错误的是( )。
A. 所谓常量,是指在程序运行过程中,其值不能被改变的量
B. 常量分为整型常量、实型常量、字符常量和字符串常量
C. 常量可分为数值型和非数值型常量
D. 经常被使用的变量可以定义为常量
【答案】D
【解析】常量是指在程序运行过程中其值不能被改变的量。在C 语言中,有整型常量、实型常量、字符常量和字符串常量等类型。整型常量和实型常量又称数值型常量,它们有正值和负值的区分。所谓变量是指在程序运行过程中其值可以改变的量。C 语言规定,程序中所有变量都必须先定义后使用。变量和常量有明显的区分。
第 4 页,共 42 页
相关内容
相关标签