rec*_*gle 1 c++ floating-point
我有以下函数应该返回平均值l1 - l7.但是,它似乎只返回一个整数.为什么这样做,如何让它返回一个舍入为2位小数的浮点数?
片段:
int lab_avg(int l1,int l2,int l3,int l4,int l5,int l6,int l7) {
float ttl;
ttl = l1 + l2 +l3 +l4 +l5 +l6 +l7;
return ttl / 7.0;
}
Run Code Online (Sandbox Code Playgroud)
因为你的函数的返回类型是int
.改变它float
,它会工作正常.
此外,如果您只想打印2个小数位,请在输出函数中使用适当的格式.你不需要对float本身做任何事情:
printf("%.2f", some_value);
Run Code Online (Sandbox Code Playgroud)