使用switch语句设计多分支程序结构.docx
25.使用switch语句设计多分支程序结构一、填空SS:1 .e1.se总是与它的if配对,但.可以用调整e1.se与if的配对顺序.2 .关系运算是对两个数据项进行的运算。3 .在C语言中.表达式的值能判定“真”与“假”,C语音规定用值表示真.用值表示仪。4 .C语吉中关系运算符中优先徼高的一组电,优先级低的一组是.5 .若a=7.b=6.c=12.则表达式a+bc&&a>b的ft为.6 .SWiIeh后的表达式的值的类型是或:Case后的衣达式是.7 .写出变量X的值在"0,201和-20,-10范困内时(ft为式的表达式_.8 .若行a=3,b=4.c=5.表达式!(a+b>+c-1.&&b"H:,2的值为.衣达式a+b>c&&b=()的值为.表达式"a+b)&&!C1.1.1.的值为。9 .C语言提供了三种逻辑运算符,10 .设S是int变址.表达式s%211s+D%2的ft为.11 .当m=2.n=1.a=1.b=2.c=3时,执行d=(m=a!=b>&&(n=b>t)后,变量m、n的值分别为、-二、选择时(每个2分.总30分)I.printR'*%d',.!1.-三1.):语句输出的值为()A)IB)0C)输出伯不确定D)有语法错2.以下选项中不能正确判断a为偶数的表达式足()A)a%2=0B>!a%2!=OC)a2*2-a=0D)!(a%2)3,下列表达式值为假的是()A)O=OB)x=(5-2)/2C)>=15%3D)x=(5-2y2>=15%34 .关于if后的表达式,F述说法正确的是<>A)只能是逻辑表达式B只能是关系友达式C)可以是任何合法C表达式D)表达式可以不用小括号括起来5 .以下先项中不能正确判断X为供数的表达式是()A)x%2=0B)!x%2!=0C)x2*2=XD)!(x%2)6 .有inta=3.b=4.c=5:.则表达式!<x=a)&&(y=b)&&0的值为()A)0B)1.02D)37 .a=1.,b=2c=2执行a+<b(c=b2)表达式后,ab.c的值分别为()A)a=1.b=2.c=3B)a=2.b=2.c=0C)a=2,b=2.c=1.D)a=2.b=2.c=28 .下列表达式不正价的是()A)n>7B)ch!-,n,C)y-I5%3DVgooT-“good”9 .他表示X在I1.1.oI和20.30范围内为真.否则为假的是(>A)(x>=1)&&(x<=10)&&(x>=20)&&(x<=30)B)(x>=1.)(x<=IO)(x>=2OX(x<=3O)C)(x>=I)(x<=10>|(x>=20)&&(x<=30)D)(Q=I)IKXV=Io)&&(Q=20)KXV=30)10 .下列运算符优先级最高的一个是)AKBHC)&&D)!=11 .遗辑运算符两侧运算的时象的数据类鞭()A)只能是0或1B)只能是0或非0掖数C)只能是整型或字符型数据D)可以是任何类型的数据12 .执行下列程序段后,屏份输出为<>inta=7,b=8,c=9;if(a>c)a=b.b=cx=a:e1.sea=c:c=b:t>=a:Prin1.优d.%d%d'a.b.c):A)9.8.9B)9.9.8C)9,8,8D)9.7.913 .有以下程序,程序的怆出结果是()nain()Iintm=5;if(+m>5)if1.(m+>5)printf(*%d'n*m÷5);e1.seprintfti*%dnm-);e1.sePrintn%df,m÷5);)A)8B)5C)10D)1214 .当a=1.b三3c=5d=4时,执行下面一段程序后,X的值为if(a<b)if(c<d)x=1.:e1.seif(a<C)if(b<d)x=2;e1.sex=3:e1.sex=4e1.sex=5;A)1.B)2C)3D)415 .以下不正确的语句是()A)if(x>y);B)iftx=y)&&(x;=0)x+=y:C)if(x!=y)WanfVfc%d",&x):e1.sescanf1.4t%d'y);D)if(x<y)x+÷y+:三、写程序结果(年个4分,总20分1 .若从惯盘输入58,则以下程序的怆出结果是#inc1.ude°stdio.h*'main<)(i11a;scan*%d,a);printt,%d'a);ifta<50)p11ntf1.%d,a);if(a>40)Prirnfr%da);if<a>3O)Primfr%d',a);)2 .以下程序的运行结果是。ihdc,tdio.h''main()(in(Xw:x=1.;y=2:z=3;x=y-<=xx+y!=z:p11ntft*%d.%d*x.y);)3 .main(intx,a,b:x=1.;a=2:b=3;switch(x)(case1.:a一;break:case2:b+÷break;case3:a+tb+;)rintf(,a=%d,b=%dn*,a>b);)程序运行的结果4 .miiinO(int&二15b=21.switch(a%3)(case0:m÷+;break:case1:三+÷switch(b%2)(defau1.t:m*+:case0:+÷:break;Jprintf(*m%dn*.m):程序运行后的输出结果是5.运行下列程序的结果是CMinc1.udcstdio.h*main()(ints=51.;Switch(JuHO)(caseIxase3:CaSe5:m=1.:case 6: m=3;case 7: m=5hrcak:case 8: n=6break;case 9: m=7brcak;defau1.t:m=0:print,m=%d,m);四、程序填空1.以下程序足计算某年某月有几天的程序,按要求进行成学填空.main()(intyear,month,day:scanft*%d%d*',);switch()break;(caseI:case3:case5:case7:case8:caseIOzcase12:day=3kcase4:case6:case9:caseII:;break;ease2:if()tycar%4=0)day=29:e1.seday=28:break:print11"%d1.¾d'ud'ycar,month,day);I2.根据以下函数的关系,对输入的每个x值,计算出相应的假。输入X求yx<00O<=x<IOX10<=x<20!020<=x<40-O.5x+2Onain()(intx.c.m;11oaty;scanf(fc%d,x);if()c=-1;e1.sec=:SWiICh(ease-I:y=0;break;easeO:y=x;break;caseky=IO;break;ease2:ease3:y=-0.54x+20:break:defau1.t:y=-2:printf(fcfcy-%y);e1.seprinttr,crrornM);五、编程:70.89分.C等:1 .用SWitCh编写程序实现对帔入的学生成绩评定等级A等:9()100分B6O69分,其余为D等。2 .f1.switch编程实现从健盘输入一个整数、一个运算符和另一个整数.然后计算谕出两个整数按运算符组成的衣达式的值。25.使用switch语句设计多分支程序结构答案一、填空题4.>=,<,<=,!=5.06.整型字符型整型或字符型常做表达式I.上面的、最近的、未配时花括号2.大小关系比较3.关系非OO7.x>=1.()&&x<=2O|x>=-IO&&x<=-2O8.10I9.与,或,非10.1二、选择题IB2.B3.C4.C5.B6.A11.D12.A13.D14.B15.B三、写程序结果1.5858582.0J3.a=1.,b=3四、程序填空7.D8.D9.C10.B4.m=1.5.m=5I.yea,nnthmonthday=302.x<0x/10y=-2yea4=0year%I00!=0五、编程1.main()(inta;charb:scanfC1.%dw,a);SWitCh®10)(caseIOxase9=,break;CasC8:CasC7:b='Bbrcak;case6:b="C'brcak:2.11uin()(inta,b,c;chard:scanf('t%d%c%doa,db);swicch(d)(case4÷c=a+bbreak;case*-c=a-b;brcak;case>4c=a4bzbrcak:defau1.cb=,D*;)printfC*%c,b):caseTc=akbNak;IprintfC*%d'c);)