story苏
2018-07-26 17:31
#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
int HS1(int a ,int b),因为你把函数定义为int类型,原本算出来的q=34.7,取整后变为34。所以应该把int换成float。
另外,第8行的if(5<=a||a<23)应改为if(5<=a&&a<23)。还有,你的代码格式有点混乱,且没有注释,不便于阅读。
C语言入门
926866 学习 · 21014 问题
相似问题