题目描述
夏天到了,各家各户的用电量都增加了许多,相应的电费也交的更多了。小玉家今天收到了一份电费通知单。小玉看到上面写:据闽价电[2006]27号规定,月用电量在 150 千瓦时及以下部分按每千瓦时 0.4463 元执行,月用电量在 151~400 千瓦时的部分按每千瓦时 0.4663 元执行,月用电量在 401 千瓦时及以上部分按每千瓦时 0.5663 元执行;小玉想自己验证一下,电费通知单上应交电费的数目到底是否正确呢。请编写一个程序,已知用电总计,根据电价规定,计算出应交的电费应该是多少。
输入格式
输入一个整数,表示用电总计(单位以千瓦时计),不超过 10000。
输出格式
输出一个数,保留到小数点后 1 位(单位以元计,保留到小数点后 1 位)。
输入样例
267
输出样例
121.5
代码:
#include <cstdio> int main(){ int n; double p=0; scanf("%d",&n); if(0<n&&n<=150){ p=n*0.4463; } else if(150<n&&n<=400){ p=150*0.4463+(n-150)*0.4663; } else if(n>400){ p=150*0.4463+250*0.4663+(n-400)*0.5663; } printf("%.1f",p); }
遇到问题:
- printf("%3.0f",floatNum);%3.0f 表明待打印的浮点数(floatNum)不带小数点和小数部分,且至少占3个字符宽,位数不足自动在前面补空格。
- printf("%6.2f".floatNum):%6.2f 表明待打印的数(floatNum)至少占6个字符宽度,小数点后面占 2 位,小数点占 1 位,整数部分至少占3位,不足则在前面补空格。
- 保留小数遵从四舍五入原则
- 输入 float scanf("%f", &a);
- 输出 float printf("%f", a);
- 输入 double scanf("%lf", &a);
- 输出 double printf("%f", a); 不是%lf需要注意
- 输出
%d
需在前面再加上一个%
- 输出
\
需在前面再加上一个\
- 输出双引号 " 需在前面加上一个
\
来源:https://www.cnblogs.com/bjxqmy/p/12177445.html