第51卷 分支程序设计 专题训练卷 《C语言程序设计知识》山东省(春季高考)《软件与应用技术类考纲百套卷》

2026-08-12
| 2份
| 12页
| 44人阅读
| 1人下载

内容正文:

编写说明:2027版山东省春季高考统一考试软件与应用技术类《考纲百套卷》,依据《软件与应用技术类专业知识考试标准》编写。本专辑涵盖三个部分,第一部分为知识训练卷,第二部分为专题训练卷,第三部分为课程综合卷。本专辑共85份试卷,其中知识训练卷48份、专题训练卷25份、课程综合卷12份。 本试卷是第51卷,为专题训练卷,按“分支程序设计”专题范围和要求编写。具体内容为:(1)理解关系表达式和逻辑表达式;(2)掌握条件语句(if语句)和多分支语句(switch语句)的用法。 山东省春季高考统一考试 软件与应用技术类《考纲百套卷》 第51卷 专题训练——分支程序设计 (考试时间:45分钟 满分:100分) 一、选择题(共20题,每题3分,共60分) 1.若a=6、b=6、c=3,表达式a==b&&b>c的值是(  ) A.0 B.3 C.1 D.6 【答案】C 【解析】a==b和b>c都成立,两个关系条件用逻辑与连接后结果为1。 2.在if(value)中,若value=-1,条件按( )处理 A.假值 B.真值 C.字符值 D.错误值 【答案】B 【解析】C语言中0表示假,非0值表示真,-1属于非0值,所以条件按真值处理。 3.若m=5、n=5,表达式m!=n||m<n的值是(  ) A.0 B.1 C.5 D.-1 【答案】A 【解析】m!=n和m<n都不成立,逻辑或的两个操作数均为假,因此结果为0。 4.若x=4、y=7,表达式x+y==11&&y>6的值是(  ) A.0 B.4 C.7 D.1 【答案】D 【解析】x+y等于11且y大于6,两个关系条件均成立,逻辑与结果为1。 5.若p=0、q=8,表达式!(p==0)||q>5的值是(  ) A.1 B.0 C.5 D.8 【答案】A 【解析】!(p==0)为假,但q>5为真,逻辑或中有一个条件成立,整体结果为1。 6.表达式a==b||c!=d&&e>f中,先组合计算的是(  ) A.关系判断 a==b B.或运算 a==b||c!=d C.与运算 c!=d&&e>f D.局部判断 d&&e 【答案】C 【解析】逻辑与&&的优先级高于逻辑或||,所以先计算c!=d&&e>f这一部分。 7.执行int r=3+4==7;后,r的值是(  ) A.0 B.3 C.7 D.1 【答案】D 【解析】先计算3+4得到7,再判断7==7,关系成立,r被赋值为1。 8.若score=72、bonus=0,执行int flag=score>=60&&bonus==0;后flag为(  ) A.0 B.1 C.60 D.72 【答案】B 【解析】score>=60和bonus==0都成立,逻辑与结果为1,flag被赋值为1。 9.若n=7,表达式n%2==0的值是(  ) A.0 B.1 C.2 D.7 【答案】A 【解析】7除以2的余数为1,n%2==0不成立,所以结果为0。 10.若m=4、n=9、k=2,表达式m<n&&k==2的值是(  ) A.0 B.2 C.1 D.9 【答案】C 【解析】m<n和k==2都成立,两个条件用逻辑与连接后结果为1。 11.若retry=0、backup=1,表达式retry==1||backup==1的值是(  ) A.0 B.1 C.2 D.-1 【答案】B 【解析】retry==1为假,backup==1为真,逻辑或只要有一个操作数为真,整体结果就是1。 12.下列哪个条件可判断整数n是否为3的倍数(  ) A.n/3==0 B.n*3==0 C.n-3==0 D.n%3==0 【答案】D 【解析】整数n除以3的余数为0时,n才是3的倍数,因此应使用n%3==0。 13.若ready=1、error=1,表达式ready==1&&error==0的值是(  ) A.0 B.1 C.-1 D.2 【答案】A 【解析】ready==1成立,但error==0不成立,逻辑与要求两个条件都成立,因此结果为0。 14.若x=3、y=2,表达式!(x<3||y>2)的值是(  ) A.0 B.2 C.1 D.3 【答案】C 【解析】x<3和y>2都不成立,括号内为假,取逻辑非后结果为1。 15.若count=5、limit=5,表达式count>=limit||limit==0的值是(  ) A.0 B.5 C.10 D.1 【答案】D 【解析】count>=limit成立,limit==0不成立,但逻辑或已有一项为真,所以结果为1。 16.若a=8、b=3,表达式a/b>2&&a%b==2的值是(  ) A.1 B.0 C.2 D.8 【答案】B 【解析】整数除法8/3的结果为2,2>2不成立;虽然8%3等于2,但逻辑与要求两项都成立,因此结果为0。 17.表示正偶数n的条件表达式是(  ) A.n>0&&n%2==0 B.n>=0||n%2==0 C.n<0&&n%2!=0 D.n==2||n==0 【答案】A 【解析】正偶数必须同时满足n>0和n%2==0,因此两个条件用&&连接。 18.表达式2<3<1在C语言中的值是(  ) A.1 B.2 C.3 D.0 【答案】D 【解析】C语言按从左到右的关系运算处理:2<3先得到1,再计算1<1,结果为0。 19.若x=10,表达式!(x==10)||x>10的值是(  ) A.1 B.10 C.0 D.不确定 【答案】C 【解析】x==10成立,取非后为假;x>10也不成立,逻辑或结果为0。 20.若u=5、v=3,表达式u>v&&!(u==5)的值是(  ) A.1 B.0 C.3 D.5 【答案】B 【解析】u>v成立,但u==5也成立,取非后为假;逻辑与结果为0。 二、简答题(共2题,每题10分,共20分) 1.阅读程序,写出输出结果,并说明low、high和inside的值。 #include <stdio.h> int main() { int low = 3, high = 9, x = 9; int inside = x >= low && x <= high; printf("%d %d %d ", low, high, inside); return 0; } 【答案】输出:3 9 1。low为3,high为9,inside为1。 【解析】x等于上边界9,满足x>=3和x<=9两个关系条件,逻辑与结果为1;low和high的值未被修改。 2.阅读程序,写出输出结果,并说明pass和retry的值。 #include <stdio.h> int main() { int score = 58, absent = 0; int pass = score >= 60 && absent == 0; int retry = !pass; printf("%d %d ", pass, retry); return 0; } 【答案】输出:0 1。pass为0,retry为1。 【解析】score>=60不成立,虽然absent==0成立,但逻辑与结果仍为0;retry对pass取逻辑非,因此为1。 三、案例分析题(共1题,共10分) 1.某程序判断包裹是否需要人工复核:重量超过20千克,或者易碎标志fragile为1时输出Review,否则输出Normal。程序条件有误,请修改。 #include <stdio.h> int main() { int weight = 24, fragile = 0; if (weight >= 20 && fragile == 0) printf("Review "); else printf("Normal "); return 0; } 【答案】将条件改为if (weight > 20 || fragile == 1)。修改后的核心结构为: if (weight > 20 || fragile == 1) printf("Review "); else printf("Normal "); 【解析】题目中的两种情况满足一种即可,使用||连接;重量超过20应写为weight>20,不包含20本身;易碎标志为1用fragile==1表示。原程序把条件写成了边界错误的>=和要求同时成立的&&。 四、综合应用题(共1题,共10分) 1.编写程序:输入整数age、score和late。若age不小于18且score不低于60,并且late不超过2次,输出Qualified;否则输出Not qualified。要求使用关系表达式和逻辑表达式完成判断。 #include <stdio.h> int main() { int age, score, late; scanf("%d%d%d", &age, &score, &late); if (age >= 18 && score >= 60 && late <= 2) printf("Qualified "); else printf("Not qualified "); return 0; } 【答案】参考程序如上。评分点:正确输入age、score和late;分别写出age>=18、score>=60和late<=2;使用&&连接三个条件;if-else结构及输出文字正确。 【解析】三个要求必须同时满足,因此使用逻辑与连接。边界值18岁、60分和2次均属于合格范围,分别使用>=、>=和<=,其他情况进入else。 原创精品资源学科网独家享有版权,侵权必究! 学科网(北京)股份有限公司 学科网(北京)股份有限公司 学科网(北京)股份有限公司 $ 编写说明:2027版山东省春季高考统一考试软件与应用技术类《考纲百套卷》,依据《软件与应用技术类专业知识考试标准》编写。本专辑涵盖三个部分,第一部分为知识训练卷,第二部分为专题训练卷,第三部分为课程综合卷。本专辑共85份试卷,其中知识训练卷48份、专题训练卷25份、课程综合卷12份。 本试卷是第51卷,为专题训练卷,按“分支程序设计”专题范围和要求编写。具体内容为:(1)理解关系表达式和逻辑表达式;(2)掌握条件语句(if语句)和多分支语句(switch语句)的用法。 山东省春季高考统一考试 软件与应用技术类《考纲百套卷》 第51卷 专题训练——分支程序设计 (考试时间:45分钟 满分:100分) 一、选择题(共20题,每题3分,共60分) 1.若a=6、b=6、c=3,表达式a==b&&b>c的值是(  ) A.0 B.3 C.1 D.6 2.在if(value)中,若value=-1,条件按( )处理 A.假值 B.真值 C.字符值 D.错误值 3.若m=5、n=5,表达式m!=n||m<n的值是(  ) A.0 B.1 C.5 D.-1 4.若x=4、y=7,表达式x+y==11&&y>6的值是(  ) A.0 B.4 C.7 D.1 5.若p=0、q=8,表达式!(p==0)||q>5的值是(  ) A.1 B.0 C.5 D.8 6.表达式a==b||c!=d&&e>f中,先组合计算的是(  ) A.关系判断 a==b B.或运算 a==b||c!=d C.与运算 c!=d&&e>f D.局部判断 d&&e 7.执行int r=3+4==7;后,r的值是(  ) A.0 B.3 C.7 D.1 8.若score=72、bonus=0,执行int flag=score>=60&&bonus==0;后flag为(  ) A.0 B.1 C.60 D.72 9.若n=7,表达式n%2==0的值是(  ) A.0 B.1 C.2 D.7 10.若m=4、n=9、k=2,表达式m<n&&k==2的值是(  ) A.0 B.2 C.1 D.9 11.若retry=0、backup=1,表达式retry==1||backup==1的值是(  ) A.0 B.1 C.2 D.-1 12.下列哪个条件可判断整数n是否为3的倍数(  ) A.n/3==0 B.n*3==0 C.n-3==0 D.n%3==0 13.若ready=1、error=1,表达式ready==1&&error==0的值是(  ) A.0 B.1 C.-1 D.2 14.若x=3、y=2,表达式!(x<3||y>2)的值是(  ) A.0 B.2 C.1 D.3 15.若count=5、limit=5,表达式count>=limit||limit==0的值是(  ) A.0 B.5 C.10 D.1 16.若a=8、b=3,表达式a/b>2&&a%b==2的值是(  ) A.1 B.0 C.2 D.8 17.表示正偶数n的条件表达式是(  ) A.n>0&&n%2==0 B.n>=0||n%2==0 C.n<0&&n%2!=0 D.n==2||n==0 18.表达式2<3<1在C语言中的值是(  ) A.1 B.2 C.3 D.0 19.若x=10,表达式!(x==10)||x>10的值是(  ) A.1 B.10 C.0 D.不确定 20.若u=5、v=3,表达式u>v&&!(u==5)的值是(  ) A.1 B.0 C.3 D.5 二、简答题(共2题,每题10分,共20分) 1.阅读程序,写出输出结果,并说明low、high和inside的值。 #include <stdio.h> int main() { int low = 3, high = 9, x = 9; int inside = x >= low && x <= high; printf("%d %d %d ", low, high, inside); return 0; } 2.阅读程序,写出输出结果,并说明pass和retry的值。 #include <stdio.h> int main() { int score = 58, absent = 0; int pass = score >= 60 && absent == 0; int retry = !pass; printf("%d %d ", pass, retry); return 0; } 三、案例分析题(共1题,共10分) 1.某程序判断包裹是否需要人工复核:重量超过20千克,或者易碎标志fragile为1时输出Review,否则输出Normal。程序条件有误,请修改。 #include <stdio.h> int main() { int weight = 24, fragile = 0; if (weight >= 20 && fragile == 0) printf("Review "); else printf("Normal "); return 0; } 四、综合应用题(共1题,共10分) 1.编写程序:输入整数age、score和late。若age不小于18且score不低于60,并且late不超过2次,输出Qualified;否则输出Not qualified。要求使用关系表达式和逻辑表达式完成判断。 #include <stdio.h> int main() { int age, score, late; scanf("%d%d%d", &age, &score, &late); if (age >= 18 && score >= 60 && late <= 2) printf("Qualified "); else printf("Not qualified "); return 0; } 原创精品资源学科网独家享有版权,侵权必究! 学科网(北京)股份有限公司 学科网(北京)股份有限公司 学科网(北京)股份有限公司 $

资源预览图

第51卷 分支程序设计 专题训练卷 《C语言程序设计知识》山东省(春季高考)《软件与应用技术类考纲百套卷》
1
第51卷 分支程序设计 专题训练卷 《C语言程序设计知识》山东省(春季高考)《软件与应用技术类考纲百套卷》
2
所属专辑
由于学科网是一个信息分享及获取的平台,不确保部分用户上传资料的 来源及知识产权归属。如您发现相关资料侵犯您的合法权益,请联系学科网,我们核实后将及时进行处理。