刚开始接触c语言不太明白这个

#include<stdio.h>

int main(void)

{

int a ,b, c;

printf("enter 三角形的三条边\n");

scanf("%f %f %f",&a ,&b,&c);
if(a*a+b*b==c*c||b*b+c*c==a*a||c*c+a*a==b*b)//勾股定理
{ printf("yes\n"); }
 else

{ printf("no\n");}
return 0;
}
自查obj和exe都没问题,但是运行不了

img

改这样

#include<stdio.h>

int main(void)

{
    int a, b, c;
    printf("enter 三角形的三条边\n");
    scanf("%f,%f,%f", &a, &b, &c);
    if (a * a + b * b == c * c || b * b + c * c == a * a || c * c + a * a == b * b)//勾股定理
    {
        printf("yes\n");
    }
    else
    {
        printf("no\n");
    }
    return 0;
}

img


或者不改,然后输入三边的长的时候,数和数之间加空格,不要加逗号
就像这样

img

先判断一下大小,然后直接判断aa+bb==c*c(c为最大值)

输入的时候,你的scanf里是空格分开输入的数,所以你输入的时候应该也要用空格分开,而不是,