我编写了一个程序,在其中我使用带有返回类型且没有参数的函数area
找到了圆柱区域。 answer
已返回main
函数。但是,我在main
中获得了不同的输出,在area
中获得了不同的输出。 main
函数中的小数位似乎被0替换。为什么会这样?
答案 0 :(得分:2)
将区域的返回类型从int更改为float
答案 1 :(得分:1)
您的函数返回int
,它会截断值的任何实部。
float area()
答案 2 :(得分:1)
您的变量answer
在区域函数中是浮点数,但区域函数的返回类型是int
。所以它在返回时输入了主要的
int area(){
^ should be float
float answer;
// print float
return answer;
}
int main(){
answer = area(); // answer gets integral part
// print int part
}