为了账号安全,请及时绑定邮箱和手机立即绑定

请问下这些代码怎么结果一直是0呢

#include <stdio.h>

double cost(int hour,int dis)

{

double price,cost;

if(hour<0||hour>24)

{

printf("请输入正确的时间!");

return 0;

}

else if(hour>=23||hour<5)

{

price=price*1.2;

if(dis>3)

{

cost=13+(dis-3)*price+1;

}

else

{

cost=14;

}

return cost;

}

int main(int argc, char *argv[])

{

int mor=9;

int aft=19;

int dis=12;

double morc,aftc;

morc=cost(mor,dis);

aftc=cost(aft,dis);

printf("小明打车花费%d元",(morc+aftc));

return 0;

}


正在回答

1 回答

cost函数一开始声明了两个double类型变量price和cost,但没有给予初值,那么它们的初值是不确定的,所以后面的计算完全没有意义了。

结果不一定是0,计算出任何结果都是可能的。

0 回复 有任何疑惑可以回复我~
#1

h11223 提问者

main里面的输出格式也错了
2015-11-21 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

请问下这些代码怎么结果一直是0呢

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信