来大佬看看这个咋错了
Pta上的题为了提倡居民节约用电,某省电力公司执行“阶梯电价”,安装一户一表的居民用户电价分为两个“阶梯”:月用电量50千瓦时(含50千瓦时)以内的,电价为0.53元/千瓦时;超过50千瓦时的,超出部分的用电量,电价上调0.05元/千瓦时。请编写程序计算电费。
输入格式:
输入在一行中给出某用户的月用电量(单位:千瓦时)。
输出格式:
在一行中输出该用户应支付的电费(元),结果保留两位小数,格式如:“cost = 应付电费值”;若用电量小于0,则输出"Invalid Value!"。
下面i你是我写出来错误的程序:
#include <stdio.h>
int main(void)
{
double e, cost;
scanf("%lf", e);
if(e>0){
if(e<=50){
cost=e*0.53;
printf("cost = %.2f", cost);
}else{
cost=50*0.53+(e-50)*0.58;
printf("cost = %.2f", cost);
}
}else{
printf("Invalid Value!");
}
return 0;
}
后面我这样写提交对了:
#include <stdio.h>
int main (void)
{
double cost, e;
scanf("%lf", &e);
if(e>0){
if(e<=50){
cost=e*0.53;
}else{
cost=50*0.53+(e-50)*0.58;
}printf("cost = %.2f", cost);
}else{
printf("Invalid Value!");
}
return 0;
}
帮看看第一个那不对,为啥错,第二个为啥对?
scanf("%lf", e);
scanf("%lf", &e); #include <stdio.h>
int main(){
int kW;
float cost = 0;
// 输入某用户的月用电量(单位:千瓦时)
scanf("%d", &kW);
// 计算电费值(元)
if(kW>50) cost += (0.53*50+(kW-50)*0.58);
else if(kW>0) cost += (0.53*kW);
// 输出结果保留两位小数
if(cost) printf("cost = %.2f元", cost);
else printf("Invalid Value!");
return 0;
} jhq999 发表于 2021-10-11 05:48
scanf("%lf", e);
scanf("%lf", &e);
害,谢谢,太大意了哈哈 傻眼貓咪 发表于 2021-10-11 10:25
你的代码怎么弄的,还能直接复制。求教 留言区上面有个 <> 符号,贴上你的代码便可 傻眼貓咪 发表于 2021-10-11 13:28
留言区上面有个符号,贴上你的代码便可
学到了
页:
[1]