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

我的代码哪里有问题?

#include <stdio.h>

float q;

int HS1(int a ,int b)

{if(b<=3)

{q=14;}

else

{

if(5<=a||a<23)

{

q=14+2.3*(b-3);

}

else

{

q=14+2.3*1.2*(b-3);

}

return q;

}

}

int main()

{

q= HS1(9,12)+HS1(18,12);

 printf("%f\n",q);

return 0;

}

得到的结果是68

正在回答

1 回答

int HS1(int a ,int b),因为你把函数定义为int类型,原本算出来的q=34.7,取整后变为34。所以应该把int换成float。

另外,第8行的if(5<=a||a<23)应改为if(5<=a&&a<23)。还有,你的代码格式有点混乱,且没有注释,不便于阅读。

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

story苏 提问者

非常感谢!
2018-07-30 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

我的代码哪里有问题?

我要回答 关注问题
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号