```c++
#include<bits/stdc++.h>
using namespace std;
int a;
int main()
{
cin>>a;
if(a<=150){
printf("%.1f",a*1.0*0.4463);
}else if(a>=151&&a<=400){
printf("%.1f",150*0.4463+(a-150)*0.4663);
}else{
printf("%.1f",150*0.4463+250*0.4663+(a-400)*0.5663);
}
return 0;
}
```
by suyihang @ 2022-07-14 20:24:15
@[Dream_ac](/user/739380)
和你的思路是一样的,可以AC,稍长,一道水题
by suyihang @ 2022-07-14 20:27:49
```
#include<bits/stdc++.h>
using namespace std;
int main()
{
int a;
float c;
cin>>a;
if(a<=150)
{
c=a*0.4463;
}
else if(a>=151&&a<=400)
{
c+=150*0.4463;
c+=(a-150)*0.4663;
}
else
{
c+=150*0.4463;
c+=(400-150)*0.4663;
c+=(a-400)*0.5663;
}
printf("%.1f",c);
return 0;
return 0;
}
``````
自己改了一下,也是对的,有点粗心 改之前:
```
c+=150*0.4463;
c+=(400-150)*0.4663;
c=(a-400)*0.5663;
```````
改之后
```
c+=150*0.4463;
c+=(400-150)*0.4663;
c+=(a-400)*0.5663;
```
第二:
```
printf("%0.1f",c);
```
改之后
```
printf("%1f",c);
```
第三:
```
if(a<=150)
{
c=a*4463;
}
```
改之后
```
if(a<=150)
{
c=a*0.4463;
}
```
by suyihang @ 2022-07-14 20:43:31
@[Dream_ac](/user/739380)
****
~~给我点个赞吧~~
by suyihang @ 2022-07-14 20:58:51
@[suyihang](/user/711031) 好
by Dream_ac @ 2022-07-14 21:36:25
@[Dream_ac](/user/739380)
###### 可以用if...else if ...语句解决此题。先读入一个浮点数作为月用电量,在分别计算不同情况下所需的电费。注意在计算用电量在150~400千瓦时与400千瓦时以上的电费时,超出的部分应以新电费标准参与计算。
```cpp
#include<cstdio>
using namespace std;
int main(){
double a,money;
scanf("%lf",&a);
if (a <= 150)
printf("%.1f",a*0.4463);
else if (a > 150)
if (a < 401){
money = a-150;
money = money*0.4663;
money = money + 150*0.4463;
printf("%.1f",money);
}
else if (a > 400)
if (a <= 10000){
money = a - 400;
money = money*0.5663;
money = money + 150*0.4463;
money = money + 250*0.4663;
printf("%.1f",money);
}
else if (a > 10000)
printf("%s","Errorinputcannot>10000");
return 0;
}
```
by chanthu2114 @ 2022-07-17 14:46:24