最新3微机练习选择结构有答案.docx
- 文档编号:3645995
- 上传时间:2022-11-24
- 格式:DOCX
- 页数:15
- 大小:20.69KB
最新3微机练习选择结构有答案.docx
《最新3微机练习选择结构有答案.docx》由会员分享,可在线阅读,更多相关《最新3微机练习选择结构有答案.docx(15页珍藏版)》请在冰豆网上搜索。
最新3微机练习选择结构有答案
一、选择题
1.逻辑运算符两侧运算对象的数据类型。
A.只能是0或1
B.只能是0或非0正数
C.只能是整型或字符型数据
D.可以是任何类型的数据
2.下列关系表达式中结果为假的是。
A.0!
=1B.2<=8
C.(a=2*2)==2D.y=(2+2)==4
3.下列运算符中优先级最低的是。
A.?
:
B.+=C.>=D.==
4.能正确表示“当x的取值在[1,10]和[200,210]范围内为真,否则为假”的表达式是。
A.(x>=1)&&(x<=10)&&(x>=200)&&(x<=210)
B.(x>=1)||(x<=10)||(x>=200)||(x<=210)
C.(x>=1)&&(x<=10)||(x>=200)&&(x<=210)
D.(x>=1)||(x<=10)&&(x>=200)||(x<=210)
5.判断char型变量ch是否为大写字母的正确表达式是。
A.‘A’<=ch<=‘Z’B.(ch>=‘A’)&(ch<=‘Z’)
C.(ch>=‘A’)&&(ch<=‘Z’)D.(ch>=‘A’)AND(ch<=‘Z’)
6.设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 z||1) 7.设有说明语句: intx=43,y=0;charch=‘A’;则表达式(x>=y&&ch<‘B’&&! y)的值是。 A.0B.语法错C.1D.假 8.若希望当A的值为奇数时,表达式的值为“真”;当A的值为偶数时,表达式的值为“假”。 则以下不能满足要求的表达式是。 A.A%2==1B.! (A%2==0) C.! (A%2)D.A%2 9.设有说明语句: inta=1,b=2,c=3,d=4,m=2,n=2;,则执行(m=a>b)&&(n=c>d)后n的值为。 A.1B.2C.3D.0 10.以下程序的运行结果是 #include intmain() {inta,b,d=241; a=d/100%9; b=(-1)&&(-1); printf("%d,%d",a,b); return0; } A.6,1B.2,1C.6,0D.2,0 11.以下不正确的if语句形式是。 A.if(x>y&&x! =y); B.if(x==y)x+=y; C.if(x! =y)scanf(“%d”,&x)elsescanf(“%d”,&y); D.if(x 12.在C语言中,紧跟在关键字if后有一对圆括号里的表达式。 A.只能用逻辑表达式 B.只能用关系表达式 C.只能用逻辑表达式或关系表达式 D.可以是任意表达式 13.已知intx=10,y=20,z=30;执行以下语句后x、y、z的值是。 if(x>y)z=x;x=y;y=z; A.x=10,y=20,z=30B.x=20,y=30,z=30 C.x=20,y=30,z=10D.x=20,y=30,z=20 14.以下程序。 #include intmain() {inta=5,b=0,c=0; if(a=b+c)printf("***\n"); elseprintf("$$$\n"); return0; } A.有语法错误不能通过编译B.可以通过编译但不能通过连接 C.输出***D.输出$$$ 15.当a=1、b=3、c=5、d=4时,执行以下程序段后x的值是。 if(a if(c else if(a if(b elsex=3; elsex=6; elsex=7; A.1B.2C.3D.6 16.以下程序的输出是。 #include intmain() {intx=2,y=-1,z=2; if(x if(y<0)z=0; elsez+=1; printf("%d\n",z); return0; } A.3B.2C.1D.0 17.若有条件表达式(exp)? a++: b--,则以下表达式中能完全等价于表达式(exp)的是。 A.(exp==0)B.(exp! =0)C.(exp==1)D.(exp! =1) 18.若运行时为变量x输入12,则以下程序的运行结果是。 #include intmain() {intx,y; scanf("%d",&x); y=x>12? x+10: x-12; printf("%d\n",y); return0; } A.0B.22C.12D.10 19.若w、x、y、z、m均为int型变量,则执行下面语句后的m值是。 w=1;x=2;y=3;z=4; m=(w w: x; m=(m m: y; m=(m m: z; A.1B.2C.3D.4 20.若w=1、x=2、y=3、z=4,则条件表达式w w: y y: z的值为。 A.4B.3C.2D.1 21.C语言中的switch语句形式如下所示,关键字switch后一对圆括号中表达式exp的类型。 switch(exp) {case常量表达式1: 语句1; …… case常量表达式n: 语句n; default: 语句n+1; } A.可以是整型或字符型B.只能是int类型 C.只能是字符型D.只能是整型或实型 答案: 1.D2.C3.B4.C5.C6.D7.C8.C9.B10.B 11.C12.D13.B14.D15.B16.B17.B18.A19.A20.D 21.A 二、填空题 1.当a=3,b=2,c=1时,表达式f=a>b>c的值是。 2.以下程序的运行结果是。 #include intmain() {intx=1,y,z; x*=3+2; printf("%d\t",x); x*=y=z=5; printf("%d\t",x); x=y==z; printf("%d\n",x); return0; } 3.在C语言中,表示逻辑“真”值用。 4.设y为int型变量,请写出描述“y是奇数”的表达式。 5.C语言提供的3种逻辑运算符是、、。 6.若x、y、z均为int型变量,则描述“x、y和z中有两个为负数”的表达式是。 7.设a、b、c均为int型变量且a=7.5,b=2,c=3.6,则表达式a>b&&c>a||a c>b的值是。 8.若有条件“2 9.设m、n、a、b、c均为int型变量且m=2,n=1,a=1,b=2,c=3,则执行表达式d=(m=a! =b)&&(n=b>c)后,n的值为;m的值为。 10.将以下两条if语句合并成一条if语句为。 语句1: if(a>b)scanf(“%d”,&a); elsescanf(“%d”,&b); 语句2: if(a<=b)m++; elsen++; 11.满足以下要求的逻辑表达式是。 要求: 判断坐标为(x,y)的点,在内径为a,外径为b,中心点在0点上的圆环内的表达式。 12.若运行以下程序时输入: 1605<回车>,则以下程序的运行结果是。 #include intmain() {intt,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\n"); elseprintf("PM\n"); return0; } 13.以下程序的功能是: 输入圆的半径r和运算标志m后,按照运算标志进行表中指定的计算。 请填空。 运算标志m 计算 a 面积 c 周长 b 二者均计算 #include #definepi3.14159 intmain() {charm; floatr,c,a; printf("inputmarkacorb&&r\n"); scanf("%c%f",&m,&r); if() {a=pi*r*r;printf("areais%f",a);} if() {c=2*pi*r;printf("circleis%f",c);} if() {a=pi*r*r;c=2*pi*r;printf("area&&circleare%f%f",a,c);} return0; } 14.若运行时输入: 5999<回车>,则以下程序的运行结果是(保留小数点后一位)。 #include intmain() {intx; floaty; scanf("%d",&x); if(x>=0&&x<=2999)y=18+0.12*x; if(x>=3000&&x<=5999)y=36+0.6*x; if(x>=6000&&x<=10000)y=54+0.3*x; printf("%6.1f",y); return0; } 15.以下程序的功能是: 输出x、y、z三个数中的最大者。 请填空。 #include intmain() {intx=4,y=6,z=7; int; if()u=x;elseu=y; if()v=u;elsev=z; printf("v=%d",v); return0; } 16.以下程序的功能是: 输入3个整数,按从大到小的顺序进行输出。 请填空。 #include intmain() {intx,y,z,c; scanf("%d%d%d",&x,&y,&z); if(){c=y;y=z;z=c;} if(){c=x;x=z;z=c;} if(){c=x;x=y;y=c;} printf("%d,%d,%d\n",x,y,z); return0; } 17.以下程序的功能是: 输入一个字符,如果它是一个大写字母,则把它变成小写字母;如果它是一个小写字母,则把它变成大写字母;其他字母不变。 请填空。 #include intmain() {charch; scanf("%c",&ch); if()ch=ch+32; elseif(ch>='a'&&ch<='z'); printf("%c\n",ch); return0; } 18.以下程序的运行结果是。 #include intmain() {inta,b,c,d,x; a=c=0; b=1; d=20; if(a)d=d-10; elseif(! b) if(! c)x=15; elsex=25; printf("%d\n",d); return0; } 19.下面程序的功能是: 根据表中给定的函数关系,对输入的每个x值计算出相应的y值。 请填空。 x y 2 x(x+2) -1 2x x≤-1 x-1 #include intmain() {intx,y; scanf("%d",&x); if()y=x*(x+2); elseif()y=2*x; elseif(x<=-1)y=x-1; else; if(y! =-1)printf("%d\n",y); elseprintf("error\n"); return0; } 20.若运行以下程序时输入: -2<回车>,则程序的输出结果是。 #include intmain() {inta,b; scanf("%d",&a); b=(a>=0)? a: -a; printf("b=%d\n",b); return0; } 21.若运行以下程序时输入字母为Q,则程序的运行结果是。 #include intmain() {charch; scanf("%c",&ch); ch=(ch>='A'&&ch<='Z')? (ch+32): ch; ch=(ch>='a'&&ch<='z')? (ch-32): ch; printf("%c\n",ch); return0; } 22.若运行以下程序时输入: 1992<回车>,则程序的运行结果是。 #include intmain() {inty,t; scanf("%d",&y); t=((y%4==0&&y%100! =0)||y%400==0)? 1: 0; if(t)printf("%dis",y); elseprintf("%disnot",y); printf("aleapyear\n"); return0; } 23.若x、y、z均已正确定义且x=1,y=2,z=3,则执行以下if语句后,x、y、z中的值分别是、、。 if(x>z) y=x;x=z;z=y; 24.将以下含有switch语句的程序段改写成对应的含有非嵌套if语句的程序段。 请填空。 含有switch语句的程序段: intx,y,m; y=(int)(x/10); switch(y) {case10: m=5;break; case9: m=4;break; case8: m=3;break; case7: m=2;break; case6: m=1;break; default: m=0; } 含有非嵌套if语句的程序段: intx,m; if()m=5; if(x<100&&x>=90)m=4; if(x<90&&x>=80)m=3; if(x<80&&x>=70)m=2; if(x<70&&x>=60)m=1; if() 25.根据以下给出的嵌套if语句,填写对应的switch语句,使它完成相同的功能。 (假设mark的取值在1—100之间。 ) if语句: if(mar<60)k=1; elseif(mark<70)k=2; elseif(mark<80)k=3; elseif(mark<90)k=4; elseif(mark<=100)k=5; switch语句: switch() {k=1;break; case6: k=2;break; case7: k=3;break; case8: k=4;break; k=5; } 26.以下程序的输出结果是。 #include intmain() {intx=1,y=0; switch(x) {case1: switch(y) {case0: printf("**1**\n");break; case2: printf("**2**\n");break; } case2: printf("**3**\n"); } return0; } 27.下面程序的功能是: 根据表4-6中给定的函数关系,对输入的每个x值,计算出相应的y值。 请填空。 x y x<0 0 0<=x<10 x 10<=x<20 10 20<=x<40 -0.5x+20 floaty; scanf("%d",&x); if()c=-1; elsec=; switch(c) {case-1: y=0;break; case0: y=x;break; 我们熟练的掌握计算机应用,我们可以在网上搜索一些流行因素,还可以把自己小店里的商品拿到网上去卖,为我们小店提供了多种经营方式。 case1: y=10;break; case2: (二)大学生对DIY手工艺品消费态度分析case3: y=-0.5*x+20;break; default: y=-2; } 1、你一个月的零用钱大约是多少? if()printf("y=%f\n",y); 据了解,百分之八十的饰品店都推出“DIY饰品”来吸引顾客,一方面顺应了年轻一代喜欢与众不同、标新立异的心理;另一方面,自制饰品价格相对较低,可以随时更新换代,也满足了年轻人“喜新厌旧”的需要,因而很受欢迎。 elseprintf("error\n"); return0; 调研课题: } (一)DIY手工艺品的“多样化”答案: 1.0 2.5□□□□□□□□25□□□□□□□□1 3.非0数字 我们大学生没有固定的经济来源,但我们也不乏缺少潮流时尚的理念,没有哪个女生是不喜欢琳琅满目的小饰品,珠光宝气、穿金戴银便是时尚的时代早已被推出轨道,简洁、个性化的饰品成为现代时尚女性的钟爱。 因此饰品这一行总是吸引很多投资者的目光。 然而我们女生更注重的是感性消费,我们的消费欲望往往建立在潮流、时尚和产品的新颖性上,所以要想在饰品行业有立足之地,又尚未具备雄厚的资金条件的话,就有必要与传统首饰区别开来,自制饰品就是近一两年来沿海城市最新流行的一种。 4.y%2==1 五、创业机会和对策分析5.&&||! (4)创新能力薄弱6.(x<0&&y<0)||(x<0&&z<0)||(y<0&&z<0) 7.0 8.(x>2&&x<3)||x<-10 9.01 7、你喜欢哪一类型的DIY手工艺制品? 10.if(a>b){scanf(“%d”,&a);n++;} else{scanf(“%d”,&b);m++;} 11.x*x+y*y>a*a&&x*x+y*y 12.4: 05PM 13.m==’a’ m==’c’ m==’b’ 14.3635.4 15.u,vx>yu>z 16.y 17.ch>=’A’&&ch<=’Z’ ch=ch-32 18.20 19.x>2&&x<=10x>-1&&x<=2y=-1 20.b=2 21.Q 22.1992isaleapyear 23.322 24.x>=100&&x<110 x<60||x>=110m=0; 25.mark/10 case0: case1: case2: case3: case4: case5: case9: case10: 26.**1** **3** 27.x<0 x/10 y! =-2
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 最新 微机 练习 选择 结构 答案