一、选择题
1. 有以下程序
}
程序的输出结果是( )。
A.8
B.5
C.7
D.6
答:D
【解析】C 语言中的标识符区分大小写,pad 只实现了一次自增操作,结果输出6。
2. 已知字母A 的ASCII 码值为65,若变量kk 为char 型,以下不能正确判断出kk 中的值为大写字母的表达式是( )
A.
B.
C.
D.
答:B
B 项,【解析】表达式等价为无法判断kk 中的值是否为大写字母,逻辑错误。
大写字母的ASCII 码值是65〜90, 小写字母的ASCII 码值是97〜122,isalpha (kk )是判断kk 是否是字母的函数,是字母并且字母ASCII 值小于91的一定为大写字母。
3. 如有表达式则其中与w 等价的表达式是( )。
A.w==l
B.w==0
c.
D.
答:D
【解析】在C 语言中,没有专门的“逻辑值”,而是用非0表示“真”,用0表示“假”。此条件表达式的形式为?:, 当表达式1的值为真,即为非零时,
第 2 页,共 34 页
求出表达式2的值作为结果;当表达式1的值为假,求出表达式3的值作为结果。可见表达式W
,不为1时返回(++y)等价于W!=0。A 项,w==l表示当w 的结果为1是返回(-X )。
4. 在C 语言中,以下选项中不能正确表示10X1000之值的是( )。
答:A
【解析】实型常量用带小数点的数字表示,其值有两种表达形式,分别为十进制小数形式和指数形式。指数形式由十进制数加阶码标志成,而A 项中阶码
并且值为10000,故选择A 项。
5. 有以下程序:
程序运行的结果是( )。
A.40
B.16
C.8
D.4
答:C
【解析】左移一位相当于原数乘以二,右移相当于除以二,结果为4X2=8。没有超过char 的类型表示范围,所以输出8。C 语言中字符型变量可以用在任何整型变量可以使用的地方。
6. 下列叙述中错误的是( )。
A.C 程序可以由一个或多个函数组成
B.C 程序可以由多个程序文件组成
C. 一个C 语言程序只能实现一种算法
D. —个C 函数可以单独作为一个C 程序文件存在
答:C
【解析】一个C 语言程序可以实现任意多种算法,并没有数量限制
7. 有以下程序
第 3 页,共 34 页 或以及阶码(只能为整数,可以带符号)组是浮点数,所以A 项不能正确表示10X1000之值,B 、C 、D 项都表示正确
程序运行后的输出结果是( )。
A.20
B.16
C.12
D.25
答:B 【解析】展开后是
8. 以下选项中不能作为C 语言合法常量的是( )。
答:A
【解析】常量包括整型常量、实型常量、字符常量和字符串常量等。单引号表示字符常量,但不能包含字符串。表达字符串常量时需用双引号。
9. 在一个C 源程序文件中所定义的全局变量,其作用域为( )。
A. 所在文件的全部范围
B. 所在程序的全部范围
C. 所在函数的全部范围
D. 由具体定义位置和extern 说明来决定范围
答:D
【解析】全局变量是在函数外部任意位置上定义的变量,它的作用域是从变量定义的位置开始,到整个源文件结束止。
10.有以下程序:
程序运行后的输出结果是( )。
A.5, 11
B.7, 1
C.7, 11
第 4 页,共 34 页