简单的C语言程序错误求教

2025-06-29 05:40:09
推荐回答(3个)
回答1:

您的程序一看就有问题:首先,没有您写define语句的;其次,您得先判断您的输入的三个数能不能构成一个三角形。

回答2:

#include
#include
#define area(a,b,c,s) sqrt(s*(s-a)*(s-b)*(s-c));
#define m(a,b,c) (a+b+c)/2;
void main()
{
float a,b,c,S,s;  //这里改为float  了

printf("请输入三角形的三边长:\n");
scanf("%f%f%f",&a,&b,&c); //你的输入 %f
    s=m(a,b,c);
S=area(a,b,c,s);
printf("S=%.3f\n",S);  //长度不要这.3f 可以了
}

回答3:

#define area(a,b,c,s) sqrt(s*(s-a)*(s-b)*(s-c));

#define m(a,b,c) (a+b+c)/2;

这两行后面应该不加分号吧