7-11 分段计算居民水费

为鼓励居民节约用水,自来水公司采取按用水量阶梯式计价的办法,居民应交水费y(元)与月用水量x(吨)相关:当x不超过15吨时,y=4x/3;超过后,y=2.5x−17.5。请编写程序实现水费的计算。

输入格式

输入在一行中给出非负实数x

输出格式

在一行输出应交的水费,精确到小数点后2位。

输入样例1

12

输出样例1

16.00

输入样例2

16

输出样例2

22.50

分析与答案

以15为分界点判断用水量,题目已经限定是非负实数了,而且公式中x=0y=0,也不用单独处理,用浮点型计算水费,保留小数点后2位输出即可。

#include <stdio.h>
int main(){
    int water = 0;
    double pay = 0;
    scanf("%d",&water);
    if (water <= 15)
        pay = (double) 4 * water / 3;
    else
        pay = 2.5 * water - 17.5;
    printf("%.2lf",pay);
    return 0;
}

7-11 测试点