为什么下面一段turbo c程序运行错误

来源:百度知道 编辑:UC知道 时间:2024/07/01 13:10:58
main()
{float a,b,c,s,area;
printf("please input three float:");
scanf("%f,%f,%f",&a,&b,&c);
s=1.0/2*(a+b+c);
area=sqrt(s*(s-a)*(s-b)*(s-c));
printf("area=%f",area);
} 这是输入三角形三边求三角形面积的程序,但我运行后结果显示的是负值,这是怎么回事,请高手帮忙,多谢
s=1.0/2*(a+b+c)优先级没错,但我就是找不出原因

s=1.0/2*(a+b+c)
这个优先级错了吧?这样写就是取2*(a+b+c)的倒数了。改成:
s=1.0*(a+b+c)/2

分数用小数表示,别出现分数在程序中!

估计是你输入的时候忘了加逗号....