内容正文:
编写说明:广西《电子与信息大类考纲百套卷》,是依据广西《高等职业教育考试大纲与说明(电子与信息大类)》2026版编写。本套试卷共100份,由三个部分组成。第一部分是按考点要求编写的60份知识点训练卷;第二部分是针对三门课程编写的30份常考题训练卷;第三个部分是10份专业知识综合训练卷。
本试卷是广西《电子与信息大类考纲百套卷》的第28卷,是知识点训练卷,其编写要求如下:
(1)掌握关系运算符和关系表达式;
(2)熟悉逻辑运算符和逻辑表达式;
(3)掌握 if 语句的使用;
(4)了解条件运算符和条件表达式;
(5)掌握 switch 语句的使用。
广西《电子与信息类考纲百套卷》 第28卷
《程序设计基础》
3.选择结构程序设计-知识点训练卷
考试时间60分钟 满分100分
班级 姓名 学号 成绩
一、单项选择题(本大题共20小题,每小题3分,共60分)
1.表达式!(5 <= 3) || (4 != 4)的结果是( )
A. 0
B. 1
C. 2
D. 编译错误
答案:B
2.已知a=0,b=1,c=2,表达式!a && b || c的结果是( )
A. 0
B. 1
C. 2
D. 不确定
答案:B
3.设int x=5,y=0;,表达式x==5 || y++!=0 的值和y的值分别是( )
A. 1, 0
B. 1, 1
C. 0, 0
D. 0, 1
答案:A
4.设a=1,b=2,c=3,表达式a < b ? b : c 的结果是( )
A. -1
B. 0
C. 1
D. 2
答案:D
5.设int a=0;,表达式a=5, a==5 的值是( )
A. 0
B. 1
C. 5
D. 语法错误
答案:B
6. 设int a=1,b=0;,表达式a-- && ++b 的值和b的值分别是( )
A. 0,0
B. 1,0
C. 1,1
D. 0,1
答案:C
7. 设int a=5,b=3;,表达式a > b ? a : b 的结果是( )
A. 5
B. 3
C. 1
D. 0
答案:A
8. 设int a=0;,表达式a++ ? 1 : 0 的结果是( )
A. -2
B. -1
C. 1
D. 0
答案:D
9.与条件表达式 a > b ? a : b 等价的if语句是( )
A. if(a > b) return a; else return b;
B. if(a > b) { a; } else { b; }
C. if(a > b) a; else b;
D. if(a <= b) b; else a;
答案:D
10.以下代码段的输出是( )
int x = 5, y = 3;
if (x++ > 5 || y-- < 3)
printf("%d,%d", x, y);
A. 6,3
B. 6,2
C. 5,2
D. 5,3
答案:A
11.以下代码段的输出是( )
int x = 7;
if (x = 0)
printf("A");
else if (x == 0)
printf("B");
else
printf("C");
A. A
B. B
C. C
D. 无输出
答案:B
12.以下代码段的输出是( )
int x = 1;
if (x > 0)
if (x < 2)
printf("A");
else
printf("B");
A. A
B. B
C. AB
D. 无输出
答案:A
13.以下代码段的输出是( )
int x = 5;
if (x++ > 5 || x++ > 6)
printf("%d", x);
else
printf("%d", x);
A. 6
B. 7
C. 5
D. 编译错误
答案:B
14.以下代码段的输出是( )
#define MAX(a,b) a > b ? a : b
int x = MAX(3, 5 + 2);
A. 3
B. 5
C. 7
D. 编译错误
答案:C
15.以下代码的输出是( )
int x = 5;
switch (x) {
default: printf("D");
case 1: printf("A");
case 2: printf("B");
}
A. D
B. DAB
C. B
D. 编译错误
答案:B
16.以下代码的输出是( )
int x = 10;
switch (x > 5) {
case 0: printf("A"); break;
case 1: printf("B"); break;
}
A. A
B. B
C. AB
D. 编译错误
答案:B
17.以下代码的输出是( )
int x = 2;
switch (x) {
case 1: x += 1;
case 2: x += 2;
case 3: x += 3; break;
default: x += 4;
}
printf("%d", x);
A. 2
B. 4
C. 7
D. 9
答案:C
18.以下代码的输出是( )
int x = 10;
switch (x) {
default: printf("D");
case 1: printf("A");
}
A. D
B. DA
C. A
D. 无输出
答案:B
19.以下代码的输出是( )
int x = 5;
switch (x) {
case 5:
x = 10;
case 10:
printf("%d", x); break;
default:
printf("0");
}
A. 5
B. 10
C. 0
D. 编译错误
答案:B
20.以下代码的错误是( )
const int y = 2;
switch (y) {
case y: printf("A");
case 3: printf("B");
}
A. case标签不能使用const变量
B. switch表达式必须为变量
C. 无错误
D. 缺少default
答案:A
二、判断题(本大题共10小题,每小题1分,共10分)
1.sizeof(5 > 3) 的返回值与 sizeof(int) 相等( )
答案:√
2.if (x = 0) { ... } 等价于 if (x == 0) { ... }( )
答案:×
3.(a >= 'A' && a <= 'Z') 可判断a是否为大写字母( )
答案:√
4.(x & (x-1)) == 0 可判断x是否为2的幂( )
答案:√
5.条件运算符 ?: 的返回值类型由两个操作数中精度更高的类型决定( )
答案:√
6.表达式 (a & 1) ? 1 : 0 可以判断a的奇偶性( )
答案:√
7.if (x >= 60 && x <= 100) 可以简写为 if (60 <= x <= 100)( )
答案:×
8.switch的表达式可以是浮点型( )
答案:×
9.case标签后可以没有代码( )
答案:√
10.switch的表达式可以是宏定义( )
答案:√
三、填空题(本大题共5小题,每题3分,共15分)
1.设 int x=10;,表达式 x = x > 5 ? x / 2 : x * 2 执行后x的值是 ______
答案:5
2.若有 int a = 5, b = 3;,则表达式 (a > b) || (a < b - 1) 的值是______。
答案:1
3.若 int p = 0, q = 1;,表达式 (p || q) && !(p && q) 的值是______。
答案:1
4.判断变量x是否为偶数的表达式:x % 2 == ________。
答案:0
5.以下代码的输出是________ 。
char c = 'B';
switch (c) {
case 'A': printf("1");
case 66: printf("2");
default: printf("3");
}
答案:23
四、应用题(本大题共3小题,共15分)
1.补全代码,判断num是否在区间(0, 100)内。
int num = 50;
if (________) {
printf("有效值");
}
答案:num > 0 && num < 100
2.补全代码,当code非1或2时输出“未知”。
int code = 5;
switch (________) {
case 1: printf("A"); break;
case 2: printf("B"); break;
________: printf("未知");
}
答案:code
答案:default
3.补全代码,将浮点数f转为整型后判断是否为3。
float f = 3.5f;
switch (________) {
case ________: printf("3"); break;
}
答案:(int)f
答案:3
原创精品资源学科网独家享有版权,侵权必究!
学科网(北京)股份有限公司
学科网(北京)股份有限公司
学科网(北京)股份有限公司
学科网(北京)股份有限公司
$$
编写说明:广西《电子与信息大类考纲百套卷》,是依据广西《高等职业教育考试大纲与说明(电子与信息大类)》2026版编写。本套试卷共100份,由三个部分组成。第一部分是按考点要求编写的60份知识点训练卷;第二部分是针对三门课程编写的30份常考题训练卷;第三个部分是10份专业知识综合训练卷。
本试卷是广西《电子与信息大类考纲百套卷》的第28卷,是知识点训练卷,其编写要求如下:
(1)掌握关系运算符和关系表达式;
(2)熟悉逻辑运算符和逻辑表达式;
(3)掌握 if 语句的使用;
(4)了解条件运算符和条件表达式;
(5)掌握 switch 语句的使用。
广西《电子与信息类考纲百套卷》 第28卷
《程序设计基础》
3.选择结构程序设计-知识点训练卷
考试时间60分钟 满分100分
班级 姓名 学号 成绩
一、单项选择题(本大题共20小题,每小题3分,共60分)
1.表达式!(5 <= 3) || (4 != 4)的结果是( )
A. 0
B. 1
C. 2
D. 编译错误
2.已知a=0,b=1,c=2,表达式!a && b || c的结果是( )
A. 0
B. 1
C. 2
D. 不确定
3.设int x=5,y=0;,表达式x==5 || y++!=0 的值和y的值分别是( )
A. 1, 0
B. 1, 1
C. 0, 0
D. 0, 1
4.设a=1,b=2,c=3,表达式a < b ? b : c 的结果是( )
A. -1
B. 0
C. 1
D. 2
5.设int a=0;,表达式a=5, a==5 的值是( )
A. 0
B. 1
C. 5
D. 语法错误
6. 设int a=1,b=0;,表达式a-- && ++b 的值和b的值分别是( )
A. 0,0
B. 1,0
C. 1,1
D. 0,1
7. 设int a=5,b=3;,表达式a > b ? a : b 的结果是( )
A. 5
B. 3
C. 1
D. 0
8. 设int a=0;,表达式a++ ? 1 : 0 的结果是( )
A. -2
B. -1
C. 1
D. 0
9.与条件表达式 a > b ? a : b 等价的if语句是( )
A. if(a > b) return a; else return b;
B. if(a > b) { a; } else { b; }
C. if(a > b) a; else b;
D. if(a <= b) b; else a;
10.以下代码段的输出是( )
int x = 5, y = 3;
if (x++ > 5 || y-- < 3)
printf("%d,%d", x, y);
A. 6,3
B. 6,2
C. 5,2
D. 5,3
11.以下代码段的输出是( )
int x = 7;
if (x = 0)
printf("A");
else if (x == 0)
printf("B");
else
printf("C");
A. A
B. B
C. C
D. 无输出
12.以下代码段的输出是( )
int x = 1;
if (x > 0)
if (x < 2)
printf("A");
else
printf("B");
A. A
B. B
C. AB
D. 无输出
13.以下代码段的输出是( )
int x = 5;
if (x++ > 5 || x++ > 6)
printf("%d", x);
else
printf("%d", x);
A. 6
B. 7
C. 5
D. 编译错误
14.以下代码段的输出是( )
#define MAX(a,b) a > b ? a : b
int x = MAX(3, 5 + 2);
A. 3
B. 5
C. 7
D. 编译错误
15.以下代码的输出是( )
int x = 5;
switch (x) {
default: printf("D");
case 1: printf("A");
case 2: printf("B");
}
A. D
B. DAB
C. B
D. 编译错误
16.以下代码的输出是( )
int x = 10;
switch (x > 5) {
case 0: printf("A"); break;
case 1: printf("B"); break;
}
A. A
B. B
C. AB
D. 编译错误
17.以下代码的输出是( )
int x = 2;
switch (x) {
case 1: x += 1;
case 2: x += 2;
case 3: x += 3; break;
default: x += 4;
}
printf("%d", x);
A. 2
B. 4
C. 7
D. 9
18.以下代码的输出是( )
int x = 10;
switch (x) {
default: printf("D");
case 1: printf("A");
}
A. D
B. DA
C. A
D. 无输出
19.以下代码的输出是( )
int x = 5;
switch (x) {
case 5:
x = 10;
case 10:
printf("%d", x); break;
default:
printf("0");
}
A. 5
B. 10
C. 0
D. 编译错误
20.以下代码的错误是( )
const int y = 2;
switch (y) {
case y: printf("A");
case 3: printf("B");
}
A. case标签不能使用const变量
B. switch表达式必须为变量
C. 无错误
D. 缺少default
二、判断题(本大题共10小题,每小题1分,共10分)
1.sizeof(5 > 3) 的返回值与 sizeof(int) 相等( )
2.if (x = 0) { ... } 等价于 if (x == 0) { ... }( )
3.(a >= 'A' && a <= 'Z') 可判断a是否为大写字母( )
4.(x & (x-1)) == 0 可判断x是否为2的幂( )
5.条件运算符 ?: 的返回值类型由两个操作数中精度更高的类型决定( )
6.表达式 (a & 1) ? 1 : 0 可以判断a的奇偶性( )
7.if (x >= 60 && x <= 100) 可以简写为 if (60 <= x <= 100)( )
8.switch的表达式可以是浮点型( )
9.case标签后可以没有代码( )
10.switch的表达式可以是宏定义( )
三、填空题(本大题共5小题,每题3分,共15分)
1.设 int x=10;,表达式 x = x > 5 ? x / 2 : x * 2 执行后x的值是 ______
2.若有 int a = 5, b = 3;,则表达式 (a > b) || (a < b - 1) 的值是______。
3.若 int p = 0, q = 1;,表达式 (p || q) && !(p && q) 的值是______。
4.判断变量x是否为偶数的表达式:x % 2 == ________。
5.以下代码的输出是________ 。
char c = 'B';
switch (c) {
case 'A': printf("1");
case 66: printf("2");
default: printf("3");
}
四、应用题(本大题共3小题,共15分)
1.补全代码,判断num是否在区间(0, 100)内。
int num = 50;
if (________) {
printf("有效值");
}
2.补全代码,当code非1或2时输出“未知”。
int code = 5;
switch (________) {
case 1: printf("A"); break;
case 2: printf("B"); break;
________: printf("未知");
}
3.补全代码,将浮点数f转为整型后判断是否为3。
float f = 3.5f;
switch (________) {
case ________: printf("3"); break;
}
原创精品资源学科网独家享有版权,侵权必究!
学科网(北京)股份有限公司
学科网(北京)股份有限公司
学科网(北京)股份有限公司
学科网(北京)股份有限公司
$$