内容正文:
编写说明:2027版吉林省高职分类(对口招生)考试电子与信息类《考纲百套卷》,依据《吉林省高职分类(对口招生)考试电子与信息类专业综合卷考试科目及纲要(2025版)》编写。本专辑涵盖三个部分,第一部分为知识训练卷,第二部分为专题训练卷,第三部分为课程综合卷。本专辑共115份试卷,其中知识训练卷82份、专题训练卷19份、课程综合卷14份。
本试卷是第7卷,为知识训练卷,按《C语言程序设计》中“选择结构程序设计”范围和要求编写。具体内容为:1.掌握关系运算符及其表达式。2.掌握逻辑运算符及其表达式。3.掌握if语句的三种形式及编程。4.了解条件运算符及其表达式。5.理解switch语句及编程。
吉林省高职分类(对口招生)考试
电子与信息类《考纲百套卷》
第7卷 C语言程序设计——选择结构程序设计
(考试时间:45分钟 满分:100分)
一、单项选择题(共20题,每题2分,共40分)
1.C语言中表示“小于等于”的关系运算符是( )
A.=<
B.<>
C.>=
D.<=
2.以下关于 else if 的说法,正确的是( )
A.else if只能使用一次
B.else if不能与else同时使用
C.else if必须使用同样的条件
D.else if可以实现多分支选择
3.表达式 (0 && a++) 中,a++会被执行吗?( )
A.会执行
B.不会执行
C.取决于 a 的值
D.编译报错
4.switch语句中,不同 case 后面的常量表达式( )
A.不能相同
B.可以相同
C.必须相同
D.没有要求
5.表达式 a>b ? (a>c ? a : c) : (b>c ? b : c) 的功能是( )
A.求 a、b、c 中的最大值
B.求 a、b、c 中的最小值
C.判断 a、b、c 是否相等
D.将 a、b、c 从大到小排序
6.表达式 !0 的值是( )
A.1
B.0
C.!0
D.-1
7.当 if 条件成立时需要执行多条语句,应该使用什么括起来?( )
A.圆括号
B.花括号
C.方括号
D.不需要括号
8.switch 后面括号内的表达式不能是哪种类型?( )
A.int类型
B.char类型
C.float类型
D.整型表达式
9.表达式 5 >= 5 的值是( )
A.5
B.0
C.语法错误
D.1
10.表达式 (5 || a++) 中,a++会被执行吗?( )
A.会执行
B.不会执行
C.取决于 a 的值
D.编译报错
11.在 if-else if 结构中,else if 的个数( )
A.只能有1个
B.只能有2个
C.可以有多个
D.必须至少3个
12.条件表达式 (a>b) ? 3 : 5.0 的类型是( )
A.int
B.float
C.double
D.取决于a和b
13.对于 if(x=0),以下说法正确的是( )
A.条件永远为假
B.条件永远为真
C.判断 x 是否等于 0
D.这是语法错误
14.switch(ch) { case 'A': ... } 中,'A'的类型是( )
A.字符串
B.字符常量
C.整数变量
D.浮点数
15.当需要判断一个变量是否在某个范围内时,应该使用( )
A.switch语句
B.for语句
C.while语句
D.if-else语句
16.表达式 x = 3 > 5 执行后,x的值是( )
A.3
B.0
C.5
D.1
17.表达式 !(a || b) 等价于( )
A.!a && !b
B.!a || !b
C.a && b
D.!a || b
18.以下哪个与 if(a>b) max=a; else max=b; 功能相同?( )
A.a>b?b:a
B.a<b?a:b
C.a>b?a:b
D.b>a?b:a
19.当 if 或 else 后需要执行多条语句时,必须( )
A.每条语句单独写一个 if
B.用逗号分隔
C.用花括号括起来
D.写在同一行
20.switch中某个 case 没有 break时,程序会( )
A.报错退出
B.重复执行当前 case
C.跳转到 default
D.继续执行下一个 case
二、判断题(共10题,每题1分,共10分)
1.关系运算符 <=表示小于等于。( )
2.if(0)会执行其后花括号内的语句。( )
3.逻辑运算符 && 和 || 都具有短路特性。( )
4.关系运算符的优先级高于赋值运算符。( )
5.if(x=5)中的条件永远为真。( )
6.条件运算符要求三个操作数的类型必须相同。( )
7.else if 可以实现多分支选择结构。( )
8.条件运算符可以有四个操作数。( )
9.switch语句中可以包含多个 default分支。( )
10.所有 if 语句都必须带有 else部分。( )
三、填空题(共5题,每题2分,共10分)
1.if(x)中,当x的值为0时条件为____。
2.关系运算符____表示不等于。
3.条件表达式 x>0 ? 1 : -1 中,当x为正数时表达式值为____。
4.switch中当表达式值与case值____时执行该分支。
5.if-else中,若条件不成立则执行____后的语句。
四、读程序写结果题(共4题,每题5分,共20分)
1.请阅读下列程序,写出运行结果。
#include <stdio.h>
int main()
{
int a = 12;
if (a > 10)
a = a / 2;
else
a = a * 2;
printf("%d", a);
return 0;
}
2.请阅读下列程序,写出运行结果。
#include <stdio.h>
int main()
{
int x = 0;
if (x == 0)
x = 5;
if (x > 0)
x = 10;
printf("%d", x);
return 0;
}
3.请阅读下列程序,写出运行结果。
#include <stdio.h>
int main()
{
int s = 45;
if (s < 60)
s = 60;
if (s < 80)
s = s + 5;
printf("%d", s);
return 0;
}
4.请阅读下列程序,写出运行结果。
#include <stdio.h>
int main()
{
int a = 4, b = 7;
if (a > 0 && b > 0)
printf("%d", a + b);
else
printf("0");
return 0;
}
五、编程题(共2题,每题10分,共20分)
1.编写一个 C 程序,从键盘输入一个年份,判断是否为闰年。闰年条件:能被4整除但不能被100整除,或者能被400整除。
2.编写一个 C 程序,从键盘输入两个整数,比较并输出其中较大的数。
原创精品资源学科网独家享有版权,侵权必究!
学科网(北京)股份有限公司
学科网(北京)股份有限公司
学科网(北京)股份有限公司
$
编写说明:2027版吉林省高职分类(对口招生)考试电子与信息类《考纲百套卷》,依据《吉林省高职分类(对口招生)考试电子与信息类专业综合卷考试科目及纲要(2025版)》编写。本专辑涵盖三个部分,第一部分为知识训练卷,第二部分为专题训练卷,第三部分为课程综合卷。本专辑共115份试卷,其中知识训练卷82份、专题训练卷19份、课程综合卷14份。
本试卷是第7卷,为知识训练卷,按《C语言程序设计》中“选择结构程序设计”范围和要求编写。具体内容为:1.掌握关系运算符及其表达式。2.掌握逻辑运算符及其表达式。3.掌握if语句的三种形式及编程。4.了解条件运算符及其表达式。5.理解switch语句及编程。
吉林省高职分类(对口招生)考试
电子与信息类《考纲百套卷》
第7卷 C语言程序设计——选择结构程序设计
(考试时间:45分钟 满分:100分)
一、单项选择题(共20题,每题2分,共40分)
1.C语言中表示“小于等于”的关系运算符是( )
A.=<
B.<>
C.>=
D.<=
【答案】D
【解析】<= 表示小于等于,如 x<=5 判断 x 是否小于等于 5。注意与 =< 区分,=< 不是 C 语言的运算符。
2.以下关于 else if 的说法,正确的是( )
A.else if只能使用一次
B.else if不能与else同时使用
C.else if必须使用同样的条件
D.else if可以实现多分支选择
【答案】D
【解析】else if 可以多次使用,形成多分支选择结构,每个 else if 可以有不同的条件,最后可以加 else 处理其他情况。
3.表达式 (0 && a++) 中,a++会被执行吗?( )
A.会执行
B.不会执行
C.取决于 a 的值
D.编译报错
【答案】B
【解析】逻辑与&&具有短路特性,当左边表达式为假(0)时,右边表达式不会被计算。0已确定结果为假,所以 a++ 不执行。
4.switch语句中,不同 case 后面的常量表达式( )
A.不能相同
B.可以相同
C.必须相同
D.没有要求
【答案】A
【解析】switch 中不同 case 的值必须互不相同,否则编译器无法确定该执行哪个分支,会报错。
5.表达式 a>b ? (a>c ? a : c) : (b>c ? b : c) 的功能是( )
A.求 a、b、c 中的最大值
B.求 a、b、c 中的最小值
C.判断 a、b、c 是否相等
D.将 a、b、c 从大到小排序
【答案】A
【解析】条件运算符嵌套可以实现多个数的比较。先比 a和b,较大者再与c比,最终得到三个数中的最大值。
6.表达式 !0 的值是( )
A.1
B.0
C.!0
D.-1
【答案】A
【解析】! 是逻辑非运算符,0 表示假,!0 取反后为真,值为 1。同理 !5=0,!-1=0。
7.当 if 条件成立时需要执行多条语句,应该使用什么括起来?( )
A.圆括号
B.花括号
C.方括号
D.不需要括号
【答案】B
【解析】if 下默认只执行一条语句。若需执行多条语句,必须用花括号 {} 将它们括起来组成复合语句。
8.switch 后面括号内的表达式不能是哪种类型?( )
A.int类型
B.char类型
C.float类型
D.整型表达式
【答案】C
【解析】switch 后表达式必须是整型(包括 int、char、枚举型),不能是 float 或 double 等浮点类型。
9.表达式 5 >= 5 的值是( )
A.5
B.0
C.语法错误
D.1
【答案】D
【解析】5>=5为真,关系表达式真时值为 1。>= 是大于等于,包含相等的情况。
10.表达式 (5 || a++) 中,a++会被执行吗?( )
A.会执行
B.不会执行
C.取决于 a 的值
D.编译报错
【答案】B
【解析】|| 同样具有短路特性,左边表达式为真(5≠0)时,右边不再计算。因此 a++ 不会被执行。
11.在 if-else if 结构中,else if 的个数( )
A.只能有1个
B.只能有2个
C.可以有多个
D.必须至少3个
【答案】C
【解析】else if 的个数没有限制,可以根据需要使用多个,形成多分支的选择结构。
12.条件表达式 (a>b) ? 3 : 5.0 的类型是( )
A.int
B.float
C.double
D.取决于a和b
【答案】C
【解析】条件运算符两个分支类型不同时,会进行类型提升,将 int 提升为 double。5.0 默认为 double。
13.对于 if(x=0),以下说法正确的是( )
A.条件永远为假
B.条件永远为真
C.判断 x 是否等于 0
D.这是语法错误
【答案】A
【解析】if(x=0) 中 = 是赋值运算符,将 0 赋给 x,表达式值为 0,因此条件永远为假。若要判断相等,应用 x==0。
14.switch(ch) { case 'A': ... } 中,'A'的类型是( )
A.字符串
B.字符常量
C.整数变量
D.浮点数
【答案】B
【解析】case 后可以跟字符常量,字符常量在 C 中属于整型,它的值是对应的 ASCII 码。
15.当需要判断一个变量是否在某个范围内时,应该使用( )
A.switch语句
B.for语句
C.while语句
D.if-else语句
【答案】D
【解析】if-else 适合范围判断(如 x>5),而 switch 只适合等值判断。范围判断用 switch 无法直接实现。
16.表达式 x = 3 > 5 执行后,x的值是( )
A.3
B.0
C.5
D.1
【答案】B
【解析】关系运算符 > 的优先级高于赋值运算符 =,先算 3>5=假=0,再将 0 赋给 x。因此 x=0。
17.表达式 !(a || b) 等价于( )
A.!a && !b
B.!a || !b
C.a && b
D.!a || b
【答案】A
【解析】德摩根定律:!(a||b) = !a&&!b,!(a&&b) = !a||!b。这是逻辑运算中的重要等价关系。
18.以下哪个与 if(a>b) max=a; else max=b; 功能相同?( )
A.a>b?b:a
B.a<b?a:b
C.a>b?a:b
D.b>a?b:a
【答案】C
【解析】a>b?a:b 表示若 a>b 则取 a,否则取 b,与 if-else 的逻辑完全一致。条件运算符可以简洁替代简单的 if-else。
19.当 if 或 else 后需要执行多条语句时,必须( )
A.每条语句单独写一个 if
B.用逗号分隔
C.用花括号括起来
D.写在同一行
【答案】C
【解析】if/else 默认只管一条语句。需要多条语句时必须用 {} 括起来组成复合语句。否则第二条语句不受 if 控制。
20.switch中某个 case 没有 break时,程序会( )
A.报错退出
B.重复执行当前 case
C.跳转到 default
D.继续执行下一个 case
【答案】D
【解析】switch 中没有 break 时会产生“贯穿”现象,即执行完当前 case 后继续执行下一个 case,直到遇到 break 或 switch 结束。
二、判断题(共10题,每题1分,共10分)
1.关系运算符 <=表示小于等于。( )
【答案】√
【解析】<= 是小于等于关系运算符,判断左边是否小于或等于右边。它是双目运算符,优先级低于算术运算符。
2.if(0)会执行其后花括号内的语句。( )
【答案】×
【解析】C语言中0表示假,非0表示真,if(0)不会执行其后的语句。if(1)、if(-1)等非0条件才会执行。
3.逻辑运算符 && 和 || 都具有短路特性。( )
【答案】√
【解析】&& 左边为假时右边不计算,|| 左边为真时右边不计算。短路特性可提高程序效率。
4.关系运算符的优先级高于赋值运算符。( )
【答案】√
【解析】C语言中优先级顺序:算术 > 关系 > 逻辑 > 赋值。关系运算符优先级高于赋值。例如 x=3>5 先算 3>5=0。
5.if(x=5)中的条件永远为真。( )
【答案】√
【解析】if(x=5) 中 = 是赋值运算,将 5 赋给 x,表达式值为 5(非0),视为真。这是常见编程错误。
6.条件运算符要求三个操作数的类型必须相同。( )
【答案】×
【解析】条件运算符的两分支类型可不同,系统会自动进行类型转换。例如 3:5.0 的结果为 double。
7.else if 可以实现多分支选择结构。( )
【答案】√
【解析】else if 是实现多分支的常用方式,每个 else if 可以有独立的条件,按顺序从上到下依次判断。
8.条件运算符可以有四个操作数。( )
【答案】×
【解析】条件运算符 ?: 是三目运算符,只有三个操作数。不能有四个操作数。
9.switch语句中可以包含多个 default分支。( )
【答案】×
【解析】switch 中只能有一个 default 分支,它表示所有 case 都不匹配时的默认处理。
10.所有 if 语句都必须带有 else部分。( )
【答案】×
【解析】if 可以单独使用,不必带 else。例如 if(x>0) printf("正数"); 是合法的。
三、填空题(共5题,每题2分,共10分)
1.if(x)中,当x的值为0时条件为____。
【答案】假
【解析】C语言中0表示假,非0表示真。if(0)不会执行。与单独考查!0=1的角度不同。
2.关系运算符____表示不等于。
【答案】!=
【解析】!= 是判断两个值不相等的关系运算符。3!=5为真,值为1。与单选考查的<=/>= 不同。
3.条件表达式 x>0 ? 1 : -1 中,当x为正数时表达式值为____。
【答案】1
【解析】x>0为真时,取冒号前的值1。考查条件运算符的实际运算结果,而非其功能描述。
4.switch中当表达式值与case值____时执行该分支。
【答案】相等
【解析】switch将表达式值与各case值进行匹配,相等时执行对应分支。与单独考查break不同。
5.if-else中,若条件不成立则执行____后的语句。
【答案】else
【解析】if-else是双分支结构,条件为真执行if分支,为假执行else分支。考查基本语法结构。
四、读程序写结果题(共4题,每题5分,共20分)
1.请阅读下列程序,写出运行结果。
#include <stdio.h>
int main()
{
int a = 12;
if (a > 10)
a = a / 2;
else
a = a * 2;
printf("%d", a);
return 0;
}
【答案】6
【解析】a=12,12>10成立,执行 a=12/2=6。考查基本 if-else 语句。
2.请阅读下列程序,写出运行结果。
#include <stdio.h>
int main()
{
int x = 0;
if (x == 0)
x = 5;
if (x > 0)
x = 10;
printf("%d", x);
return 0;
}
【答案】10
【解析】x=0,第一个if:0==0成立,x=5;第二个if:5>0成立,x=10。考查多个 if 顺序执行。
3.请阅读下列程序,写出运行结果。
#include <stdio.h>
int main()
{
int s = 45;
if (s < 60)
s = 60;
if (s < 80)
s = s + 5;
printf("%d", s);
return 0;
}
【答案】65
【解析】s=45,第一个if:45<60成立,s=60;第二个if:60<80成立,s=60+5=65。考查连续条件判断。
4.请阅读下列程序,写出运行结果。
#include <stdio.h>
int main()
{
int a = 4, b = 7;
if (a > 0 && b > 0)
printf("%d", a + b);
else
printf("0");
return 0;
}
【答案】11
【解析】a=4>0为真,b=7>0为真,真&&真=真,输出 a+b=11。考查简单逻辑表达式在if中的应用。
五、编程题(共2题,每题10分,共20分)
1.编写一个 C 程序,从键盘输入一个年份,判断是否为闰年。闰年条件:能被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("闰年
");
else
printf("不是闰年
");
return 0;
}
【解析】闰年判断:能被4整除但不能被100整除,或能被400整除。用&&,||组合条件,用if-else实现。考查复杂条件表达式。
2.编写一个 C 程序,从键盘输入两个整数,比较并输出其中较大的数。
【答案】
#include <stdio.h>
int main()
{
int a, b;
printf("请输入两个整数:");
scanf("%d %d", &a, &b);
if (a > b)
printf("较大的数是%d
", a);
else
printf("较大的数是%d
", b);
return 0;
}
【解析】读取两个整数,用if-else比较并输出较大者。考查基本if-else的实际应用。
原创精品资源学科网独家享有版权,侵权必究!
学科网(北京)股份有限公司
学科网(北京)股份有限公司
学科网(北京)股份有限公司
$