内容正文:
《编程语言基础——C语言》高教社(第五版)
学业水平考试 复习卷(二)
考试时间:100分钟 满分:100分
姓名 班级 学号 1
1、 单项选择题(本题15小题,每小题2分,满分30分)
1. C语言程序从( )开始执行.
A.程序中第一条可执行语句
B.程序中第一个函数
C.程序中的main函数
D.包含文件中的第一个函数
2. 在C语言中,以下对一维数组初始化说法正确的是:( ).
A.只能在定义数组时进行初始化,之后无法更改
B.可以在定义数组时进行初始化,也可以在后续代码中进行赋值
C.只能在后续代码中进行赋值,不能在定义数组时进行初始化
D.一维数组无法进行初始化
3. 在一个嵌套的循环中,break语句会影响到哪个循环?( )
A.内层循环 B. 外层循环 C. 所有循环 D. 不会影响任何循环
4. 在C语句中函数得隐含存储类型就是( )
A.auto B.static C.extern D.无存储类别
5. 关于if语句说法正确是:( ).
A.if语句后面只能跟一条语句
B.if语句中0表示假,1表示真
C.if语句是一种分支语句,可以实现单分支,也可以实现多分支
D.else语句总是和它的对齐的if语句匹配
6. 字符数组的大小是由以下哪个因素决定?( )
A.数组名的长度
B.所存放的字符串长度
C.元素的个数
D.输入的字符个数
7. 在for循环中,循环变量的更新通常在哪个位置?( )
A. 循环体内 B. 循环体外 C. 循环头部 D. 循环尾部
8. 局部变量的作用域是( ).
A.main函数内部
B.整个程序
C.main函数之前
D.局部变量所在的局部范围
9. 设A=1,B=2,执行printf(“%d,%d”,(A,B),(B,A));D的输出( ).
A.1,2
B.2,1
C.1,1
D.2,2
10. 在C语言中,下列哪个选项是正确的指针变量定义?( )
A. int *ptr;
B. int ptr;
C. *int ptr;
D. *ptr;
11. 下面哪个语句用于根据不同的条件执行不同的代码块( ).
A. if语句
B. switch语句
C. for循环
D. while循环
12. 以下选项中,哪种方式不是常用的对整型数组进行初始化的方式?( )
A. int arr[5] = {0};
B. int arr[5] = {1, 2, 3, 4, 5};
C. int arr[5] = {1, 2};
D. int arr[5] = {0, 0, 0, 0, 0};
13. 下面哪个关键字用于定义switch语句?( )
A.if
B.for
C.switch
D.while
14. 下面对函数嵌套的叙述中,正确的是( ).
A.函数定义可以嵌套,但函数调用不能嵌套
B.函数定义不可以嵌套,但函数调用可以嵌套
C.函数定义和函数调用均不能嵌套
D.函数定义和函数调用均可以嵌套
15. 若要从键盘输入一个字符串,并存储在字符数组中,以下哪个函数调用是正确的?( )
A.scanf("%s", str);
B.gets(str);
C.fgets(str, sizeof(str), stdin);
D.puts(str);
2、 判断题(本题10小题,每小题2分,满分20分)
1. 定义一维数组并同时进行全部数组元素初始化时,可以省略数组的长度说明.( )
2. 由i=-1;while(i < 10) i+=2;i++;可知,此while循环的循环体执行次数为6次.( )
3. r_1_2是C语言合法的用户定义标识符.( )
4. C语言中的if语句嵌套时,if与else的匹配关系是每个else与if的匹配是任意的.( )
5. 枚举类型的数据与字符串在使用上相同.( )
6. while和for循环都是先判断表达式的值,后执行循环体语句.( )
7. 若有说明int a[][3]={1,2,3,4,5,6,7};,则数组a第一维的大小不能确定.( )
8. retu