用C语言解“分段计算居民水费”题

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

思路

本题需要考虑居民用水量X的多少来进行计算,当x不超过15吨时,y=4x/3;超过后,y=2.5x−17.5

注意

这道题有些坑人,因为题目说的x为非负实数,一般人都是认为用整型来定义x,却通过不了测试点。可结合生活实际x则可以为小数,所以需要将x定义为浮点数。

代码

#include 
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;
}

你可能感兴趣的:(用C语言解基础编程题集)