用if语句和switch语句求总运费

YUXI1023 2007-12-19 09:22:21
请分别用if语句和switch语句求总运费
运输公司对用户计算运费为p,货物重为w,距离为s,折扣为d,则总运费f的计算公式为:f=p*w*s*(1-d),其中运输公司对用户计算运费。路程(s)越远,每公里运费越低。标准如下:
s<250km 没有折扣 250<=s<500 2%折扣
500<=s<1000 5%折扣 1000<=s<2000 8%折扣
2000<=s 10%折扣

(要求画出程序流程图和C语言程序)
(C语言实在不行啊,麻烦大家了~)
...全文
1630 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
lori227 2007-12-26
  • 打赏
  • 举报
回复
已经OK了!!友情帮顶!
一生有爱1980 2007-12-26
  • 打赏
  • 举报
回复
路过看了一下,不过已解决
laolaoliu2002 2007-12-25
  • 打赏
  • 举报
回复
随便找一本C语言的书看一下就可以搞定了.
pptor 2007-12-25
  • 打赏
  • 举报
回复
#include "stdio.h"
void countTransportation(int p,int w,int s)
{
double d,f;
if(s<250) d=0;
else if(s<500) d=0.02;
else if(s<1000) d=0.05;
else if(s<2000) d=0.08;
else d=0.1;
f=p*w*s*(1-d);
printf("总共花费:%f元\n",f);
}
void countTransportationAnother(int p,int w,int s)
{
double d,f;
int number=s/250;
switch(number)
{
case 0:
case 1: d=0;break;
case 2: d=0.02;break;
case 3:
case 4: d=0.05;break;
case 5:
case 6:
case 7:
case 8: d=0.08;break;
default:d=0.1;break;
}
f=p*w*s*(1-d);
printf("总共花费:%f元\n",f);
}
int main()
{
int p, w, s;
scanf("%d%d%d",&p,&w,&s);
countTransportation(p,w,s);
countTransportationAnother(p,w,s);
return 0;
}
liln0530 2007-12-24
  • 打赏
  • 举报
回复
祝大家都得100
YUXI1023 2007-12-24
  • 打赏
  • 举报
回复
这题是加分了的,有100哦~~
YUXI1023 2007-12-24
  • 打赏
  • 举报
回复
不是的,我们考试才不考那么难的类,是写实验报告用的..
YUXI1023 2007-12-22
  • 打赏
  • 举报
回复
谢谢楼上的~~
ltc_mouse 2007-12-22
  • 打赏
  • 举报
回复
要享受解出问题和帮助别人的快感呀..
==============================
^_^ 楼主知道这个?那就应该努力解出这个并不难的问题啊~
看起来像是介绍switch时的作业题.... 也许是考试要用的....
prime1213 2007-12-22
  • 打赏
  • 举报
回复
up
YUXI1023 2007-12-22
  • 打赏
  • 举报
回复
啊...
分数那么重要的啊
要享受解出问题和帮助别人的快感呀..
好吧,下次就给分吧
blackboycpp 2007-12-22
  • 打赏
  • 举报
回复
ai.......
0分的技术帖~~
liln0530 2007-12-19
  • 打赏
  • 举报
回复
#include "stdio.h"

void countTransportation(int p, int w, int s)
{
int d, f;

if(s < 250) d = 0;
else if (s < 500) d = 0.02;
else if (s < 1000) d = 0.05;
else if (s < 2000) d = 0.08;
else d = 0.1;

f = p * w * s * (1 - d);
printf("总共花费 : %d 元\n",f);
}

void countTransportationAnother(int p, int w, int s)
{
int d, f;
int number = s / 250;
switch (number)
{
case 0:
case 1: d = 0;
break;
case 2: d = 0.02;
break;
case 3:
case 4: d = 0.05;
break;
case 5:
case 6:
case 7:
case 8: d = 0.08;
break;
default: d = 0.1;
break;
}

f = p * w * s * (1 - d);
printf("总共花费 : %d 元\n",f);
}

int main (int argc, const char * argv[]) {
int p, w, s;
scanf("%d %d %d", &p, &w, &s);

countTransportation(p, w, s);
countTransportationAnother(p, w, s);
return 0;
}
xiaoxiinlose 2007-12-19
  • 打赏
  • 举报
回复

/*用if语句和switch语句求总运费
运输公司对用户计算运费为p,货物重为w,距离为s,折扣为d,
则总运费f的计算公式为:f=p*w*s*(1-d),其中运输公司对用户计算运费。
路程(s)越远,每公里运费越低。标准如下:
s <250km 没有折扣
250 <=s <500 2%折扣
500 <=s <1000 5%折扣
1000 <=s <2000 8%折扣
2000 <=s 10%折扣 */

#include <stdio.h>
main ()
{
float p,w,s,d,f=p*w*s*(1-d);
printf ("请分别输入单位运费,货物重量,运输距离: \n");
scanf ("%f,%f,%f",&p,&w,&s);

if ( s<250 ) d=0;
else if ( s>=250 && s<500 ) d=0.02;
else if ( s>=500 && s<1000 ) d=0.05;
else if ( s>=1000 && s<2000 ) d=0.08;
else if ( s>=2000 ) d=0.1;



printf ("总运费=%f",f);
getch ();
}

70,006

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧