内容正文:
编写说明:广西《电子与信息大类考纲百套卷》,是依据广西《高等职业教育考试大纲与说明(电子与信息大类)》2026版编写。本套试卷共100份,由三个部分组成。第一部分是按考点要求编写的60份知识点训练卷;第二部分是针对三门课程编写的30份常考题训练卷;第三个部分是10份专业知识综合训练卷。
本试卷是广西《电子与信息大类考纲百套卷》的第30卷,是知识点训练卷,其编写要求如下:
(1)掌握关系运算符和关系表达式;
(2)熟悉逻辑运算符和逻辑表达式;
(3)掌握 if 语句的使用;
(4)了解条件运算符和条件表达式;
(5)掌握 switch 语句的使用。
广西《电子与信息类考纲百套卷》 第30卷
《程序设计基础》
3.选择结构程序设计-知识点训练卷
考试时间60分钟 满分100分
班级 姓名 学号 成绩
一、单项选择题(本大题共20小题,每小题3分,共60分)
1.以下能正确表示"x在区间[10,20)"的表达式是( )
A. 10 <= x < 20
B. x >= 10 && x <= 20
C. x >= 10 || x < 20
D. x >= 10 && x < 20
2.表达式5 > 3 > 1的结果是( )
A. 0
B. 1
C. 2
D. 编译错误
3.表达式3 && 0 || 5的返回值是( )
A. 0
B. 1
C. 5
D. 编译错误
4. 设有int x=10;,表达式x >= 10 && x <=20 的值为( )
A. 4
B. 3
C. 2
D. 1
5.设int a=3,b=4,c; c = a > b ? a++ : b++; 执行后c和b的值是( )
A. 4,5
B. 4,4
C. 3,5
D. 4,5
6. 设有int x=5;,表达式x=10, x==10 的值是( )
A. 0
B. 1
C. 10
D. 语法错误
7. 设有int x=7;,表达式x >= 8 ? 1 : 0 的结果是( )
A. 0
B. 1
C. 7
D. 8
8. 设int a=2,b=2;,表达式a == b++ 的值和b的值是( )
A. 1,3
B. 1,2
C. 0,3
D. 1,3
9.以下代码段中,若x=15,输出为( )
if (x % 2 == 0)
if (x % 5 == 0)
printf("A");
else
printf("B");
A. A
B. B
C. 无输出
D. 编译错误
10.以下代码段的语法错误是( )
int a = 5;
if a > 3 {
printf("A");
}
A. 条件未用括号
B. 代码块未用大括号
C. 语句缺少分号
D. 无错误
11.以下代码段的输出是( )
int a = 1, b = 0;
if (a-- && ++b)
printf("%d,%d", a, b);
else
printf("%d,%d", b, a);
A. 0,1
B. 0,0
C. 1,0
D. 0,0
12.以下代码段的输出是( )
int x = 5;
if (x > 3) {
int y = 10;
x += y;
}
printf("%d", y);
A. 15
B. 5
C. 10
D. 编译错误
13.以下代码段的输出是( )
int a = 5;
if (a > 3); {
printf("A");
}
A. A
B. 无输出
C. 编译错误
D. 不确定
14.以下代码段的输出是( )
int a = 2;
switch (a) {
case 1: printf("A");
case 2: printf("B");
default: printf("C");
}
A. B
B. BC
C. ABC
D. 编译错误
15.以下代码的输出是( )
int x = 0;
switch (x) {
case 0: printf("A"); break;
case 1: printf("B");
default: printf("C");
}
A. A
B. AC
C. C
D. 无输出
16.以下代码的错误是( )
float f = 3.14;
switch (f) {
case 3.14: printf("A");
default: printf("B");
}
A. case值类型不匹配
B. switch表达式不能是浮点型
C. 缺少break
D. 无错误
17.以下代码的错误是( )
int x = 5;
switch (x) {
case 1: printf("A");
case 5: printf("B");
default: printf("C");
}
A. case值必须为常量
B. case 5重复
C. 无错误
D. 缺少break
18.以下代码的输出是( )
#define VALUE 2
int x = VALUE;
switch (x) {
case VALUE: printf("A"); break;
case VALUE + 1: printf("B");
}
A. A
B. B
C. AB
D. 编译错误
19.以下代码的错误是( )
int x = 1;
switch (x) {
int y = 5;
case 1: printf("%d", y); break;
}
A. switch内不能定义变量
B. y未初始化
C. case标签后不能有变量声明
D. 无错误
20.以下代码的输出是( )
int x = 0;
switch (x = 1) { // 赋值表达式返回1
case 0: printf("A"); break;
case 1: printf("B");
}
A. AA
B. AB
C. A
D. B
二、判断题(本大题共10小题,每小题1分,共10分)
1.(a & b) && (c | d) 中的位运算符优先级高于逻辑运算符( )
2.表达式 !!(x & 1) 可用于判断x是否为奇数( )
3.5 + 3 < 10 && 2 * 4 == 8 的值为1( )
4.a ^= b ^= a ^= b; 可以正确交换a和b的值( )
5.表达式 3 && 0 || 2 && 5 的值为1( )
6.if (0.1 + 0.2 == 0.3) 恒为假( )
7.表达式 !!(x ^ y) 等价于 x != y( )
8.default标签必须放在switch语句的最后( )
9.default标签可以省略,此时若没有匹配的case,程序直接退出switch( )
10.switch语句的条件表达式会在运行时动态计算。( )
三、填空题(本大题共5小题,每题3分,共15分)
1.实现“a、b、c不同时为0”的表达式:______
2.若 int m = 1, n = 0;,则表达式 !(m == n) || (n > m) 的值是______。
3.若 int a = 8, b = 6;,表达式 (a > b + 1)? (a - b) : (b + a) 的值是______。
4.表达式 5 > 3 的结果是________。
5.以下代码的输出是________ 。
int x = 2;
switch (x) {
case 1: printf("A");
case 2: printf("B");
case 3: printf("C"); break;
default: printf("D");
}
四、应用题(本大题共3小题,共15分)
1.补全代码,根据输入的字符 ch 判断是元音字母(a, e, i, o, u)还是辅音字母,若不是字母则输出 "Not a letter"。
#include <stdio.h>
#include <ctype.h>
int main() {
char ch;
printf("请输入一个字符: ");
scanf(" %c", &ch);
ch = tolower(ch);
if (isalpha(ch)) {
switch (ch) {
case 'a':
case 'e':
case 'i':
case 'o':
case 'u':
printf("元音字母
");
_____________
default:
printf("辅音字母
");
}
} _____________ {
printf("Not a letter
");
}
return 0;
}
2.补全代码,根据输入的整数 num 判断其是奇数还是偶数。
#include <stdio.h>
int main() {
int num;
printf("请输入一个整数: ");
scanf("%d", &num);
if (num % 2 == 0) {
_____________
} _____________ {
printf("奇数
");
}
return 0;
}
3.补全代码,判断输入的年份 year 是否为闰年,闰年的条件是能被 4 整除但不能被 100 整除,或者能被 400 整除。
#include <stdio.h>
int main() {
int year;
printf("请输入一个年份: ");
scanf("%d", &year);
if ( _____________|| (year % 400 == 0)) {
printf("闰年
");
} else {
printf("平年
");
}
return 0;
}
原创精品资源学科网独家享有版权,侵权必究!
学科网(北京)股份有限公司
学科网(北京)股份有限公司
学科网(北京)股份有限公司
$$
编写说明:广西《电子与信息大类考纲百套卷》,是依据广西《高等职业教育考试大纲与说明(电子与信息大类)》2026版编写。本套试卷共100份,由三个部分组成。第一部分是按考点要求编写的60份知识点训练卷;第二部分是针对三门课程编写的30份常考题训练卷;第三个部分是10份专业知识综合训练卷。
本试卷是广西《电子与信息大类考纲百套卷》的第30卷,是知识点训练卷,其编写要求如下:
(1)掌握关系运算符和关系表达式;
(2)熟悉逻辑运算符和逻辑表达式;
(3)掌握 if 语句的使用;
(4)了解条件运算符和条件表达式;
(5)掌握 switch 语句的使用。
广西《电子与信息类考纲百套卷》 第30卷
《程序设计基础》
3.选择结构程序设计-知识点训练卷
考试时间60分钟 满分100分
班级 姓名 学号 成绩
一、单项选择题(本大题共20小题,每小题3分,共60分)
1.以下能正确表示"x在区间[10,20)"的表达式是( )
A. 10 <= x < 20
B. x >= 10 && x <= 20
C. x >= 10 || x < 20
D. x >= 10 && x < 20
答案:D
2.表达式5 > 3 > 1的结果是( )
A. 0
B. 1
C. 2
D. 编译错误
答案:A
3.表达式3 && 0 || 5的返回值是( )
A. 0
B. 1
C. 5
D. 编译错误
答案:B
4. 设有int x=10;,表达式x >= 10 && x <=20 的值为( )
A. 4
B. 3
C. 2
D. 1
答案:D
5.设int a=3,b=4,c; c = a > b ? a++ : b++; 执行后c和b的值是( )
A. 4,5
B. 4,4
C. 3,5
D. 4,5
答案:A
6. 设有int x=5;,表达式x=10, x==10 的值是( )
A. 0
B. 1
C. 10
D. 语法错误
答案:B
7. 设有int x=7;,表达式x >= 8 ? 1 : 0 的结果是( )
A. 0
B. 1
C. 7
D. 8
答案:A
8. 设int a=2,b=2;,表达式a == b++ 的值和b的值是( )
A. 1,3
B. 1,2
C. 0,3
D. 1,3
答案:D
9.以下代码段中,若x=15,输出为( )
if (x % 2 == 0)
if (x % 5 == 0)
printf("A");
else
printf("B");
A. A
B. B
C. 无输出
D. 编译错误
答案:C
10.以下代码段的语法错误是( )
int a = 5;
if a > 3 {
printf("A");
}
A. 条件未用括号
B. 代码块未用大括号
C. 语句缺少分号
D. 无错误
答案:A
11.以下代码段的输出是( )
int a = 1, b = 0;
if (a-- && ++b)
printf("%d,%d", a, b);
else
printf("%d,%d", b, a);
A. 0,1
B. 0,0
C. 1,0
D. 0,0
答案:A
12.以下代码段的输出是( )
int x = 5;
if (x > 3) {
int y = 10;
x += y;
}
printf("%d", y);
A. 15
B. 5
C. 10
D. 编译错误
答案:D
13.以下代码段的输出是( )
int a = 5;
if (a > 3); {
printf("A");
}
A. A
B. 无输出
C. 编译错误
D. 不确定
答案:A
14.以下代码段的输出是( )
int a = 2;
switch (a) {
case 1: printf("A");
case 2: printf("B");
default: printf("C");
}
A. B
B. BC
C. ABC
D. 编译错误
答案:B
15.以下代码的输出是( )
int x = 0;
switch (x) {
case 0: printf("A"); break;
case 1: printf("B");
default: printf("C");
}
A. A
B. AC
C. C
D. 无输出
答案:A
16.以下代码的错误是( )
float f = 3.14;
switch (f) {
case 3.14: printf("A");
default: printf("B");
}
A. case值类型不匹配
B. switch表达式不能是浮点型
C. 缺少break
D. 无错误
答案:B
17.以下代码的错误是( )
int x = 5;
switch (x) {
case 1: printf("A");
case 5: printf("B");
default: printf("C");
}
A. case值必须为常量
B. case 5重复
C. 无错误
D. 缺少break
答案:C
18.以下代码的输出是( )
#define VALUE 2
int x = VALUE;
switch (x) {
case VALUE: printf("A"); break;
case VALUE + 1: printf("B");
}
A. A
B. B
C. AB
D. 编译错误
答案:A
19.以下代码的错误是( )
int x = 1;
switch (x) {
int y = 5;
case 1: printf("%d", y); break;
}
A. switch内不能定义变量
B. y未初始化
C. case标签后不能有变量声明
D. 无错误
答案:B
20.以下代码的输出是( )
int x = 0;
switch (x = 1) { // 赋值表达式返回1
case 0: printf("A"); break;
case 1: printf("B");
}
A. AA
B. AB
C. A
D. B
答案:D
二、判断题(本大题共10小题,每小题1分,共10分)
1.(a & b) && (c | d) 中的位运算符优先级高于逻辑运算符( )
答案:√
2.表达式 !!(x & 1) 可用于判断x是否为奇数( )
答案:√
3.5 + 3 < 10 && 2 * 4 == 8 的值为1( )
答案:√
4.a ^= b ^= a ^= b; 可以正确交换a和b的值( )
答案:×
5.表达式 3 && 0 || 2 && 5 的值为1( )
答案:√
6.if (0.1 + 0.2 == 0.3) 恒为假( )
答案:√
7.表达式 !!(x ^ y) 等价于 x != y( )
答案:√
8.default标签必须放在switch语句的最后( )
答案:×
9.default标签可以省略,此时若没有匹配的case,程序直接退出switch( )
答案:√
10.switch语句的条件表达式会在运行时动态计算。( )
答案:√
三、填空题(本大题共5小题,每题3分,共15分)
1.实现“a、b、c不同时为0”的表达式:______
答案:a || b || c 或 !(a == 0 && b == 0 && c == 0)
2.若 int m = 1, n = 0;,则表达式 !(m == n) || (n > m) 的值是______。
答案:1
3.若 int a = 8, b = 6;,表达式 (a > b + 1)? (a - b) : (b + a) 的值是______。
答案:14
4.表达式 5 > 3 的结果是________。
答案:1
5.以下代码的输出是________ 。
int x = 2;
switch (x) {
case 1: printf("A");
case 2: printf("B");
case 3: printf("C"); break;
default: printf("D");
}
答案:BC
四、应用题(本大题共3小题,共15分)
1.补全代码,根据输入的字符 ch 判断是元音字母(a, e, i, o, u)还是辅音字母,若不是字母则输出 "Not a letter"。
#include <stdio.h>
#include <ctype.h>
int main() {
char ch;
printf("请输入一个字符: ");
scanf(" %c", &ch);
ch = tolower(ch);
if (isalpha(ch)) {
switch (ch) {
case 'a':
case 'e':
case 'i':
case 'o':
case 'u':
printf("元音字母
");
_____________
default:
printf("辅音字母
");
}
} _____________ {
printf("Not a letter
");
}
return 0;
}
答案:break;
答案:else
2.补全代码,根据输入的整数 num 判断其是奇数还是偶数。
#include <stdio.h>
int main() {
int num;
printf("请输入一个整数: ");
scanf("%d", &num);
if (num % 2 == 0) {
_____________
} _____________ {
printf("奇数
");
}
return 0;
}
答案:printf("偶数
");
答案:else
3.补全代码,判断输入的年份 year 是否为闰年,闰年的条件是能被 4 整除但不能被 100 整除,或者能被 400 整除。
#include <stdio.h>
int main() {
int year;
printf("请输入一个年份: ");
scanf("%d", &year);
if ( _____________|| (year % 400 == 0)) {
printf("闰年
");
} else {
printf("平年
");
}
return 0;
}
答案:(year % 4 == 0 && year % 100 != 0)
原创精品资源学科网独家享有版权,侵权必究!
学科网(北京)股份有限公司
学科网(北京)股份有限公司
学科网(北京)股份有限公司
$$