一、选择题
1. 有如下程序:
程序运行后的输出结果是( )。 A.5 4 3 2 1 B.0 1 2 34 C.4 5 6 7 8 D.1 2 3 4 5 【答案】D
【解析】本题程序执行过程为:
在
时依次输出
即调用sum 函数后
依次输出1、2、3、4、5,D 项正确。
2. 表达式
:的值是( )。
A.4 B.0 C.3 D.5
【答案】C
【解析】
值为4,
值为1,相减值为3。
3. 以下程序中关于指针输入格式正确的是( )。
A. B.
C. D. 【答案】C
【解析】A 项错误,指针p 未初始化,且scanf 中p 的格式不对;B 项,指针p 未初始化;C 项正确,首先 将k 的地址赋值给p ,然后通过p 从键盘输入数据给k 赋值;D 项错误,给指针p 的赋值错误。
4. 设x 、y 、z 均为实型变量,
代数式
A.x/y+z B.x%y%z C.x/y/z D.x*z/y 【答案】C
【解析】X 、/的结合顺序是从左到右,所以x 先除以y , 再除以z 。
5.
以下不能正确表示代数式
【答案】D
【解析】优先级相同,所以采用从左到右结合的方式。D 项,应该改为:
6. 以下叙述中正确的是( )。
A. 在C 语言程序中,main 函数必须放在其他函数的最前面 B. 每个后缀为.C 的C 语言源程序都可以单独进行编译 C. 在C 语言程序中,只有main 函数才可以单独进行编译 D. 每个后缀为.C 的C 语言源程序都应该包含一个main 函数 【答案】B
main 是主函数的起始行,【解析】每一个可执行的C 程序都必须有一个且只能有一个主函数。后缀名为.C 的C 语言源程序都可以单独进行编译。
7. 以下选项中,合法的C 语言常量是( )。
【答案】A
【解析】整型常量:用不带小数点的数字表示。实型常量:用带小数点的数字表示。字符型常量:用带有单引号的一个字符表示。字符串常量:
用一对双引号括起来的一串字符。A
选项正确。
不合法,若改成
则为字符串常量,B
选项错误。
何类型常量,C 选项错误。2Kb 不合法,
若加上双引号
在C 语言中的正确写法是( )。
的C 语言表达是( )。
为实型常量,不合法,不是任
为字符串常量,故D 选项错误。
8. 有以下程序:
程序运行后的输出结果是( )。 A.8, 17 B.8, 16 C.8, 8 D.8, 20 【答案】A
【解析】static 变量编译时,将其分配在内存的静态存储区中,在整个程序运行期间都不释放这些存储单元, 即使退出函数,下次再进入该函数时,静态局部变量仍使用原来的存储单元,值 程序执行过程为:是上一次函数调用结束时的值。调用函数,再次调用函数
,
9. 下列叙述中正确的是( )。
B. 两个连续的单引号(“)是合法的字符常量 C. 可以对字符串进行关系运算
D. 空字符串不占用内存,其内存空间大小是0 【答案】A
【解析】A 项正确,两个连续的双引号:"" 也是一个字符串常量,称为“空串”。B 项错误,两个连续的单引号表示空字符,空字符它不占内存,故其不能称之为字符常量,常量是要有地址C 项错误,C 语言中不能对字符串直接使用关系运算符进行运算,的;但是可以使用比较函数strcmp 进行比较;D 项错误,
空串要占一个字节的存储空间来存放
10.有以下程序:
返回p=8,
返回
A. 两个连续的双引号(“”)是合法的字符串常量