2025-03-15 学习记录--C/C++-PTA 习题3-3 出租车计价

合抱之木,生于毫末;九层之台,起于累土;千里之行,始于足下。💪🏻

一、题目描述 ⭐️

习题3-3 出租车计价

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

  • 起步里程为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

二、代码(C语言)⭐️

#include <stdio.h>  // 包含标准输入输出库,用于使用scanf和printf等函数

int main() {
    double distance = 0.0;  // 定义一个浮点数变量distance,用于存储行驶距离,初始值为0.0
    int time = 0;           // 定义一个整数变量time,用于存储等待时间,初始值为0
    double fee = 10.0;      // 定义一个浮点数变量fee,用于存储总费用,初始值为10.0(起步价)

    // 从用户输入中读取两个值,分别赋值给distance和time
    scanf("%lf %d", &distance, &time);

    // 根据行驶距离计算费用
    if (distance > 3 && distance <= 10) {
        // 如果距离大于3公里且小于等于10公里,超出3公里的部分按每公里2元收费
        fee += (distance - 3) * 2.0;
    } else if (distance > 10) {
        // 如果距离大于10公里,3-10公里的部分按每公里2元收费,超出10公里的部分按每公里3元收费
        fee += ((10 - 3) * 2.0 + (distance - 10) * 3.0);
    }

    // 根据等待时间计算费用,每等待5分钟加收2元
    fee += ((time / 5) * 2.0);

    // 输出总费用,四舍五入到整数
    printf("%.0f", fee);

    return 0;  // 程序正常结束
}

在这里插入图片描述

补充 ❀】整数除法浮点数除法 的区别,请查看我的另一篇文章

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小呀小萝卜儿

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值