出租车计价(C语言)--四舍五入

习题3-3 出租车计价 (15 分)
 

本题要求根据某城市普通出租车收费标准编写程序进行车费计算。具体标准如下:

  • 起步里程为3公里,起步费10元;
  • 超起步里程后10公里内,每公里2元;
  • 超过10公里以上的部分加收50%的回空补贴费,即每公里3元;
  • 营运过程中,因路阻及乘客要求临时停车的,按每5分钟2元计收(不足5分钟则不收费)。

输入格式:

输入在一行中给出输入行驶里程(单位为公里,精确到小数点后1位)与等待时间(整数,单位为分钟),其间以空格分隔。

输出格式:

在一行中输出乘客应支付的车费(单位为元),结果四舍五入,保留到元。

输入样例1:

2.6 2
 

输出样例1:

10
 

输入样例2:

5.1 4
 

输出样例2:

14
 

输入样例3:

12.5 9
 

输出样例3:

34
 

分析:本题同样没有难点,但我刚开始做错了,是因为超起步里程后10公里内认为在3公里的基础上加了10公里,另外,题目要求结果四舍五入保留为整数也是一个注意点。

--注:四舍五入:(int)(prize + 0.5)

 C语言代码如下:

 1 #include <stdio.h>
 2 int main(){
 3   double d;
 4   int time;
 5   scanf("%lf %d", &d, &time);
 6   double prize;
 7   if(d <= 3)
 8     prize = 10.0 + time / 5 * 2 ;
 9   else if(d <= 10)
10     prize = 10.0 + 2.0 * (d - 3) + time / 5 * 2.0;
11   else
12     prize = 24 + (int)(3 * (d - 10) + 0.5) + time / 5 * 2.0;
13   printf("%.0lf", prize);
14   return 0;
15 }

 

posted @ 2022-03-11 18:47  撰四记  阅读(1760)  评论(0编辑  收藏  举报