快乐打码 2022-10-14 09:57 采纳率: 70.6%
浏览 86
已结题

请问我写的代码有什么问题,为什么运行结果得不到想要的结果

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

起步里程为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
我写的代码
#include <stdio.h>

int main() {
float s;
int t;
scanf("%.1f%d", &s, &t);
if (t < 5) {
if (s <= 3)
printf("10");
else if (s > 3 && s < 10)
printf("%d", 2 * (s - 3) + 10);
else if (s >= 10)
printf("%d", 10 + (s - 3) * 3 );
} else if (t > 5) {
if (t % 5 != 0) {
if (s > 3 && s < 10)
printf("%d", 2 * (s - 3) + 10 + (t / 5 + 1) * 2);
else

  • 写回答

5条回答 默认 最新

  • 心寒丶 全栈领域优质创作者 2022-10-14 23:55
    关注
    #include<stdio.h>
    int main()
    {
        double n,m1;
        int t,m2;
        scanf("%lf %d",&n,&t);
        if(n<=3){
            m1=10;
        }
        else if(n>3&&n<10){
            m1=10+(n-3)*2;
        }
        else{
            m1=24+(n-10)*3;
        }
        m2=(t/5)*2;
        printf("%.0lf",m1+m2);
        return 0;
    }
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(4条)

报告相同问题?

问题事件

  • 系统已结题 10月23日
  • 已采纳回答 10月15日
  • 创建了问题 10月14日

悬赏问题

  • ¥15 数据库原理及应用上机练习题
  • ¥30 征集Python提取PDF文字属性的代码
  • ¥15 如何联系真正的开发者而非公司
  • ¥15 有偿求苍穹外卖环境配置
  • ¥15 代码在keil5里变成了这样怎么办啊,文件图像也变了,
  • ¥20 Ue4.26打包win64bit报错,如何解决?(语言-c++)
  • ¥15 clousx6整点报时指令怎么写
  • ¥30 远程帮我安装软件及库文件
  • ¥15 关于#自动化#的问题:如何通过电脑控制多相机同步拍照或摄影(相机或者摄影模组数量大于60),并将所有采集的照片或视频以一定编码规则存放至规定电脑文件夹内
  • ¥20 (求远程解决)深信服vpn-2050这台设备如何配置才能成功联网?