任务9:if语句 《编程语言-C语言》45分钟专题训练

| 2份
| 22页
| 113人阅读
| 3人下载

内容正文:

湖南省职教高考《编程语言—C语言》45分钟专题训练专辑,共43份试卷。试卷命题与高考紧密相关,精选具有代表性和典型性的高考常考题。旨在帮助学生系统地复习和巩固计算机类理论知识,熟悉高考题型和命题规律,提高解题能力和应试技巧,为高考取得优异成绩打下坚实的基础,本训练卷适用于即将参加计算机类高考的学生。与本专辑配套的还有湖南省职教高考《计算机应用基础》《计算机组装与维护》《计算机网络技术》45分钟专题训练专辑,欢迎同学和老师们下载使用。 《编程语言—C语言》 项目二: 分支结构程序设计 第9卷: if语句 时间:45分钟 总分:100分 班级___________ 姓名__________ 学号__________ 成绩________ 一、选择题(共23小题,每小题2分,共46分) 1.已有定义:int a=10,b=20,c=30;,执行语句:if(a>b) c=a;a=b;b=c; printf("%d,%d,%d",a,b,c);后的输出结果是( ) A.10,20,30 B.20,30,10 C.20,30,20 D. 20,30,30 2.以下程序段中,与表达式:k=a>b?(b>c?1:0):0;功能相同的是( ) A.if(a>b&&b>c) k=1;else k=0; B.if(a>b||b>c) k=1;else k=0; C.if(a<=b) k=0;else if(b<=c) k=1; D.if(a>b) k=1;else if(b>c) k=1;else k=0; 3.设以下变量均已正确定义并赋值,则下列不正确的语句是( ) A.if(x>y) x++; B.if(x=y)&&(x!=0) x+=y; C.if(x!=y) x++;else y++; D.if(x>y) {x--;y--;} 4.已有定义:int a=4,b=5,t=0;执行语句:if(a<b){t=a;a=b;b=t;}后,a,b的值分别为( ) A.5,4 B.4,5 C.5,0 D.0,5 5.执行以下程序段后的输出结果是( ) {int x=7;if(x++>7) printf(“%d ”,x); else printf(“%d ”,--x);} A.6 B.7 C.8 D.9 6.执行下列程序段的输出结果是( ) {int a=6,b=6; if(a>5) a-=1;b+=1; else a+=1;b-=1; printf("a=%d,b=%d",a,b); A.5,7 B.a=5,b=7 C.a=5,b=6 D.编译时出错 7.若有定义:int a=4,b=6,c=8;,则执行语句:if(a>b) c=a;a=b;b=c;后,a,b,c,的值为( ) A.a=4,b=6,c=8 B.a=6,b=8,c=8 C.a=6,b=4,c=8 D.a=6,b=8,c=4 8.执行下列程序段之后,a的值为( ) {int x,y,z,a;x=y=z=0;a=25; if(!x) a--;else if(y);if(z) a=9;else a=10; A.24 B.9 C.25 D.10 9.执行下列程序段之后的输出结果是( ) int x=1,y=2,z=2; if(x=y-z) printf("***"); else printf("$$$"); A.输出:*** B.有语法错误,编译出错 C.输出:$$$ D.编译通过,连接出错,程序不能运行 10.执行下列程序段之后的输出结果是( ) int x=0,y=0,z=0;if(++x>0||++y>0) ++z;printf("%d,%d,%d",x,y,z); A.0,0,0 B.0,1,1 C.1,0,1 D.1,1,1 11.下列条件语句中,输出结果与其他语句不同的是( ) A.if(x) printf(“%d”,a); else printf(“%d”,b); B.if(x==0) printf(“%d”,b); else printf(“%d”,a); C.if(x!=0) printf(“%d”,a); else printf(“%d”,b); D.if(x==0) printf(“%d”,a); else printf(“%d”,b); 12.执行以下程序段后的输出结果是( ) int x=10,y=20;if(!x)y++;else if(x==0) if(x) y+=2;else y+=3;printf("%d",y); A.23 B.22 C.21 D.20 13.执行以下程序段的输出结果是( ) int a=1,b=2,c=3;if(c=a) printf("%d",c);else printf("%d",b); A.0 B.1 C.2 D.3 14.执行以下程序段的输出结果是( ) int n=2;if(n++%3) printf("&");else printf("$"); A.& B.$ C.有语法错导致编译出错 D.无语法错但连接出错 15.执行以下程序段的输出结果是( ) int x=8,y=-10,z=2;if(x<y) if(y<0) z=2;else z=-2;printf("%d",z); A.2 B.-2 C.8 D.-10 16.执行以下程序段的输出结果是( ) main() {int i=-1;if(i<=0) printf("**** ") else printf("%%%% ");} A.**** B.%%%%c C.%%%% D.有语法错,不能正确执行 17.以下不正确的if语句形式是( ) A.if(x>y&&x!=y); B.if(x!=y) x+=y; C.if(x==y) printf(“%d”,x) else printf(“%d”,y); D.if(x<y){x++;y++;} 18.在C语言中,紧跟在关键字if后一对圆括号里的表达式( ) A.只能用逻辑表达式 B.只能用关系表达式 C.只能用逻辑表达式或关系表达式 D.可以是任意表达式 19.以下语法正确的if语句是( ) A.if(x>0) printf(“%f”,x) else printf(“%f”,-x); B.if(x>0){x=x+y;printf(“%f”,x);}else printf(“%f”,-x); C.if(x>0){x=x+y;printf(“%f”,x);};else printf(“%f”,-x); D.if(x>0){x=x+y;printf(“%f”,x)}else printf(“%f”,-x); 20.执行以下程序段的输出结果是( ) int a=10,b=50,c=30;if(a>b) a=b,b=c; c=a;printf("a=%d,b=%d,c= %d ",a,b,c); A.a=10,b=30,c=10 B.a=10,b=50,c=10 C.a=50,b=30,c=10 D.a=50,b=30,c=50 21.执行以下程序段的输出结果是( ) int x=1; if(x=2)printf("OK"); else if(x<2)printf("%d ",x); else printf("Quit"); A.0 B.1 C.OK D.Quit 22.以下程序段在运行时输入:5<回车>,输出结果是( ) int a,b;scanf("%d",&a);b=0; if(a!=0) if(a>0) b=1;else b=-1;printf("a=%d,b=%d ",a,b); A.a=5,b=1 B.a=5,b=5 C.a=1,b=1 D. a=5,b=1 23.执行以下程序段后,a,b,c的输出结果是( ) int a=9,b=8,c=7;if(a>c){a=b;b=c;c=a;}else a=c;c=b;b=a; A.9,8,8 B.9,8,7 C.8,8,7 D.8,7,8 二、程序运行结果题(本题共7小题,每题3分,共21分) 24.以下程序的运行结果是( ) #include <stdio.h> #include<conio.h> main() {int t,h,m; scanf("%d",&t); h=(t/100)%12; if(h==0) h=12; printf("%d:",h); m=t%100; if(m<10) printf("0"); printf("%d",m); if(t<1200||t==2400) printf("AM"); else printf("PM"); getch();} 运行时输入:1845<回车> 25.以下程序的运行结果是( ) #include <stdio.h> #include<conio.h> main() {int x; scanf("%d",&x); if(x++>5) printf("%d ",x); else printf("%d ",x--); getch();} 运行时输入:8<回车> 26.以下程序的运行结果是( ) #include <stdio.h> #include<conio.h> main() {int a,b,c,d; a=b=c=0; d=30; if(!a)d--; else if(b); if(c) d=3; else d=4; printf("%d ",d); getch();} 27.以下程序的运行结果是( ) #include <stdio.h> #include<conio.h> main() {int a,b; scanf("%d",&a); if(a<0) b=-1; else if(a==0) b=0; else b=1; printf("a=%d,b=%d ",a,b); getch();} 运行时输入:-8<回车> 28.以下程序的运行结果是( ) #include <stdio.h> #include<conio.h> main() {char ch; scanf("%c",&ch); if(ch>='A'&&ch<='Z')ch=ch+32; else if(ch>='a'&&ch<='z')ch=ch-32; printf("%c",ch); getch();} 运行时输入:A<回车> 29.以下程序的运行结果是( ) #include <stdio.h> #include<conio.h> main() {int a,b,c,d,x; a=c=0;b=1;d=34; if(a) d=d-10; else if(!b) if(!c) x=15; else x=25; printf("%d ",d); getch();} 30.以下程序的运行结果是( ) #include <stdio.h> #include<conio.h> main() {int x,y=-2,z=0; if((z=y)<0) x=4; else if(y==0) x=5; else x=6; printf("%d %d ",x,z); if(z=(y==0)) x=5;x=4; printf("%d %d ",x,z); if(x=z=y) x=4; printf("%d %d ",x,z); getch();} 三、阅读程序,修改程序中的错误,不得增行或删行,也不得更改程序结构。请指出错误代码所在的行号,并给出该行修改后的程序代码。(每处3分,共9分) 31.下列程序的功能是:输入x的值,根据下列分段函数求解y的值。程序中共有三处错误。 L1 #include <stdio.h> L2 #include<conio.h> L3 main() L4 {int x,y; L5 printf("input x:"); L6 scanf("%d",&x); L7 if(-5<=x<0) y=x; L8 else if(x=0) y=x-1; L9 else if((x>0)&&(x<10)) y=x+2; L10 else if y=2*x+4; L11 printf("x=%d,y=%d ",x,y); L12 getch();} 四、程序填空。按照题目要求,将正确的内容填入相应位置,使得程序完整(每空3分,共24分) 32.以下程序的功能是:某邮局对邮寄包裹有如下规定,若包裹的长、宽、高任一尺寸超过1m或重量超过30kg,不予邮寄;对可以邮寄的包裹 每件收手续费0.2元,再加上根据表1按不同重量weigh计算的邮资。请填空。 表格 1 重量/kg 邮资/元 weigh<10 0.80 10< weigh≤20 0.75 20< weigh≤30 0.7 #include <stdio.h> #include<conio.h> main() {float len,weigh,hei,wid,mon,r; scanf("%f%f%f%f",&len,&wid,&hei,&weigh); if(len>1||wid>1||hei>1||weigh>30) 【1】; else if(weigh<10) r=0.8; else if(weigh<=20) 【2】; else if(weigh<=30) r=0.7; if(【3】) printf("不予邮寄!! "); else {【4】; printf("%f",mon);} getch();} 33.下面程序的功能是:根据表2中给定的函数关系,对输入的每个x值计算出相应的y值。请填空。 表格 2 x y 2<x≤10 x(x+2) -1<x≤2 2x x≤-1 x-1 #include <stdio.h> #include<conio.h> main() {int x,y; scanf("%d",&x); if(【1】) y=x*(x+2); else if(【2】) y=2*x; else if(x<=-1) 【3】; else y=-1; if(【4】) printf("%d",y); else printf("error");getch();} 原创精品资源学科网独家享有版权,侵权必究! 学科网(北京)股份有限公司 $$ 湖南省职教高考《编程语言—C语言》45分钟专题训练专辑,共43份试卷。试卷命题与高考紧密相关,精选具有代表性和典型性的高考常考题。旨在帮助学生系统地复习和巩固计算机类理论知识,熟悉高考题型和命题规律,提高解题能力和应试技巧,为高考取得优异成绩打下坚实的基础,本训练卷适用于即将参加计算机类高考的学生。与本专辑配套的还有湖南省职教高考《计算机应用基础》《计算机组装与维护》《计算机网络技术》45分钟专题训练专辑,欢迎同学和老师们下载使用。 《编程语言—C语言》 项目二: 分支结构程序设计 第9卷: if语句 时间:45分钟 总分:100分 班级___________ 姓名__________ 学号__________ 成绩________ 一、选择题(共23小题,每小题2分,共46分) 1.已有定义:int a=10,b=20,c=30;,执行语句:if(a>b) c=a;a=b;b=c; printf("%d,%d,%d",a,b,c);后的输出结果是( ) A.10,20,30 B.20,30,10 C.20,30,20 D. 20,30,30 【答案】D 2.以下程序段中,与表达式:k=a>b?(b>c?1:0):0;功能相同的是( ) A.if(a>b&&b>c) k=1;else k=0; B.if(a>b||b>c) k=1;else k=0; C.if(a<=b) k=0;else if(b<=c) k=1; D.if(a>b) k=1;else if(b>c) k=1;else k=0; 【答案】A 3.设以下变量均已正确定义并赋值,则下列不正确的语句是( ) A.if(x>y) x++; B.if(x=y)&&(x!=0) x+=y; C.if(x!=y) x++;else y++; D.if(x>y) {x--;y--;} 【答案】B 4.已有定义:int a=4,b=5,t=0;执行语句:if(a<b){t=a;a=b;b=t;}后,a,b的值分别为( ) A.5,4 B.4,5 C.5,0 D.0,5 【答案】A 5.执行以下程序段后的输出结果是( ) {int x=7;if(x++>7) printf(“%d ”,x); else printf(“%d ”,--x);} A.6 B.7 C.8 D.9 【答案】B 6.执行下列程序段的输出结果是( ) {int a=6,b=6; if(a>5) a-=1;b+=1; else a+=1;b-=1; printf("a=%d,b=%d",a,b); A.5,7 B.a=5,b=7 C.a=5,b=6 D.编译时出错 【答案】D 7.若有定义:int a=4,b=6,c=8;,则执行语句:if(a>b) c=a;a=b;b=c;后,a,b,c,的值为( ) A.a=4,b=6,c=8 B.a=6,b=8,c=8 C.a=6,b=4,c=8 D.a=6,b=8,c=4 【答案】B 8.执行下列程序段之后,a的值为( ) {int x,y,z,a;x=y=z=0;a=25; if(!x) a--;else if(y);if(z) a=9;else a=10; A.24 B.9 C.25 D.10 【答案】D 9.执行下列程序段之后的输出结果是( ) int x=1,y=2,z=2; if(x=y-z) printf("***"); else printf("$$$"); A.输出:*** B.有语法错误,编译出错 C.输出:$$$ D.编译通过,连接出错,程序不能运行 【答案】C 10.执行下列程序段之后的输出结果是( ) int x=0,y=0,z=0;if(++x>0||++y>0) ++z;printf("%d,%d,%d",x,y,z); A.0,0,0 B.0,1,1 C.1,0,1 D.1,1,1 【答案】C 11.下列条件语句中,输出结果与其他语句不同的是( ) A.if(x) printf(“%d”,a); else printf(“%d”,b); B.if(x==0) printf(“%d”,b); else printf(“%d”,a); C.if(x!=0) printf(“%d”,a); else printf(“%d”,b); D.if(x==0) printf(“%d”,a); else printf(“%d”,b); 【答案】D 12.执行以下程序段后的输出结果是( ) int x=10,y=20;if(!x)y++;else if(x==0) if(x) y+=2;else y+=3;printf("%d",y); A.23 B.22 C.21 D.20 【答案】D 13.执行以下程序段的输出结果是( ) int a=1,b=2,c=3;if(c=a) printf("%d",c);else printf("%d",b); A.0 B.1 C.2 D.3 【答案】B 14.执行以下程序段的输出结果是( ) int n=2;if(n++%3) printf("&");else printf("$"); A.& B.$ C.有语法错导致编译出错 D.无语法错但连接出错 【答案】A 15.执行以下程序段的输出结果是( ) int x=8,y=-10,z=2;if(x<y) if(y<0) z=2;else z=-2;printf("%d",z); A.2 B.-2 C.8 D.-10 【答案】A 16.执行以下程序段的输出结果是( ) main() {int i=-1;if(i<=0) printf("**** ") else printf("%%%% ");} A.**** B.%%%%c C.%%%% D.有语法错,不能正确执行 【答案】B。缺少分号,有语法错。 17.以下不正确的if语句形式是( ) A.if(x>y&&x!=y); B.if(x!=y) x+=y; C.if(x==y) printf(“%d”,x) else printf(“%d”,y); D.if(x<y){x++;y++;} 【答案】C 18.在C语言中,紧跟在关键字if后一对圆括号里的表达式( ) A.只能用逻辑表达式 B.只能用关系表达式 C.只能用逻辑表达式或关系表达式 D.可以是任意表达式 【答案】D 19.以下语法正确的if语句是( ) A.if(x>0) printf(“%f”,x) else printf(“%f”,-x); B.if(x>0){x=x+y;printf(“%f”,x);}else printf(“%f”,-x); C.if(x>0){x=x+y;printf(“%f”,x);};else printf(“%f”,-x); D.if(x>0){x=x+y;printf(“%f”,x)}else printf(“%f”,-x); 【答案】B。注意分号。 20.执行以下程序段的输出结果是( ) int a=10,b=50,c=30;if(a>b) a=b,b=c; c=a;printf("a=%d,b=%d,c= %d ",a,b,c); A.a=10,b=30,c=10 B.a=10,b=50,c=10 C.a=50,b=30,c=10 D.a=50,b=30,c=50 【答案】B 21.执行以下程序段的输出结果是( ) int x=1; if(x=2)printf("OK"); else if(x<2)printf("%d ",x); else printf("Quit"); A.0 B.1 C.OK D.Quit 【答案】C 22.以下程序段在运行时输入:5<回车>,输出结果是( ) int a,b;scanf("%d",&a);b=0; if(a!=0) if(a>0) b=1;else b=-1;printf("a=%d,b=%d ",a,b); A.a=5,b=1 B.a=5,b=5 C.a=1,b=1 D. a=5,b=1 【答案】D 23.执行以下程序段后,a,b,c的输出结果是( ) int a=9,b=8,c=7;if(a>c){a=b;b=c;c=a;}else a=c;c=b;b=a; A.9,8,8 B.9,8,7 C.8,8,7 D.8,7,8 【答案】C 二、程序运行结果题(本题共7小题,每题3分,共21分) 24.以下程序的运行结果是( ) #include <stdio.h> #include<conio.h> main() {int t,h,m; scanf("%d",&t); h=(t/100)%12; if(h==0) h=12; printf("%d:",h); m=t%100; if(m<10) printf("0"); printf("%d",m); if(t<1200||t==2400) printf("AM"); else printf("PM"); getch();} 运行时输入:1845<回车> 【答案】6:45PM 25.以下程序的运行结果是( ) #include <stdio.h> #include<conio.h> main() {int x; scanf("%d",&x); if(x++>5) printf("%d ",x); else printf("%d ",x--); getch();} 运行时输入:8<回车> 【答案】9 26.以下程序的运行结果是( ) #include <stdio.h> #include<conio.h> main() {int a,b,c,d; a=b=c=0; d=30; if(!a)d--; else if(b); if(c) d=3; else d=4; printf("%d ",d); getch();} 【答案】4 27.以下程序的运行结果是( ) #include <stdio.h> #include<conio.h> main() {int a,b; scanf("%d",&a); if(a<0) b=-1; else if(a==0) b=0; else b=1; printf("a=%d,b=%d ",a,b); getch();} 运行时输入:-8<回车> 【答案】a=-8,b=-1 28.以下程序的运行结果是( ) #include <stdio.h> #include<conio.h> main() {char ch; scanf("%c",&ch); if(ch>='A'&&ch<='Z')ch=ch+32; else if(ch>='a'&&ch<='z')ch=ch-32; printf("%c",ch); getch();} 运行时输入:A<回车> 【答案】a 29.以下程序的运行结果是( ) #include <stdio.h> #include<conio.h> main() {int a,b,c,d,x; a=c=0;b=1;d=34; if(a) d=d-10; else if(!b) if(!c) x=15; else x=25; printf("%d ",d); getch();} 【答案】34 30.以下程序的运行结果是( ) #include <stdio.h> #include<conio.h> main() {int x,y=-2,z=0; if((z=y)<0) x=4; else if(y==0) x=5; else x=6; printf("%d %d ",x,z); if(z=(y==0)) x=5;x=4; printf("%d %d ",x,z); if(x=z=y) x=4; printf("%d %d ",x,z); getch();} 【答案】4 -2 4 0 4 -2 三、阅读程序,修改程序中的错误,不得增行或删行,也不得更改程序结构。请指出错误代码所在的行号,并给出该行修改后的程序代码。(每处3分,共9分) 31.下列程序的功能是:输入x的值,根据下列分段函数求解y的值。程序中共有三处错误。 L1 #include <stdio.h> L2 #include<conio.h> L3 main() L4 {int x,y; L5 printf("input x:"); L6 scanf("%d",&x); L7 if(-5<=x<0) y=x; L8 else if(x=0) y=x-1; L9 else if((x>0)&&(x<10)) y=x+2; L10 else if y=2*x+4; L11 printf("x=%d,y=%d ",x,y); L12 getch();} 答案: L7 if(x>=-5&&x<0) y=x; L8 else if(x==0) y=x-1; L10 else if(x>=10) y=2*x+4; 四、程序填空。按照题目要求,将正确的内容填入相应位置,使得程序完整(每空3分,共24分) 32.以下程序的功能是:某邮局对邮寄包裹有如下规定,若包裹的长、宽、高任一尺寸超过1m或重量超过30kg,不予邮寄;对可以邮寄的包裹 每件收手续费0.2元,再加上根据表1按不同重量weigh计算的邮资。请填空。 表格 1 重量/kg 邮资/元 weigh<10 0.80 10< weigh≤20 0.75 20< weigh≤30 0.7 #include <stdio.h> #include<conio.h> main() {float len,weigh,hei,wid,mon,r; scanf("%f%f%f%f",&len,&wid,&hei,&weigh); if(len>1||wid>1||hei>1||weigh>30) 【1】; else if(weigh<10) r=0.8; else if(weigh<=20) 【2】; else if(weigh<=30) r=0.7; if(【3】) printf("不予邮寄!! "); else {【4】; printf("%f",mon);} getch();} 答案:①r=-1 ②r=0.75 ③r==-1 ④mon=weigh*r+0.2 33.下面程序的功能是:根据表2中给定的函数关系,对输入的每个x值计算出相应的y值。请填空。 表格 2 x y 2<x≤10 x(x+2) -1<x≤2 2x x≤-1 x-1 #include <stdio.h> #include<conio.h> main() {int x,y; scanf("%d",&x); if(【1】) y=x*(x+2); else if(【2】) y=2*x; else if(x<=-1) 【3】; else y=-1; if(【4】) printf("%d",y); else printf("error"); getch();} 答案:①x>2&&x<=10 ②x>-1&&x<=2 ③y=x-1 ④y!=-1 原创精品资源学科网独家享有版权,侵权必究! 学科网(北京)股份有限公司 $$

资源预览图

任务9:if语句 《编程语言-C语言》45分钟专题训练-第1页
1
任务9:if语句 《编程语言-C语言》45分钟专题训练-第2页
2
任务9:if语句 《编程语言-C语言》45分钟专题训练-第3页
3

由于学科网是一个信息分享及获取的平台,不确保部分用户上传资料的 来源及知识产权归属。如您发现相关资料侵犯您的合法权益,请联系学科网,我们核实后将及时进行处理。