内容正文:
《编程语言基础—C语言》高等教育出版社(第五版)
编程语言基础—C语言考试 模拟卷(七)
考试时间:100分钟 满分:100分
姓名 班级 学号 1
一、单项选择题(本题共20小题,每题2分,共20分,多选、错选均不得分)
1.下列哪项是一维数组 b 的正确初始化方式( )
A. int b[5] = {0, 1, 2, 3}; B. int b[5] = {};
C. int b[] = {4, 5, 6, 7, 8}; D. int b[5] = "Hello";
2.在C语言中,如果int类型数据占4个字节,那么long类型数据占( )个字节?
A. 1个字节 B. 2个字节
C. 4个字节 D. 8个字节
3.关于C语言的下列叙述中,哪一项是正确的( )
A. '\0' 表示字符 '0' B. 'A' 表示一个字符常量
C. 表达式:'A' < 'a' 的结果是真 D. '\\' 是非法的
4.若int a=10, b=8, c;,执行语句c = a * b / 5;后,c的值为( )
A. 16 B. 20
C. 24 D. 32
5.以下程序中,for循环的执行次数是( )
int main() {
int i = 0;
for(i = 0; i < 10; i += 2) {
if(i == 5) {
break;
}
}
}
A. 5 B. 4
C. 3 D. 6
6.下列运算符中,结合性是从右到左的是( )
A. -> B. !=
C. & D. =
7.给定以下定义和表达式,表达式result的结果为( )
float x = 5, y = 4.6;
float result = x / 2 + (int)(x + y) % 4;
A. 3 B. 3.0
C. 3.5 D. 4.5
8.若a是int型变量,表达式((a=3*5,a*2),a++,a+6)的值是( )
A. 31 B. 37
C. 21 D. 22
9.以下程序段的运行结果是( )
int n=290;char c;
c=n;
printf(“c=%d
”,c);
A. c=290 B. c=34
C. c=137 D. c=68
10.假设 x、y、z、w 均为 int 类型的变量,执行上述语句后,w 的值是( )
int x = 1, y = 1, z = 1, w = 1;
w = x++ || ++y && z++;
A. 0 B. 1
C. 2 D. 3
11.C 语言中 while 和 do-while 循环的主要区别是( )
A. do-while 的循环体至少无条件执行一次 B. while 的循环控制条件比 do-while 的循环控制条件严格
C. do-while 允许从外部转到循环体内 D. do-while 的循环体不能是复合语句
12.设 year 为整型变量,编写一个逻辑表达式确定 year 是否为非闰年。下列选项中选择正确的逻辑表达式是( )
A.(year % 4 != 0) || (year % 100 == 0 && year % 400 != 0)
B. year % 4 == 0 || year % 400 != 0
C. year % 4 == 0 && year % 100 == 0
D. year % 4 != 0 && year % 100 != 0
13.给定fun函数如下,那么fun(10)的输出结果是( )
int fun(int x) {
return (x==1) ? 1 : (x + fun(x-1));
}
A. 0 B. 100
C. 55 D. 3628800
14.下面程序的输出结果是( )
#include<stdio.h>
#define ADD(x) x*x*x
int main() {
int a=3, b=4, c=5, d=ADD(a+c)*b;
printf("d=%d", d);
return 0;
}
A. d=256 B. d=512
C. d=1024 D. d=2048
15.以下程序,当输入数据的形式为987a65b321↙,正确的输出结果为( )
int main() {
char c1,c2;
int a1,a2;
c1 = getchar();
scanf("%2d",&a1);
c2 = getchar();
scanf("%3d