初莫M 发表于 2023-11-8 17:43:00

海伦公式求三角形面积

输入描述
标准输入,三个单精度浮点数,表示三角形的三条边长。

输出描述
标准输出,输出三角形的面积,小数点后保留两位小数(无需四舍五入)。
#include<bits/stdc++.h>
using namespace std;
float s(float a,float b,float c)
{
    float p=(a+b+c)/2.0;float s;
    s=sqrt((p*(p-a)*(p-b)*(p-c)));
    return s;
}
int main()
{
    float a,b,c;
    cin>>a,b,c;
    printf("area=%.2f",s(a,b,c));
}

isdkz 发表于 2023-11-8 17:44:07

你的代码几乎是正确的,只有一个小错误。在输入三个浮点数时,你使用了逗号分隔它们,但应该使用空格分隔。以下是修正后的代码:

#include<bits/stdc++.h>
using namespace std;

float s(float a, float b, float c)
{
    float p = (a + b + c) / 2.0;
    float s = sqrt(p * (p - a) * (p - b) * (p - c));
    return s;
}

int main()
{
    float a, b, c;
    cin >> a >> b >> c;
    printf("area=%.2f", s(a, b, c));
    return 0;
}


这段代码定义了一个名为 s 的函数,它接受三个浮点数 a 、 b 和 c 作为参数,并返回三角形的面积。在 main 函数中,我们从标准输入中读取三个浮点数 a 、 b 和 c ,然后调用函数 s 来计算三角形的面积,并使用 printf 函数以保留两位小数的形式输出结果。

希望这可以帮助到你!如果你还有其他问题,请随时问我。
页: [1]
查看完整版本: 海伦公式求三角形面积