第三章 分支结构程序设计《编程语言基础-C语言》(高教版第五版)章节过关卷

2025-03-04
| 2份
| 16页
| 256人阅读
| 6人下载

资源信息

学段 中职
学科 职教专业课
课程 C语言程序设计
教材版本 C语言程序设计高教版(第五版)全一册
年级 高一
章节 第3章 分支结构程序设计
类型 作业-单元卷
知识点 分支结构
使用场景 同步教学-单元练习
学年 2025-2026
地区(省份) 全国
地区(市) -
地区(区县) -
文件格式 ZIP
文件大小 253 KB
发布时间 2025-03-04
更新时间 2025-03-04
作者 糖醋排骨009
品牌系列 学易金卷·阶段检测模拟卷
审核时间 2025-03-04
下载链接 https://m.zxxk.com/soft/50787455.html
价格 3.00储值(1储值=1元)
来源 学科网

内容正文:

《编程语言基础——C语言》高等教育出版社(第五版) 第三章 分支结构程序设计 章节过关卷 考试时间:90分钟 满分:100分 姓名 班级 学号 1、 单项选择题(本题共20小题,每题2分,共40分) 1. 能够正确表示a和b同时为正或同时为负的逻辑表达式是( ) A.(a>=0||b>=0)&&(a<0||b<0) B.(a=b>0)&&(a+b<=0) C.a*b>0 D.(a>=0&&b>=0)&&(a<0&&b<0) 2. 逻辑运算符两侧运算对象的数据类型( ) A.只能是0或1 B.只能是0或非0正数 C.只能是整型或字符型数据 D.可以是任何类型的数据 3. 设x、y、z是int型变量,且x=3,y=4,z=5,则下列表达式值为0的是( ) A.‘x’&&‘y’ B.x<=y C.x||y+z&&y-z D.!((x<y)&&!z||1) 4. 设有语句:int x=43,y=0;char ch=‘A ’;则表达式:(x>=y&&ch<‘B’&&!y)的值是( ) A.0 B.1 C.真 D.假 5. 若希望当A的值为奇数时,表达式的值为“真”;当A的值为偶数时,表达式的值为“假’。则以下不能满足要求的表达式是( ) A.A%2==1 B.!(A%2) C.!(A%2==0) D.A%2 6. 以下不正确的if语句形式是( ) A.if(x>y&&x!=y); B.if(x==y) x+=y; C.if(x!=y) scanf(“%d”,&x) else scanf(“%d”,y); D.if (x<y) {x++;y++;} 7. 已有定义语句:int x=1,y=2,z=3;,执行以下语句后x,y,z的值是( ) if(x>y) z=x;x=y;y=z; A.x=1,y=2,z=3 B. x=2,y=3,z=3 C. x=2,y=3,z=1 D. x=2,y=3,z=2 8. 如果c为字符型变量,判断c是否为空格不能使用( )(已知空格ASCII码为32)。 A.if(c==‘32’) B.if(c==32) C.if(c==‘\40’) D.if(c==‘ ’) 9. b为整型变量,不能正确表达数学关系10<b<15的C语言表达式是( ) A.10<b<15 B.b==11||b==12||b==13||b==14 C.b>10&&b<15 D.!(b<=10&&!(a>=15) 10. 设a=2,b=3,c=4,则表达式(a<b)+c的值是( ) A.0 B.1 C.4 D.5 11. 下列关于switch语句叙述正确的一项是( ) A.break语句只能用于switch语句 B.在switch语句中必须使用default C.break语句必须与switch语句中的case配对使用 D.在switch语句中,可以选择是否使用break语句 12. 下列程序的执行结果是( ) main( ) {int x=0,y=1,z=0; if(x=z=y) x=3; printf(“%d,%d ”,x,z);} A.3,0 B.0,0 C.0,1 D.3,1 13. 运行下面程序时,若从键盘输入“5”,则程序的输出结果是( ) main( ) {int a;scanf(“%d”,&a); if(a++>5) printf(“%d ”,a); else printf(“%d ”,a- -);} A.7 B.6 C.5 D.4 14. 执行以下程序段后的输出是( ) int i=-1; if(i<=0) printf(“&&&&&”) else printf(“$$$$$”); A.&&&&& B. $$$$$ C.&&&&&$$$$$ D.有语法错误,不能正确执行 15. 以下程序的输出结果是( ) mian( ) { int m=5; if(++m>5) if(m++>5) printf(“%d ”,m+6); else printf(“%d ”,m- - ); else printf(“%d ”,- -m);} A.13 B.10 C.8 D.5 16. 以下程序的运行结果是( ) #include<stdio.h> main( ) {int a,b,d=241; a=d/100%9; b=(-1)&&(-1); printf(“%d,%d”,a,b); } A.6,1 B.2,0 C.6,0 D.2,1 17. 当a=1,b=3,c=5,d=4时,执行以下程序段后x的值是( ) if(a<b) if(c<d) x=1; else if(a<c) if(b<d) x=2; else x=3; else x=6; else x=7; A.1 B.2 C.3 D.6 18. 以下程序的输出结果是( ) #include<stdio.h> main( ) { int x=2,y=-1,z=2; if(x<y) if(y<0) z=0; else z=z+1; printf(“%d ”,z); } A.0 B.1 C.2 D.3 19. 为了避免在嵌套的条件语句if-else中产生二义性,C语言规定else子句总是与( )配对。 A.缩排位置相同的if B.其之后最近的if C.同一行上的if D.其之前最近且未配对的if 20. 执行下面程序后,运行结果是( ) #include<stdio.h> mian( ) {int x=41,y=1; if(x%3==0&&x%7==0) {y+=x;printf(“y=%d ”,y);} else {y=x;printf(“y=%d ”,y);}} A.y=41 B.y=43 C.y=42 D.y=1 二、填空题(本题共10小题,每题2分,共20分) 21. C语言中用________表示逻辑值“真”,用________表示逻辑值“假”。 22. 在C语言中逻辑运算符中,__________优先级高于算数运算符。 23. switch语句后面的表达式可以是_________或字符型表达式。 24. case子句中的常量值应为_______________,同一个switch语句中,任意两个case后面常量表达式的值不能相同。C语言运行多个case共用一个执行语句。 25. 选择结构可以分为单分支、__________、__________三种情况。 26. 得到整型变量a的十位数字的表达式为_______________。 27. 设a为整型变量,则表达式:(a=3,a-1||- -a,2*a)的值是__________。 28. 已有定义:int x=3,y=4,z=5;,则表达式:!(x+y)+z-1&&y+z/2的值是___________。 29. 执行以下语句后a的值为_______________。 int a=5,b=6,w=1,x=2,y=3,z=4; (a=w>x)&&(b=y>z); 30. 设ch是char型变量,值为‘A’,则表达式ch=(ch>=‘A’&&ch<=‘Z’)?ch+32:ch的值是_______________ 三、程序运行结果题(本题共5小题,每题4分,共20分) 31. 以下程序的运行结果是【 】。 #include<stdio.h> main( ) {int a=100,x=10,y=20,k1=5,k2=0; if(x<y) if(y!=10) if(!k1) a=1; else if(k2) a=10; a=-1; printf(“%d ”,a);} 32. 以下程序的运行结果是【 】。 #include<stdio.h> main( ) { int x=1,y=0,a=0,b=0; switch(x) { case 1:switch(y) {case 0:a++;break; case 1:b++;break; } case 2:a++;b++;break; case 3:a++;b++;} printf(“a=%d,b=%d ”,a,b);} 33. 以下程序的运行结果是【 】。 #include<stdio.h> main( ) { int a=45,b=40,c=50,d; d=a>30? b:c; switch(d) | case 30 : printf("% d,",a); case 40 : printf("% d,",b); case 50 : printf("% d,",c); default : printf("#"); 34. 以下程序的运行结果是【 】。 #include<stdio.h> main() { int a=15,b=21,m=0; switch(a%3) { case 0: m++;break; case 1: m++; switch(b%2) {default:m++; case 0: m++;break;}} printf("% d ",m);} 35. 以下程序的运行结果是【 】。 #include<stdio.h> main() {int k=1,m=0; int a=10,b=10; switch(k) {case 1: switch(m) { case 0:a+=1;break; case 1:b++;break;} case 2: a++;b++;break; case 3: a++;b++;} printf("a=%d,b=%d",a,b);} 四、程序填空题(本题共2小题,每空4分,共20分) 36. 以下程序的功能是:输出x,y,z三个数中的最大者。请填空。 #include<stdio.h> main( ) {int x=4,y=6,z=7; int u,v; if(【1】) u=x; else u=y; if(【2】) v=u; else v=z; printf(“v=%d”,v);} 37. 某服装店经营套服且单件出售。若一次购买不少于50套,则每套80元;若不足50套,则每套90元;只买上衣每件60元;只买裤子每条45元。以下程序的功能是读入所买上衣c和裤子t的件数,计算应付款数m。请填空。 #include<stdio.h> mian( ) {int c,t,m; scanf(“%d%d”,&c,&t); if(【1】) if(c>=50) m=c*80; else m=c*90; else if(【2】) if(t>=50) m=t*80+(c-t)*60; else m=t*90+(c-t)*60; else if(【3】) m=c*80+(t-c)*45; else m=c*90+(t-c)*45; printf(“%d”,m);} 原创精品资源学科网独家享有版权,侵权必究! 学科网(北京)股份有限公司 $$ 《编程语言基础——C语言》高等教育出版社(第五版) 第三章 分支结构程序设计 章节过关卷 考试时间:90分钟 满分:100分 姓名 班级 学号 1、 单项选择题(本题共20小题,每题2分,共40分) 1. 能够正确表示a和b同时为正或同时为负的逻辑表达式是( ) A.(a>=0||b>=0)&&(a<0||b<0) B.(a=b>0)&&(a+b<=0) C.a*b>0 D.(a>=0&&b>=0)&&(a<0&&b<0) 答案:C 2. 逻辑运算符两侧运算对象的数据类型( ) A.只能是0或1 B.只能是0或非0正数 C.只能是整型或字符型数据 D.可以是任何类型的数据 答案:D 3. 设x、y、z是int型变量,且x=3,y=4,z=5,则下列表达式值为0的是( ) A.‘x’&&‘y’ B.x<=y C.x||y+z&&y-z D.!((x<y)&&!z||1) 答案:D 4. 设有语句:int x=43,y=0;char ch=‘A ’;则表达式:(x>=y&&ch<‘B’&&!y)的值是( ) A.0 B.1 C.真 D.假 答案:B 5. 若希望当A的值为奇数时,表达式的值为“真”;当A的值为偶数时,表达式的值为“假’。则以下不能满足要求的表达式是( ) A.A%2==1 B.!(A%2) C.!(A%2==0) D.A%2 答案:B 6. 以下不正确的if语句形式是( ) A.if(x>y&&x!=y); B.if(x==y) x+=y; C.if(x!=y) scanf(“%d”,&x) else scanf(“%d”,y); D.if (x<y) {x++;y++;} 答案:C 。缺少分号。 7. 已有定义语句:int x=1,y=2,z=3;,执行以下语句后x,y,z的值是( ) if(x>y) z=x;x=y;y=z; A.x=1,y=2,z=3 B. x=2,y=3,z=3 C. x=2,y=3,z=1 D. x=2,y=3,z=2 答案:B。注意if的范围。 8. 如果c为字符型变量,判断c是否为空格不能使用( )(已知空格ASCII码为32)。 A.if(c==‘32’) B.if(c==32) C.if(c==‘\40’) D.if(c==‘ ’) 答案:A 9. b为整型变量,不能正确表达数学关系10<b<15的C语言表达式是( ) A.10<b<15 B.b==11||b==12||b==13||b==14 C.b>10&&b<15 D.!(b<=10&&!(a>=15) 答案:A 10. 设a=2,b=3,c=4,则表达式(a<b)+c的值是( ) A.0 B.1 C.4 D.5 答案:D 11. 下列关于switch语句叙述正确的一项是( ) A.break语句只能用于switch语句 B.在switch语句中必须使用default C.break语句必须与switch语句中的case配对使用 D.在switch语句中,可以选择是否使用break语句 答案:D 12. 下列程序的执行结果是( ) main( ) {int x=0,y=1,z=0; if(x=z=y) x=3; printf(“%d,%d ”,x,z);} A.3,0 B.0,0 C.0,1 D.3,1 答案:D 13. 运行下面程序时,若从键盘输入“5”,则程序的输出结果是( ) main( ) {int a;scanf(“%d”,&a); if(a++>5) printf(“%d ”,a); else printf(“%d ”,a- -);} A.7 B.6 C.5 D.4 答案:B 14. 执行以下程序段后的输出是( ) int i=-1; if(i<=0) printf(“&&&&&”) else printf(“$$$$$”); A.&&&&& B. $$$$$ C.&&&&&$$$$$ D.有语法错误,不能正确执行 答案:D。if语句行后缺少分号。 15. 以下程序的输出结果是( ) mian( ) { int m=5; if(++m>5) if(m++>5) printf(“%d ”,m+6); else printf(“%d ”,m- - ); else printf(“%d ”,- -m);} A.13 B.10 C.8 D.5 答案:A 16. 以下程序的运行结果是( ) #include<stdio.h> main( ) {int a,b,d=241; a=d/100%9; b=(-1)&&(-1); printf(“%d,%d”,a,b); } A.6,1 B.2,0 C.6,0 D.2,1 答案:D 17. 当a=1,b=3,c=5,d=4时,执行以下程序段后x的值是( ) if(a<b) if(c<d) x=1; else if(a<c) if(b<d) x=2; else x=3; else x=6; else x=7; A.1 B.2 C.3 D.6 答案:B。注意if与else的配对。 18. 以下程序的输出结果是( ) #include<stdio.h> main( ) { int x=2,y=-1,z=2; if(x<y) if(y<0) z=0; else z=z+1; printf(“%d ”,z); } A.0 B.1 C.2 D.3 答案:C 19. 为了避免在嵌套的条件语句if-else中产生二义性,C语言规定else子句总是与( )配对。 A.缩排位置相同的if B.其之后最近的if C.同一行上的if D.其之前最近且未配对的if 答案:D 20. 执行下面程序后,运行结果是( ) #include<stdio.h> mian( ) {int x=41,y=1; if(x%3==0&&x%7==0) {y+=x;printf(“y=%d ”,y);} else {y=x;printf(“y=%d ”,y);}} A.y=41 B.y=43 C.y=42 D.y=1 答案:A 二、填空题(本题共10小题,每题2分,共20分) 21. C语言中用________表示逻辑值“真”,用________表示逻辑值“假”。 答案:1 0 22. 在C语言中逻辑运算符中,__________优先级高于算数运算符。 答案:逻辑非 23. switch语句后面的表达式可以是_________或字符型表达式。 答案:整型 24. case子句中的常量值应为_______________,同一个switch语句中,任意两个case后面常量表达式的值不能相同。C语言运行多个case共用一个执行语句。 答案:整型值或字符型 25. 选择结构可以分为单分支、__________、__________三种情况。 答案:二分支、多分支 26. 得到整型变量a的十位数字的表达式为_______________。 答案:a/10%10 27. 设a为整型变量,则表达式:(a=3,a-1||- -a,2*a)的值是__________。 答案:3 28. 已有定义:int x=3,y=4,z=5;,则表达式:!(x+y)+z-1&&y+z/2的值是___________。 答案:1 29. 执行以下语句后a的值为_______________。 int a=5,b=6,w=1,x=2,y=3,z=4; (a=w>x)&&(b=y>z); 答案:0 30. 设ch是char型变量,值为‘A’,则表达式ch=(ch>=‘A’&&ch<=‘Z’)?ch+32:ch的值是_______________ 答案:a 三、程序运行结果题(本题共5小题,每题4分,共20分) 31. 以下程序的运行结果是【 】。 #include<stdio.h> main( ) {int a=100,x=10,y=20,k1=5,k2=0; if(x<y) if(y!=10) if(!k1) a=1; else if(k2) a=10; a=-1; printf(“%d ”,a);} 答案:-1 32. 以下程序的运行结果是【 】。 #include<stdio.h> main( ) { int x=1,y=0,a=0,b=0; switch(x) { case 1:switch(y) {case 0:a++;break; case 1:b++;break; } case 2:a++;b++;break; case 3:a++;b++;} printf(“a=%d,b=%d ”,a,b);} 答案:a=2,b=1 33. 以下程序的运行结果是【 】。 #include<stdio.h> main( ) { int a=45,b=40,c=50,d; d=a>30? b:c; switch(d) | case 30 : printf("% d,",a); case 40 : printf("% d,",b); case 50 : printf("% d,",c); default : printf("#"); 答案:40,50,# 34. 以下程序的运行结果是【 】。 #include<stdio.h> main() { int a=15,b=21,m=0; switch(a%3) { case 0: m++;break; case 1: m++; switch(b%2) {default:m++; case 0: m++;break;} } printf("% d ",m);} 答案:1 35. 以下程序的运行结果是【 】。 #include<stdio.h> main() {int k=1,m=0; int a=10,b=10; switch(k) {case 1: switch(m) { case 0:a+=1;break; case 1:b++;break;} case 2: a++;b++;break; case 3: a++;b++;} printf("a=%d,b=%d",a,b);} 答案:a=12,b=11 四、程序填空题(本题共2小题,每空4分,共20分) 36. 以下程序的功能是:输出x,y,z三个数中的最大者。请填空。 #include<stdio.h> main( ) {int x=4,y=6,z=7; int u,v; if(【1】) u=x; else u=y; if(【2】) v=u; else v=z; printf(“v=%d”,v);} 答案: 【1】x>y 【2】u>z 37. 某服装店经营套服且单件出售。若一次购买不少于50套,则每套80元;若不足50套,则每套90元;只买上衣每件60元;只买裤子每条45元。以下程序的功能是读入所买上衣c和裤子t的件数,计算应付款数m。请填空。 #include<stdio.h> mian( ) {int c,t,m; scanf(“%d%d”,&c,&t); if(【1】) if(c>=50) m=c*80; else m=c*90; else if(【2】) if(t>=50) m=t*80+(c-t)*60; else m=t*90+(c-t)*60; else if(【3】) m=c*80+(t-c)*45; else m=c*90+(t-c)*45; printf(“%d”,m);} 答案: 【1】c==t 【2】c>t 【3】c>=50 原创精品资源学科网独家享有版权,侵权必究! 学科网(北京)股份有限公司 $$

资源预览图

第三章  分支结构程序设计《编程语言基础-C语言》(高教版第五版)章节过关卷
1
第三章  分支结构程序设计《编程语言基础-C语言》(高教版第五版)章节过关卷
2
第三章  分支结构程序设计《编程语言基础-C语言》(高教版第五版)章节过关卷
3
所属专辑
由于学科网是一个信息分享及获取的平台,不确保部分用户上传资料的 来源及知识产权归属。如您发现相关资料侵犯您的合法权益,请联系学科网,我们核实后将及时进行处理。