#include <stdio.h>
#include <math.h>
double s(double a, double b, double c)
{
double l,s;
l = (a + b + c)/ 2 ;
s = pow(1 / 2, l * (l - a) * (l - b) * (l - c));
return s;
}
int main()
{
double x, y, z,sum;
printf("请输入三角形的三边长:");
scanf_s("%lf %lf %lf ", &x, &y, &z);
sum = s(x, y, z);
printf("%lf", sum);
}
pow(1 / 2, l * (l - a) * (l - b) * (l - c));
有问题,1/2=0,不是0.5,而且开根号用sqrt啊
改为sqrt(l * (l - a) * (l - b) * (l - c));
pow是次方运算吧,pow(10,2)=100