m0_73870357 2022-09-29 09:45 采纳率: 0%
浏览 19

无法执行area函数中的if语句,如何解决?(语言-c语言)

代码预期:输入三角形三条边,判断是否为三角形,是输出面积,不是输出bug
错误为:无论输入什么都为bug


#include <stdio.h>
#include <math.h>
double area(double a, double b, double c)
{
    if (a + b > c && a + c > b && b + c > a)
    {
        double p = (a + b + c) / 2;
        double s = sqrtf(p * (p - a) * (p - b) * (p - c));
        printf("%f", s);
        return s;


    }
    else printf("bug\n"); return 0;
}
int main()
{
    double a, b, c, s;

    scanf("%lf\n%lf\n%lf\n", &a, &b, &c);
    s = area(a, b, c);
    return 0;

  • 写回答

3条回答 默认 最新

  • 快乐鹦鹉 2022-09-29 10:05
    关注

    scanf("%lf%lf%lf", &a, &b, &c);就可以了

    评论

报告相同问题?

问题事件

  • 修改了问题 9月29日
  • 创建了问题 9月29日