#include <stdio.h>#include <math.h>main(){ int i,j,k,m; scanf("%d%d%d",&i,&j,&k); m=(i+j+k)/2; printf("%d\n",sqrt(m*(m-i)*(m-k)*(m-j)));}
语法是对的,可我输入三个数的时候,输出是0,怎么回事?`
要保证输入的三个数符合三角行三边关系.还有m不能是整型.假如m取整后和三边中有一相等,那就是0
我输6,8,10都符合你的要求可输出是0
还有一个 输出格式不是%d,而是%lf.