洛谷-小玉家的电费-顺序与分支
题目描述 Description
夏天到了,各家各户的用电量都增加了许多,相应的电费也交的更多了。小玉家今天收到了一份电费通知单。小玉看到上面写:据闽价电[2006]27号规定,月用电量在150千瓦时及以下部分按每千瓦时0.4463元执行,月用电量在151~400千瓦时的部分按每千瓦时0.4663元执行,月用电量在401千瓦时及以上部分按每千瓦时0.5663元执行;小玉想自己验证一下,电费通知单上应交电费的数目到底是否正确呢。请编写一个程序,已知用电总计,根据电价规定,计算出应交的电费应该是多少。
输入输出格式 Input/output
输入格式:
输入一个整数,表示用电总计(单位以千瓦时计)。
输出格式:
输出一个数,保留到小数点后1位(单位以元计,保留到小数点后1位)。
输入一个整数,表示用电总计(单位以千瓦时计)。
输出格式:
输出一个数,保留到小数点后1位(单位以元计,保留到小数点后1位)。
输入输出样例 Sample input/output
样例测试点#1
输入样例:
267
输出样例:
121.5
思路:分三种情况讨论,一种是a<=150时,直接乘以输出即可,还有一种是150<=a<=400时,先要减去150及以下那个个部分的用电量,才能乘,最后一种情况是a>=400时,要减去前面两个部分的用电量才能乘。
总的来说还算简单,入门数学题。
代码入下:
#include<stdio.h> int main() { double a,b=0; scanf("%lf",&a); if(a<=150) { printf("%.1lf\n",a*0.4463);//第一阶段 } else if(a>=150&&a<=400) { b=b+150*0.4463;//第一阶段 printf("%.1lf\n",b+((a-150)*0.4663));//第二阶段 } else { b=b+150*0.4463;//第一阶段 b=b+250*0.4663;//第二阶段 printf("%.1lf\n",b+((a-400)*0.5663));//第三阶段 } return 0; }
我不怕千万人阻挡,只怕自己投降…