内容正文:
编写说明:吉林省高职分类考试《信息工程类(电子与信息类)考纲百套卷》,依据吉林省高职分类(对口招生)考试各类专业综合卷考试科目及纲要(2021版),种信息工程类(电子与信息类)专业综合卷考试科目及纲要编写。本专辑共150份试卷两部分组成,第一部分是按考纲的考点要求编写的120份知识点训练卷,第二部分是针对6门课程的掌握要求,编写的30份常考题训练卷。
本试卷是吉林省高职分类考试《信息工程类(电子与信息类)考纲百套卷》的第10卷,是知识点训练卷。按“C语言程序设计”考试纲要(三)分支程序设计的三点知识点要求编写,其三点要求是:
1.掌握关系运算与逻辑运算2.掌握if语句的三种格式及编程3.理解switch语句及编程。
吉林省《信息工程类(电子与信息类)考纲百套卷》 第10卷
《C语言程序设计》
(三)分支程序设计-知识点训练卷
考试时间60分钟 满分100分
班级 姓名 学号 成绩
一、选择题(本大题共10小题,每小题2分,共20分)
1.关系运算符 “==” 和 “!=” 的优先级( )
A. 高于 “<”、“<=”、“>”、“>=”
B. 低于 “<”、“<=”、“>”、“>=”
C. 与 “<”、“<=”、“>”、“>=” 相同
D. 高于算术运算符
2.若 x = 5,y = 6,表达式 (x> y) || (x < y) 的值为( )
A. 0
B. 1
C. 2
D. 3
3.以下表达式中,( )是非法的关系表达式。
A. a + b > c - d
B. a == b + c
C. a && b
D. 'a' != 'b'
4.以下代码段的输出结果是( )
int num = 10;
if (num % 2 == 0)
printf("偶数");
else
printf("奇数");
A. 偶数
B. 奇数
C. 偶数奇数
D. 无输出
5.以下代码段的输出结果是( )
int score = 85;
if (score >= 90)
printf("优秀");
else if (score >= 80)
printf("良好");
else if (score >= 60)
printf("及格");
else
printf("不及格");
A. 优秀
B. 良好
C. 及格
D. 不及格
6.以下代码实现根据 n 的值判断是否为闰年,闰年的条件是能被 4 整除但不能被 100 整除,或者能被 400 整除,横线处应填( )
if (______)
printf("是闰年");
else
printf("不是闰年");
A. (n % 4 == 0 && n % 100 != 0) || (n % 400 == 0)
B. (n % 4 == 0 && n % 100 != 0) && (n % 400 == 0)
C. (n % 4 == 0 || n % 100 != 0) || (n % 400 == 0)
D. (n % 4 == 0 || n % 100 != 0) && (n % 400 == 0)
7.对于以下代码:
int num = 15;
if (num % 3 == 0) {
if (num % 5 == 0)
printf("能被 3 和 5 整除");
}
else if (num % 3 == 0)
printf("只能被 3 整除");
else if (num % 5 == 0)
printf("只能被 5 整除");
else
printf("不能被 3 或 5 整除");
其输出结果是( )
A. 不能被 3 或 5 整除
B. 只能被 3 整除
C. 只能被 5 整除
D. 能被 3 和 5 整除
8.以下关于 switch 语句的说法,正确的是( )
A. switch 后面的表达式只能是整型或字符型
B. case 后面的常量表达式可以是变量
C. switch 语句中必须有 default 分支
D. break 语句在 switch 语句中是必须的
9. 以下代码:
int m = 2;
switch (m) {
case 1: printf("one");
case 2: printf("two");
case 3: printf("three");
break;
case 4: printf("four");
}
输出结果是( )
A. two
B. two three
C. one two three
D. two three four
10. 有如下 switch 语句:
int grade = 85;
switch (grade / 10) {
case 9: printf("优秀"); break;
case 8: printf("良好"); break;
case 7: printf("中等"); break;
case 6: printf("及格"); break;
default: printf("不及格");
}
输出结果是( )
A. 优秀
B. 良好
C. 中等
D. 及格
二、判断题(本大题共10小题,每小题2分,共20分)
1.表达式 a = b > 3 等价于 a = (b> 3)。( )
2.表达式 (3 < 2) && (4 > 1) 的值为 1。( )
3.表达式!(1 == 1) 的值为 0。( )
4.在 if (表达式) 语句; 格式中,“表达式” 只能是布尔类型的值。( )
5.若 if 语句中的 “表达式” 值为 0,则会执行 else 子句(如果存在)。( )
6.多分支 if - else if - else 结构中,else 子句是可选的。( )
7.在嵌套 if 语句中,内层 if 语句的条件判断不会受到外层 if 语句的影响。( )
8.若 switch 语句中没有 break 语句,程序会依次执行后续的 case 分支,直到遇到 break 或 switch 语句结束。( )
9.switch 语句中的 break 语句只能跳出当前的 switch 语句。( )
10.switch 语句中的 case 分支常量表达式的值可以重复。( )
三、填空题(本大题共5小题,每题2分,共10分)
1.若 a = 5,b = 3,关系表达式 a > b + 1 的值为( )。
2.若有int a = 10, b = 20;,关系表达式a != b - 10的值为______。
3.若 if 语句的 “表达式” 为 (x % 2 == 0),其含义是判断 x 是否为________。
4.在if - else语句里,若if后的表达式值为真,执行 ________ 后的语句。
5.switch 语句中,case 后面的常量表达式之间用 ________ 分隔。
四、读程序写结果题(本大题共5小题,每题5分,共25分)
1.以下程序的运行结果是______。
#include <stdio.h>
int main() {
int num = 7;
switch (num % 3) {
case 0: printf("余数为 0
"); break;
case 1: printf("余数为 1
"); break;
case 2: printf("余数为 2
"); break;
}
return 0;
}
2.以下程序的运行结果是______。
#include <stdio.h>
int main() {
int m = 2;
switch (m) {
case 1: printf("一
");
case 2: printf("二
");
case 3: printf("三
");
default: printf("其他
");
}
return 0;
}
3.以下程序的运行结果是______。
#include <stdio.h>
int main() {
int x = 12;
if (x % 4 == 0) {
if (x % 6 == 0) {
if (x % 8 == 0)
printf("能被 4、6 和 8 整除
");
else
printf("能被 4 和 6 整除,但不能被 8 整除
");
}
}
return 0;
}
4.以下程序的运行结果是______。
#include <stdio.h>
int main() {
int score = 58;
if (score >= 60)
printf("及格
");
else if (score >= 50)
printf("接近及格
");
else
printf("不及格
");
return 0;
}
5.以下程序的运行结果是______。
#include <stdio.h>
int main() {
int x = 3;
switch (x) {
case 1: printf("一
"); break;
case 2: printf("二
"); break;
default:
switch (x % 2) {
case 0: printf("偶数余数情况
"); break;
case 1: printf("奇数余数情况
"); break;
}
}
return 0;
}
五、编程题(本大题共5小题,每题5分,共25分)
1. 输入一个年份,判断该年份是否为闰年。闰年的条件是能被 4 整除但不能被 100 整除,或者能被 400 整除。
2. 输入两个整数 a 和 b,根据用户输入的运算符(+、-、*、/)进行相应的运算并输出结果。如果输入的运算符不是这四个之一,输出错误信息。
3. 输入一个整数,判断它是否是质数。质数是指大于 1 且只能被 1 和自身整除的正整数。
4. 输入一个整数,判断它是否能被 3 或 5 整除,但不能同时被 3 和 5 整除。
5. 输入一个整数,判断它是否是完全平方数。完全平方数是指一个数能表示成某个整数的平方的形式。
#include <stdio.h>
#include <math.h>
int main() {
int num;
double root;
printf("请输入一个整数: ");
scanf("%d", &num);
if (num < 0) {
printf("%d 不是完全平方数。
", num);
} else {
root = sqrt(num);
if ((int)root * (int)root == num) {
printf("%d 是完全平方数。
", num);
} else {
printf("%d 不是完全平方数。
", num);
}
}
return 0;
}
原创精品资源学科网独家享有版权,侵权必究!
学科网(北京)股份有限公司
学科网(北京)股份有限公司
学科网(北京)股份有限公司
$$
编写说明:吉林省高职分类考试《信息工程类(电子与信息类)考纲百套卷》,依据吉林省高职分类(对口招生)考试各类专业综合卷考试科目及纲要(2021版),种信息工程类(电子与信息类)专业综合卷考试科目及纲要编写。本专辑共150份试卷两部分组成,第一部分是按考纲的考点要求编写的120份知识点训练卷,第二部分是针对6门课程的掌握要求,编写的30份常考题训练卷。
本试卷是吉林省高职分类考试《信息工程类(电子与信息类)考纲百套卷》的第10卷,是知识点训练卷。按“C语言程序设计”考试纲要(三)分支程序设计的三点知识点要求编写,其三点要求是:
1.掌握关系运算与逻辑运算2.掌握if语句的三种格式及编程3.理解switch语句及编程。
吉林省《信息工程类(电子与信息类)考纲百套卷》 第10卷
《C语言程序设计》
(三)分支程序设计-知识点训练卷
考试时间60分钟 满分100分
班级 姓名 学号 成绩
一、选择题(本大题共10小题,每小题2分,共20分)
1.关系运算符 “==” 和 “!=” 的优先级( )
A. 高于 “<”、“<=”、“>”、“>=”
B. 低于 “<”、“<=”、“>”、“>=”
C. 与 “<”、“<=”、“>”、“>=” 相同
D. 高于算术运算符
答案:B
2.若 x = 5,y = 6,表达式 (x> y) || (x < y) 的值为( )
A. 0
B. 1
C. 2
D. 3
答案:B
3.以下表达式中,( )是非法的关系表达式。
A. a + b > c - d
B. a == b + c
C. a && b
D. 'a' != 'b'
答案:C
4.以下代码段的输出结果是( )
int num = 10;
if (num % 2 == 0)
printf("偶数");
else
printf("奇数");
A. 偶数
B. 奇数
C. 偶数奇数
D. 无输出
答案:A
5.以下代码段的输出结果是( )
int score = 85;
if (score >= 90)
printf("优秀");
else if (score >= 80)
printf("良好");
else if (score >= 60)
printf("及格");
else
printf("不及格");
A. 优秀
B. 良好
C. 及格
D. 不及格
答案:B
6.以下代码实现根据 n 的值判断是否为闰年,闰年的条件是能被 4 整除但不能被 100 整除,或者能被 400 整除,横线处应填( )
if (______)
printf("是闰年");
else
printf("不是闰年");
A. (n % 4 == 0 && n % 100 != 0) || (n % 400 == 0)
B. (n % 4 == 0 && n % 100 != 0) && (n % 400 == 0)
C. (n % 4 == 0 || n % 100 != 0) || (n % 400 == 0)
D. (n % 4 == 0 || n % 100 != 0) && (n % 400 == 0)
答案:A
7.对于以下代码:
int num = 15;
if (num % 3 == 0) {
if (num % 5 == 0)
printf("能被 3 和 5 整除");
}
else if (num % 3 == 0)
printf("只能被 3 整除");
else if (num % 5 == 0)
printf("只能被 5 整除");
else
printf("不能被 3 或 5 整除");
其输出结果是( )
A. 不能被 3 或 5 整除
B. 只能被 3 整除
C. 只能被 5 整除
D. 能被 3 和 5 整除
答案:D
8.以下关于 switch 语句的说法,正确的是( )
A. switch 后面的表达式只能是整型或字符型
B. case 后面的常量表达式可以是变量
C. switch 语句中必须有 default 分支
D. break 语句在 switch 语句中是必须的
答案:A
9. 以下代码:
int m = 2;
switch (m) {
case 1: printf("one");
case 2: printf("two");
case 3: printf("three");
break;
case 4: printf("four");
}
输出结果是( )
A. two
B. two three
C. one two three
D. two three four
答案:B
10. 有如下 switch 语句:
int grade = 85;
switch (grade / 10) {
case 9: printf("优秀"); break;
case 8: printf("良好"); break;
case 7: printf("中等"); break;
case 6: printf("及格"); break;
default: printf("不及格");
}
输出结果是( )
A. 优秀
B. 良好
C. 中等
D. 及格
答案:B
二、判断题(本大题共10小题,每小题2分,共20分)
1.表达式 a = b > 3 等价于 a = (b> 3)。( )
答案:正确
2.表达式 (3 < 2) && (4 > 1) 的值为 1。( )
答案:错误
3.表达式!(1 == 1) 的值为 0。( )
答案:正确
4.在 if (表达式) 语句; 格式中,“表达式” 只能是布尔类型的值。( )
答案:错误
5.若 if 语句中的 “表达式” 值为 0,则会执行 else 子句(如果存在)。( )
答案:正确
6.多分支 if - else if - else 结构中,else 子句是可选的。( )
答案:正确
7.在嵌套 if 语句中,内层 if 语句的条件判断不会受到外层 if 语句的影响。( )
答案:错误
8.若 switch 语句中没有 break 语句,程序会依次执行后续的 case 分支,直到遇到 break 或 switch 语句结束。( )
答案:正确
9.switch 语句中的 break 语句只能跳出当前的 switch 语句。( )
答案:正确
10.switch 语句中的 case 分支常量表达式的值可以重复。( )
答案:错误
三、填空题(本大题共5小题,每题2分,共10分)
1.若 a = 5,b = 3,关系表达式 a > b + 1 的值为( )。
答案:1
2.若有int a = 10, b = 20;,关系表达式a != b - 10的值为______。
答案:0
3.若 if 语句的 “表达式” 为 (x % 2 == 0),其含义是判断 x 是否为________。
答案:偶数
4.在if - else语句里,若if后的表达式值为真,执行 ________ 后的语句。
答案:if
5.switch 语句中,case 后面的常量表达式之间用 ________ 分隔。
答案:冒号
四、读程序写结果题(本大题共5小题,每题5分,共25分)
1.以下程序的运行结果是______。
#include <stdio.h>
int main() {
int num = 7;
switch (num % 3) {
case 0: printf("余数为 0
"); break;
case 1: printf("余数为 1
"); break;
case 2: printf("余数为 2
"); break;
}
return 0;
}
答案:余数为 1
2.以下程序的运行结果是______。
#include <stdio.h>
int main() {
int m = 2;
switch (m) {
case 1: printf("一
");
case 2: printf("二
");
case 3: printf("三
");
default: printf("其他
");
}
return 0;
}
答案:
二
三
其他
3.以下程序的运行结果是______。
#include <stdio.h>
int main() {
int x = 12;
if (x % 4 == 0) {
if (x % 6 == 0) {
if (x % 8 == 0)
printf("能被 4、6 和 8 整除
");
else
printf("能被 4 和 6 整除,但不能被 8 整除
");
}
}
return 0;
}
答案:能被 4 和 6 整除,但不能被 8 整除
4.以下程序的运行结果是______。
#include <stdio.h>
int main() {
int score = 58;
if (score >= 60)
printf("及格
");
else if (score >= 50)
printf("接近及格
");
else
printf("不及格
");
return 0;
}
答案:接近及格
5.以下程序的运行结果是______。
#include <stdio.h>
int main() {
int x = 3;
switch (x) {
case 1: printf("一
"); break;
case 2: printf("二
"); break;
default:
switch (x % 2) {
case 0: printf("偶数余数情况
"); break;
case 1: printf("奇数余数情况
"); break;
}
}
return 0;
}
答案:奇数余数情况
五、编程题(本大题共5小题,每题5分,共25分)
1. 输入一个年份,判断该年份是否为闰年。闰年的条件是能被 4 整除但不能被 100 整除,或者能被 400 整除。
#include <stdio.h>
int main() {
int year;
printf("请输入一个年份: ");
scanf("%d", &year);
if ((year % 4 == 0 && year % 100 != 0) || (year % 400 == 0)) {
printf("%d 年是闰年。
", year);
} else {
printf("%d 年不是闰年。
", year);
}
return 0;
}
2. 输入两个整数 a 和 b,根据用户输入的运算符(+、-、*、/)进行相应的运算并输出结果。如果输入的运算符不是这四个之一,输出错误信息。
#include <stdio.h>
int main() {
int a, b;
char op;
printf("请输入两个整数和一个运算符(格式: a op b): ");
scanf("%d %c %d", &a, &op, &b);
switch (op) {
case '+':
printf("%d + %d = %d
", a, b, a + b);
break;
case '-':
printf("%d - %d = %d
", a, b, a - b);
break;
case '*':
printf("%d * %d = %d
", a, b, a * b);
break;
case '/':
if (b != 0) {
printf("%d / %d = %d
", a, b, a / b);
} else {
printf("除数不能为 0。
");
}
break;
default:
printf("输入的运算符无效。
");
}
return 0;
}
3. 输入一个整数,判断它是否是质数。质数是指大于 1 且只能被 1 和自身整除的正整数。
#include <stdio.h>
#include <stdbool.h>
int main() {
int num, i;
bool isPrime = true;
printf("请输入一个整数: ");
scanf("%d", &num);
if (num <= 1) {
isPrime = false;
} else {
for (i = 2; i * i <= num; i++) {
if (num % i == 0) {
isPrime = false;
break;
}
}
}
if (isPrime) {
printf("%d 是质数。
", num);
} else {
printf("%d 不是质数。
", num);
}
return 0;
}
4. 输入一个整数,判断它是否能被 3 或 5 整除,但不能同时被 3 和 5 整除。
#include <stdio.h>
int main() {
int num;
printf("请输入一个整数: ");
scanf("%d", &num);
if ((num % 3 == 0 || num % 5 == 0) && !(num % 3 == 0 && num % 5 == 0)) {
printf("%d 能被 3 或 5 整除,但不能同时被 3 和 5 整除。
", num);
} else {
printf("%d 不满足条件。
", num);
}
return 0;
}
5. 输入一个整数,判断它是否是完全平方数。完全平方数是指一个数能表示成某个整数的平方的形式。
#include <stdio.h>
#include <math.h>
int main() {
int num;
double root;
printf("请输入一个整数: ");
scanf("%d", &num);
if (num < 0) {
printf("%d 不是完全平方数。
", num);
} else {
root = sqrt(num);
if ((int)root * (int)root == num) {
printf("%d 是完全平方数。
", num);
} else {
printf("%d 不是完全平方数。
", num);
}
}
return 0;
}
原创精品资源学科网独家享有版权,侵权必究!
学科网(北京)股份有限公司
学科网(北京)股份有限公司
学科网(北京)股份有限公司
$$