啊啊啊这个思路怎么错了啊!!!!!

P1422 小玉家的电费

@[water8424](/user/875743) 你这完全是乱的啊!
by WA_sir @ 2023-07-04 11:37:35


@[water8424](/user/875743) 分三个 ```if``` 不行吗
by WA_sir @ 2023-07-04 11:37:54


```cpp if(n>400) printf("%.1lf",150*0.4463+250*0.4663+(n-400)*0.5663); else if(n>150) printf("%.1lf",150*0.4463+(n-150)*0.4663); else printf("%.1lf",n*0.4463); ```
by WA_sir @ 2023-07-04 11:38:18


@[water8424](/user/875743) ``` money = 0.4463 * elec;//小等150 ``` 这是作甚
by microchip @ 2023-07-04 11:38:39


elec 大于150时 money刚开始加的是150*elec elec大于400时150至400之间加250 * 0.4663
by SOSSOSSOSSOS @ 2023-07-04 11:38:51


@[water8424](/user/875743) `if` 语句在没有 `else` 的情况下有可能会全部执行,建议写成三个独立的 `if`
by zgy_123 @ 2023-07-04 11:40:39


@[SOSSOSSOSSOS](/user/564731) 谢谢大佬!!!
by water8424 @ 2023-07-04 11:41:13


@[WA_sir](/user/704156) 这样是可以的。分段计费,不会重复,用else多余
by water8424 @ 2023-07-04 11:41:56


@[Gavin2011](/user/577628) 不会的,因为如果在150内,就不会执行下两个if,在400内也不会执行下一个if,完全不会重复
by water8424 @ 2023-07-04 11:43:03


@[water8424](/user/875743) 你说的对,但是输入超过 400 时第一个 `if` 会多加一些
by zgy_123 @ 2023-07-04 11:44:38


| 下一页