编写由三角形三边求面积的函数.#includefloat kig(float x, float y,float z);main(){ float s,a,b,c; scanf("%f%f%f",&a,&b,&c); s=kig(a,b,c); printf("s=%f\n",kig(a,b,c));}float kig(float x,float y,float z){ float p; p=1/4*(2*x*z+y*y-x*x-z*z);
来源:学生作业帮助网 编辑:六六作业网 时间:2024/12/22 14:08:05
编写由三角形三边求面积的函数.#includefloat kig(float x, float y,float z);main(){ float s,a,b,c; scanf("%f%f%f",&a,&b,&c); s=kig(a,b,c); printf("s=%f\n",kig(a,b,c));}float kig(float x,float y,float z){ float p; p=1/4*(2*x*z+y*y-x*x-z*z);
编写由三角形三边求面积的函数.
#include
float kig(float x, float y,float z);
main()
{
float s,a,b,c;
scanf("%f%f%f",&a,&b,&c);
s=kig(a,b,c);
printf("s=%f\n",kig(a,b,c));
}
float kig(float x,float y,float z)
{
float p;
p=1/4*(2*x*z+y*y-x*x-z*z);
return (p);
}
这个有什么错.怎么s=0
编写由三角形三边求面积的函数.#includefloat kig(float x, float y,float z);main(){ float s,a,b,c; scanf("%f%f%f",&a,&b,&c); s=kig(a,b,c); printf("s=%f\n",kig(a,b,c));}float kig(float x,float y,float z){ float p; p=1/4*(2*x*z+y*y-x*x-z*z);
p=1/4*(2*x*z+y*y-x*x-z*z);
应该改为
p=1.0/4*(2*x*z+y*y-x*x-z*z);或者
p=1/4.0*(2*x*z+y*y-x*x-z*z);
原因是:当进行运算时,1和4都是整数,先计算1/4得到的结果是整数,也就是只取整数部分,余数保留不运算,结果是0,所以在后面的运算中也一直是0了,所以把它换为浮点数,也就可以有小数部分了.