第一张图片是题目,第二张是我自己的思路,第三张手写的是答案,看不明白答案那个mile=mile+time/5,并且他不是由两部分组成的价钱吗?
因为起步里程后10公里内即每公里2元,要求临时停车的按每5分钟2元计收,相当于每停5分钟就是一公里的价钱了,所以mile=mile+time/5就表示 总公里数=公里数+时间公里数,手写代码有点问题
C语言程序设计里面的题目吧,可以参考下面的代码,会更好理解
#include<stdio.h>
void count(){
int sum=0;
float kl,price=0;
int time;
printf("请输入行驶里程:\n");
scanf("%f",&kl);
printf("请输入等待时间:\n");
scanf("%d",&time);
if(kl>=3.0){
price+=10.0;
if(kl>=10.0) //超过10公里
price += (7.0)*2.0 + (kl-10.0)*3.0 ;
else //大于3公里但不超过10公里
price += (kl-3.0)*2.0;
}else //不足三公里的按照起步价收费
price = 10.0;
if(time>=5)
price+=time/5*2; //要求临时停车的按每5分钟2元计收,不足5分钟则不收费。
printf("乘客应付%f元\n",price);
sum = (int)(price+0.5);
price = sum*1.0;
printf("乘客应付%f元\n",price);
}
int main(){
count();
return 0;
}
手写答案没道理,时间费用不能换算为里程来统一计算