当前位置:首页 >> 其它课程 >> 选择结构二

选择结构二


第五章 选择结构
一、程序运行题
1. 仔细阅读以下程序 , 指出程序的运行结果 #include<stdio.h> main() { int a , b ; a = b = 5 ; if(a==1) if(b==5) {a+=b ; printf("a=%d\n ",a) ; } else {a-=b ; printf(&qu

ot;a=%d\n",a) ; } printf("a+b=%d",a+b) ; } 2. 仔细阅读以下程序 , 指出程序的运行结果 #include<stdio.h> main() { int i =1 , j = 0 ,m = 1 ,n =2 ; switch(i++) {case 1 : m++ ;n++ ; case 2 : switch(++j) {case 1 : m++ ; case 2 : n++ } case 3 : m++ ;n++ ; break ; case 4 :m++ ;n++ ;} printf("m=%d,n=%d" , m ,n) ; } 3. 仔细阅读以下程序 , 指出程序的运行结果

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\n",m); } 4. 仔细阅读以下程序 , 指出程序的运行结果 main() { int i=1,j=1,k=2; if((j++||k++)&&i++) printf("%d,%d,%d\n",i,j,k); } 5. 若运行时输入: 3 5 /< 回车 >, 则以下程序的运行结果 是 。 main() { float x,y; char o; double r; scanf(“%f %f %c”,&x,&y,&o); switch(o) { case ‘+’: r=x+y; break; case ‘-’: r=x-y; break; case ‘*’: r=x*y; break;

case ‘/’: r=x/y; break; } printf(“%f”,r); } 6. 仔细阅读以下程序 , 指出程序的运行结果 main() { int a=5,b=4,c=3,d=2; if(a>b>c) printf("%d\n",d); else if((c-1>=d)==1) printf("%d\n",d+1); else printf("%d\n",d+2); } 7. 仔细阅读以下程序 , 指出程序的运行结果 main() { int n=0,m=1,x=2; if(!n)x-=1; if(m)x-=2; if(x)x-=3; printf("%d\n",x); } 8. 以下程序段的运行结果是 。 int x=1,y=0; switch(x) { case 1: switch(y) { case 0: printf(“**1**\n”); break; case 1: printf(“**2**\n”); break; }

case 2: printf(“**3**\n”); } 9. 以下程序的运行结果是 。 main() { int a=2,b=7,c=5; switch(a>0) {case 1: switch(b<0) {case 1: printf(“@”); break; case 2: printf(“!”); break; } case 0: switch(c==5) {case 0: printf(“*”); break; case 1: printf(“#”); break; default: printf(“#”); break; } default: printf(“&”); } printf(“\n”);}

二、程序填空题
1. 当 x 的取值在[1,10]和[200,210]范围内为真,否则 为假”的表达式是 2. 执行以下语句后 a 的值为 b 的值为 int a,b,c; a=b=c=1; ++a||++b&&++c; 3. 请将以下语句改写成 switch 语句。 if((s>0)&&(s<=10)) if((s>=3)&&(s<=6)) x=2; else if((s>1)||(s>8)) x=3; else x=1; else x=0;

4. 以下程序用以计算 y 年 m1 月 d1 日与同年的 m2 月 d2 日之 间的天数(m2>=m1) ,并打印计算结果。若 m1=m2 且 d1=d2 则算 1 天。在闰年时,2 月有 29 天。闰年的年号由以下方 式确定:该年号能被 4 整除但不能被 100 整除,或者该年 号能被 400 整除则是闰年。例如:输入 1997,2,27,3,10< 回车>时,输出为 12。表明从 1997 年 2 月 27 日到 3 月 10 日共有 12 天。请在【】内填入正确内容。 main() { int y,m1,d1,m2,d2: int i,d; scanf(“%d,%d,%d,%d,%d”,&y,&m1,&d1,&m2,&d2); y=( )?1:0; d=0-d1; for(i=m;i<m2;i++) switch(i) { case 1: case 3: case 5: case 7: case 8: case 10: case 12: d+=31; break; case 2: d=d+28+y; case 4: case 6: case 9: case 11: ; } printf(“%d”,d+d2+1); } 5. 根据以下嵌套的 if 语句所给条件,填写 switch 语句,使

它完成相同的功能。假设 mark 的取值在 1~100 之间。 ) if 语句: if(mark<60) k=1; else if(mark<70) k=2; else if(mark<80) k=3; else if(mark<90) k=4; else if(mark<=100) k=5; switch 语句: switch( ) { k=1; break; case 6: k=2; break; case 7: k=3; break; case 8: k=4; break; k=5; } 6. 据以下函数关系,对输入的每个 x 值,计算出相应的 y 值。 请在程序的【】内填入正确内容。 x y x<0 0 0<=x<10 x 10<=x<20 10 20<=x<40 -0.5x+20 main() { int x,c,m; float y; scanf(“%d”,&x); if( ) c=-1; else c= ; switch(c) { case -1: y=0; break;

case 0: case 1: case 2: case 3: default:

y=x; break; y=10; break; y=-0.5x+20; break; y=-2;

} if( ) printf(“y=%f”,y); else printf(“error\n”); } } 7. 以下程序计算某年某月有几天。其中判别闰年的条件是: 能被 4 整除但不能被 100 整除的年是闰年,能被 400 整除 的年也是闰年。请在【】内填入正确内容。 main() {int yy,mm,len; printf(“year,month=”); scanf(“%d %d”,&yy,&mm); switch(mm) {case 1: case 3: case 5: case 7: case 8: case 10: case 12: ; break; case 4: case 6: case 9: case 11: len=30; break; case 2: if(yy%4==0&&yy%100!=0||yy%400==0) ; else ; break; default: printf(“input error”); break; }

printf(“the length of %d %d is %d\n”,yy,mm,len); } 8. 某个自动加油站有‘a’ , ‘b’ , ‘c’三种汽油,单价分别为 1.50,1.35,1.18 (元/千克) , 也提供了 “自己加” 或“协 助加”两个服务等级,这样用户可以得到 5%或 10%的优 惠。本程序针对用户输入加油量 a,汽油品种 b 和服务类 型 c( ‘f’――自动, ‘m’――自己, ‘e’――协助) ,输 出应付款 m。请在【】内填入正确内容。 main() { float a,r1,r2,m; char b,c; scanf(“%f %c %c”,&a,&b,&c); switch(b) { case ‘a’: r1=1.5; break; case ‘b’: ; break; case ‘c’: r1=1.18; break; } switch(c) {case ‘f’: r2=0; break; case ‘m’: r2=0.05; break; case : r2=0.1; break; } m= ; printf(“%f”,m); } 9. 假设奖金税率如下(a 代表奖金,r 代表税率) a<500 r=0% 500<=a<1000 r=5% 1000<=a<2000 r=8% 2000<=a<3000 r=10% 3000<=a r=15% 以下程序对输入的一个奖金数,求税率和应交税款以及实 得奖金数(扣除奖金税后) 。题中 r 代表税率,t 代表实得奖金 数。请在【】内填入正确内容。

main() { float a,r,t,b; int c; scanf(“%f”,&a); if(a>=3000) c=6; else c= ; switch(c) { case 0: r=0; break; case 1: r=0.05; break; case 2: case 3: ; break; case 4: case 5: r=0.1; break; case 6: r=0.15; break; } t=a*r; b=a-t; printf(“r=%f,t=%f,b=%f”,r,t,b); } 10. 输入三角形的三边 a,b,c,判断 a,b,c 能否构成三角 形,如果能够构成三角形则判断为何种类型的三角形:等 腰三角形、等边三角形、直角三角形、等腰直角三角形、 一般三角形。 说明: 一般三角形:两条连长之和大于第三条边长 等腰三角形:两条边长的平方和等于第三条边长的平方 #include <stdio.h> #include <math.h> main(){ float a,b,c; printf(“请输入三角形边长:\n”); scanf(“%f%f%f”,&a,&b,&c); if( ① ) printf(“不能构成三角形\n”); else if(② )

if((a==b)||(b==c)||(c==a)) printf(“等腰直角三角形\n”); else printf(“直角三角形\n”); else if( ③ ) printf(“等边三角形\n”); else if( ④ ) printf(“等腰三角形\n”); else printf(“一般三角形\n”); } 11. 以下程序根据输入的三角形的三边判断是否能组成 三角形,若可以则输出它的面积和三角形的类型。请在【】 内填入正确内容。 #include “math.h” main() { float a,b,c; float s,area; scanf(“%f %f %f”,&a,&b,&c); if( ) { s=(a+b+c)/2; area=sqrt(s*(s-a)*(s-b)*(s-c)); printf(“%f”,area); if( ) printf(“等边三角形”); else if( ) printf(“等腰三角形”); else if((a*a+b*b==c*c)||(a*a+c*c==b*b)||(b*b+c*c==a*a)) printf(“直角三角形”); else printf(“一般三角形”); } else printf(“不能组成三角形”); }

12. 某服装店经营套服,也单件出售。若买的不少于 50 套,每套 80 元;不足 50 套的每套 90 元;只买上衣每件 60 元;只买裤子每条 45。以下程序的功能是读入所买上衣 c 和裤子 t 的件数,计算应付款 m。请在【】内填入正确内 容。 main() { int c,t,m; printf(“input the number of coat and trousers you want buy:\n”); scanf(“%d %d”,&c,&t); if( ) if(c>=50) m=c*80; else m=c*90; else if( ) if(t>=50) m=t*80+(c-t)*60; else m=t*90+(c-t)*60; else if( ) m=c*80+(t-c)*45; else m=c*90+(t-c)*45; printf(“%d”,m); } 13. 编写程序,求三个数的最小值。 14. 编写程序,判断一个整数是否既是 2 的倍数、又是 3 的倍数。 15. 输入一个字符,编写程序判断该输入字符的种类:数 字、字母或其它。 16. 编一程序,对于给定的一个百分制成绩,输出相应的 五分制成绩。 设: 90 分以上为 ‘A’ , 80~89 分为 ‘B’ , 70~ 79 分为 ‘C’ , 60~69 分为 ‘D’ , 60 分以下为 ‘E’ (用 switch 语句实现) 。 17. 编程实现以下功能: 读入两个运算数 (data1 和 data2) 及一个运算符(op) ,计算表达式 data1 op data2 的值, 其中 op 可为+,-,*,/(用 switch 语句实现) 。


更多相关文档:

指导书_实验二+选择结构

指导书_实验二+选择结构_电脑基础知识_IT/计算机_专业资料。c语言实验实验二、 选择结构 一、调试程序训练注:本训练中没有必须要完成的任务,但请大家务必掌握这种...

选择结构二

2.2选择结构 18页 免费如要投诉违规内容,请到百度文库投诉中心;如要提出功能问题或意见建议,请点击此处进行反馈。 选择结构二 c语言c语言隐藏>> 第六课 if(条件...

1.2.2选择结构

进一步理解流程图的概念,了解选择结构的概念,能运用流程图表达选择结构; 2. 能识别简单的流程图所描述的算法 【预备知识】 二、微课直播间【问题情境】 【自主...

顺序结构与选择结构(2)

15 级数学必修三第二章算法导学案(2)课题§2 算法框图的基本结构及设计 2.1 顺序结构与选择结构 主编人:侯建军 班级: 姓名: 小组: (3)执行步骤的方式:先...

2.1顺序结构与选择结构

2.1 顺序结构与选择结构 教学三维目标: 1、熟悉各种程序框的功能和作用。 2...计算 判断某一条件是否成立 连接程序框 (二)应用示例 (1)例 1:尺规作图,...

实验二 选择结构

实验二 选择结构_数学_自然科学_专业资料。实验二 选择结构一、实验目的 ……二、实验题目 1、教材 P63 编程题第一题 2、教材 P63 编程题第二题 3、教材 P63...

指导书_实验二+选择结构

实验二、 选择结构 一、调试程序训练注:本训练中没有必须要完成的任务,但请大家务必掌握这种调试程序的 方法,并在今后的程序调试中积极使用这种方法,因为它对于我们...

C语言 实验二、选择结构程序设计解答

C语言 实验二、选择结构程序设计解答_工学_高等教育_教育专区。C语言 实验二、选择结构程序设计解答 实验二 选择结构程序设计 一、实验目的 1. 掌握关系表达式和...

实验4-2-选择结构

实验4-2 选择结构程序设计(二) 1 【实验目的】(1)学会正确使用运算符和逻辑表达式 (2)熟练掌握 if 语句的三种结构 【实验要求】(1)掌握运算符的优先级和结合...

2.3.2选择结构

选择结构”是信息技术选修《算法与程序设计》第二章第三节的内容,共分 三课时,本课为第二课时。该节内容是在学生已经学习掌握了 VB 相关基础知识, 已经学习...
更多相关标签:
switch选择结构二总结 | 选择疑问句的结构 | 选择结构 | 如何选择路面结构类型 | 选择结构 4 2 5 | 数据结构选择题 | 选择结构程序设计 | c语言选择结构 |
网站地图

文档资料共享网 nexoncn.com copyright ©right 2010-2020。
文档资料共享网内容来自网络,如有侵犯请联系客服。email:zhit325@126.com