实验4选择结构参考答案Word下载.docx
- 文档编号:21165969
- 上传时间:2023-01-28
- 格式:DOCX
- 页数:19
- 大小:38.81KB
实验4选择结构参考答案Word下载.docx
《实验4选择结构参考答案Word下载.docx》由会员分享,可在线阅读,更多相关《实验4选择结构参考答案Word下载.docx(19页珍藏版)》请在冰豆网上搜索。
b?
a:
b;
max=max>
c?
max:
c;
maxis%d\n"
max);
if(a>
b)max=a;
elsemax=b;
if(c>
max)max=c;
b)
c)
max=a;
else
max=c;
if(b>
c)
max=b;
4、编写程序,实现从键盘上输入4个整数,并按从大到小顺序输出。
{inta,b,c,d,t;
%d,%d,%d,%d"
c,&
d);
if(a>
b){t=a;
a=b;
b=t;
c){t=a;
a=c;
c=t;
d){t=a;
a=d;
d=t;
}
if(b>
c){t=b;
b=c;
d){t=b;
b=d;
if(c>
d){t=c;
c=d;
sortedbysmalltolarge:
%d,%d,%d,%d\n"
a,b,c,d);
5、完成下列分段函数的计算:
分别使用if-elseif和if-if的嵌套结构来实
现。
方法一(用if——elseif结构表达)
conio.h>
{intx,y;
clrscr();
Pleaseinputvalueofx:
\n"
x);
if(x<
0)
y=1;
elseif(x<
=10)
y=x+1;
y=x*x+x+1;
x=%d,y=%d\n"
x,y);
方法二(用if——if结构表达)
6、输入x和a的值,按下列公式计算y的值。
程序代码一:
math.h>
{floatx,a,y;
printf("
\nPleaseinputx,a:
"
%f,%f"
x,&
if(x>
-a&
&
x<
a)/*或fabs(x)<
a*/
y=sqrt(a*a-x*x);
if(x==a||x==-a)/*或fabs(x)==a*/
y=0;
if(x<
-a||x>
a)/*或fabs(x)>
a*/
y=x-1;
x=%g,a=%g,y=%g\n"
x,a,y);
程序代码二:
if(fabs(x)<
a)/*或x>
-a&
x<
elseif(fabs(x)==a)/*或x==a||x==-a*/
程序代码三:
=a)
a)
y=sqrt(a*a-x*x);
7、编写一个程序,判断从键盘上输入的一个年份是否为闰年?
方法一:
{intyear;
Pleaseinputayear:
year);
if(year%4==0&
year%100!
=0||year%400==0)
%disaleapyear\n"
year);
%disnotaleapyear\n"
方法二:
(用ifif结构表达)
{intyear,leap;
if(year%4==0)
if(year%100==0)
if(year%400==0)
leap=1;
leap=0;
if(leap==1)
方法三:
(用ifelseif结构表达)
elseif(year%100==0)
elseif(year%4==0)
8、输入一个三位自然数num,判断其是否为水仙花数?
注:
一个3位自然数,各个数位的数字立方和等于该数本身,即称为水仙花数。
如:
153=13+53+33。
{intm,a,b,c;
Pleaseinputanum(100<
=num<
=999):
m);
a=m/100;
b=m/10%10;
c=m%10;
if(a*a*a+b*b*b+c*c*c==m)
%dissxhshu.\n"
m);
%disnotsxhshu.\n"
9、编写一个程序,实现对给出的一百分制成绩,输出相应的成绩等级。
即:
90分以上为’A’,80~89分为’B’,70~79分为’C’,60~69分为’D’,60分以下为’E’。
(用if结构)
{floatscore;
chargrade;
Pleaseinputascore(0<
=score<
=100):
%f"
score);
if(score>
=90)
grade='
A'
;
elseif(score>
=80)
B'
=70)
C'
=60)
D'
E'
scoreis%5.1f,gradeis%c.\n"
score,grade);
(用switch结构)
switch((int)(score/10))
{case10:
case9:
break;
case8:
case7:
case6:
default:
}
scoreis%5.1f,gradeis%c.\n"
10、输入华氏温度F,利用公式C=5/9*(F-32)转换成摄氏温度C,根据
转换结果C的不同值,按以下要求给出相应的提示。
C>
40时,打印“Hot”
30<
C≤40时,打印“Warm”
20<
C≤30时,打印“RoomTemperature”
10<
C≤20时,打印“Cool”
0<
C≤10时,打印“Cold”
C≤0时,打印“Freezing”
程序代码如下:
{floatf,c;
Inputthefahrenheittemperature:
f);
c=5.0/9.0*(f-32);
/*将华氏温度转换成摄氏温度*/
if(c>
40)
Hot\n"
elseif(c>
30)
Warm\n"
20)
RoomTemperature\n"
10)
Cool\n"
Cold\n"
Freezing\n"
11、某商场开展购物打折活动,若购物款x在下述范围内,所付款y按
对应折扣支付:
x(x<
1000)
y=
0.9x(1000≤x<
2000)
0.8x(2000≤x<
3000)
0.7x(x≥3000)
{floatx,y;
Inputx:
Inputerror.\n"
{if(x<
y=x;
elseif(x<
y=0.9*x;
y=0.8*x;
y=0.7*x;
x=%.2f,y=%.2f\n"
intc;
{c=x/1000;
switch(c)
{case0:
y=x;
break;
case1:
y=0.9*x;
case2:
y=0.8*x;
default:
y=0.7*x;
补充作业:
12、
完成下列分段函数的计算:
分别使用if-elseif-else结构和if-if嵌套结构来实现。
{floatx,y;
=1600)
=2100)
y=(x-1600)*0.05;
=3100)
y=(x-1600)*0.1-25;
y=(x-1600)*0.15-125;
x=%8.2f,y=%8.2f\n"
13、
=0)
y=(x+2)*exp(x);
y=(x+2)*log(2*x);
x=%8.2f,f(x)=%8.2f\n"
14、完成下列分段函数的计算:
y=(fabs(x)+3.2)/(sin(x)+2);
15、完成下列函数的计算:
y=(exp(x)+fabs(x-6))/(x+1.3);
x=%8.2f,fun1(x)=%8.2f\n"
16、完成下列函数的计算:
y=(1+sin(x)+exp(x))/(x+1);
17、某服装店经营套服,也单件出售。
若买的不少于50套,每套80元;
不足50套的每套90元;
只买上衣每件60元;
只买裤子每条45。
以下程
序的功能是读入所买上衣c和裤子t的件数,计算应付款m。
{intc,t,d1,d2,m;
Pleaseinputcandt:
%d,%d"
t);
=t)
{d1=t;
d2=c-t;
if(d1>
=50)
m=d1*80+d2*60;
m=d1*90+d2*60;
{d1=c;
d2=t-c;
m=d1*80+d2*45;
m=d1*90+d2*45;
c=%d,t=%d,m=%d\n"
c,t,m);
18、某邮局对邮寄包裹有如下规定:
若包裹的长宽高任一尺寸超过1米或
重量超过30千克,不予邮寄;
对可以邮寄的包裹每件收手续费0.2元,再
加上根据下表按重量wei计算的邮资:
重量(千克)
收费标准(元/千克)
wei<
10
0.80
=20
0.75
=30
0.70
{floatc,k,g,w,m;
Pleaseinputc,k,gandw:
%f,%f,%f,%f"
k,&
g,&
w);
100||k>
100||g>
100||w>
cannottobemailed"
elseif(w<
m=0.2+w*0.8;
=20)
m=0.2+w*0.75;
m=0.2+w*0.7;
c=%5.1f,k=%5.1f,g=%5.1f,w=%5.1f,m=%6.2f\n"
c,k,g,w,m);
}
19、请编写程序pro17.c。
从键盘输入当月利润I,求应发奖金总数。
根据利润进行奖金提成:
利润I低于或等于10万元的,奖金可提10%;
利润高于10万元,低于20万元(100000<I≤200000)时,低于10万元部分按10%提成,高于100000元的部分,提成7.5%;
200000<I≤400000时,低于20万元部分仍按上述办法提成(下同),高于20万元的部分,按5%提成;
400000<I≤600000时,高于40万元的部分,按3%提成;
600000<I≤1000000时,高于60万元部分,按1.5%提成;
I>1000000时,超过100万元的部分,按1%提成;
方法一:
用if语句编程序
{longi;
floatbonus,bon1,bon2,bon4,bon6,bon10;
clrscr()
bon1=100000*0.1;
/*利润为10万元时的奖金*/
bon2=bon1+100000*0.075;
/*利润为20万元时的奖金*/
bon4=bon2+200000*0.05;
/*利润为40万元时的奖金*/
bon6=bon4+200000*0.03;
/*利润为60万元时的奖金*/
bon10=bon6+400000*0.015;
/*利润为100万元时的奖金*/
Pleaseinputi:
%ld"
i);
if(i<
=100000)
bonus=i*0.1;
/*利润在10万元以内按0.1提成奖金*/
elseif(i<
=200000)
bonus=bon1+(i-100000)*0.075;
/*利润在10万至20万元时的奖金*/
=400000)
bonus=bon2+(i-200000)*0.05;
/*利润在20万至40万元时的奖金*/
=600000)
bonus=bon4+(i-400000)*0.03;
/*利润在40万至60万元时的奖金*/
=1000000)
bonus=bon6+(i-600000)*0.015;
/*利润在60万至100万元时的奖金*/
bonus=bon10+(i-1000000)*
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 实验 选择 结构 参考答案