7-11 分段计算居民水费 (C语言)

本文介绍了一种基于用水量的阶梯计价方案,通过编写程序实现居民水费的计算。当用水量不超过15吨时,费用计算公式为y=4x/3;超过15吨后,费用计算公式调整为y=2.5x-17.5。程序使用C语言编写,根据输入的用水量x,输出应交的水费。

7-11 分段计算居民水费 (10 分)为鼓励居民节约用水,自来水公司采取按用水量阶梯式计价的办法,居民应交水费y(元)与月用水量x(吨)相关:当x不超过15吨时,y=4x/3;超过后,y=2.5x−17.5。请编写程序实现水费的计算。
输入格式:
输入在一行中给出非负实数x。
输出格式:
在一行输出应交的水费,精确到小数点后2位。
输入样例1:
12

输出样例1:
16.00

输入样例2:
16
输出样例2:
22.50

#include<stdio.h>
int main()
{
 int x;
 scanf("%d",&x);
 if(x<=15)
  printf("%.2f",4.0*x/3);
 else
  printf("%.2f",2.5*x-17.5);
 return 0;
}
为鼓励居民节约用水,自来水公司采取按用水量阶梯式计价的办法,居民应交水费 $y$(元)与月用水量 $x$(吨)相关:当 $x$ 不超过 15 吨时,$y = \frac{4x}{3}$;超过后,$y = 2.5x - 10.5$。以下是几种使用 C 语言解决该分段计算居民水费问题的例题解答: ### 解答 1 ```c #include <stdio.h> int main() { int x; scanf("%d", &x); if (x <= 15) { printf("%.2f", 4 * x / 3.0); } else { printf("%.2f", 2.5 * x - 17.5); } return 0; } ``` 该代码通过 `scanf` 函数读取输入的整数月用水量 `x`,然后根据 `x` 的值进行判断,如果 `x` 不超过 15 吨,按照 $y = \frac{4x}{3}$ 计算水费并输出;如果超过 15 吨,按照 $y = 2.5x - 17.5$ 计算水费并输出,结果精确到小数点后 2 位 [^2]。 ### 解答 2 ```c #include <stdio.h> int main() { double x, y; scanf("%lf", &x); if (x < 0) y = 0; else if (x >= 0 && x <= 15) y = 4 * x / 3; else y = 2.5 * x - 10.5; printf("f(%.2lf) = %.2lf", x, y); return 0; } ``` 此代码使用 `double` 类型来处理输入的月用水量 `x`,能处理小数情况。通过 `scanf` 读取输入后,根据不同的 `x` 范围计算水费 `y`,若 `x` 小于 0,水费为 0;若 `x` 在 0 到 15 吨之间,按 $y = \frac{4x}{3}$ 计算;若 `x` 超过 15 吨,按 $y = 2.5x - 10.5$ 计算,最后按 `f(输入的月用水量) = 计算出的应交水费` 的格式输出结果,精确到小数点后 2 位 [^3]。 ### 解答 3 ```c #include <stdio.h> int main() { float x, y; scanf("%f", &x); if (x <= 15) { y = 4 * x / 3; printf("%.2f", y); } if (x > 15) { y = 2.5 * x - 17.5; printf("%.2f", y); } return 0; } ``` 该代码使用 `float` 类型处理月用水量 `x`,通过 `scanf` 读取输入。使用两个 `if` 语句分别判断 `x` 是否不超过 15 吨和是否超过 15 吨,对应不同的计算公式计算水费并输出,结果精确到小数点后 2 位 [^4]。 ### 解答 4 ```c #include <stdio.h> int main() { double x = 0, y = 0; scanf("%lf", &x); if (x < 0) { x = x, y = 0; } else if (x <= 15) { y = 4 * x / 3; } else { y = 2.5 * x - 10.5; } printf("f(%.2lf) = %.2lf", x, y); return 0; } ``` 此代码同样使用 `double` 类型处理月用水量 `x`,读取输入后,根据 `x` 的不同范围计算水费 `y`,当 `x` 小于 0 时,水费为 0;当 `x` 不超过 15 吨,按 $y = \frac{4x}{3}$ 计算;当 `x` 超过 15 吨,按 $y = 2.5x - 10.5$ 计算,最后按 `f(输入的月用水量) = 计算出的应交水费` 的格式输出结果,精确到小数点后 2 位 [^5]。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值