下面这个编程有什么问题,哭了

#include
#include
int main()
{
float a,b,c,s,l;
int y;
scanf("%f,%f,%f",&a,&b,&c);
l=(a+b+c)/2.0;
if(a+b>c&&a+c>b&&b+c>a) printf("%f",s);
else do
scanf("%f,%f,%f",&a,&b,&c);
while(a+b>c&&a+c>b&&b+c>a);
if(aa+bb==cc||aa+cc==bb||cc+bb==aa) y=1;
else if(a==b==c) y=2;
else if(a==b||a==c||b==c) y=3;
else y=4;
switch(y)
{
case'1':{if(a
a+bb==cc) s=1.0/2ab;
if(aa+cc==bb) s=1.0/2ac;
if(c
c+bb==aa) s=1.0/2bc;
case'2':s=sqrt(3)/4.0aa;break;
case'3':s=sqrt{l*(l-a)(l-b)(l-c)};
case'4':s=sqrt{l*(l-a)(l-b)(l-c)};
if(y==1) printf("直角三角形");
if(y==2) printf("等边三角形");
if(y==3) printf("等腰三角形");
return 0;
}

有些花括号都没打

#include<stdio.h>
#include<math.h>
int main()
{
    float a,b,c,s,l;
    float eps = 1e-8;
    int y;
    scanf("%f,%f,%f",&a,&b,&c);
    l=(a+b+c)/2.0;
    if(a+b>c&&a+c>b&&b+c>a) 
        printf("%f",s);
    else
    {
        do{
            scanf("%f,%f,%f",&a,&b,&c);
        }while(a+b>c&&a+c>b&&b+c>a);
    }
    //printf("%f %f %f\n",abs(a*a+b*b-c*c),abs(a*a+c*c-b*b),abs(c*c+b*b-a*a));
    if(abs(a*a+b*b-c*c) < eps||abs(a*a+c*c-b*b) < eps || abs(c*c+b*b-a*a) < eps) {
        y=1;
        //printf("!1");
    }
    else if(a == b && b == c) 
        y=2;
    else if(a==b||a==c||b==c) 
        y=3;
    else 
        y=4;
    switch(y)
    {
        case 1:
            if(a*a+b*b==c*c) 
                s=1.0/2*a*b;
            if(a*a+c*c==b*b) 
                s=1.0/2*a*c;
            if(c*c+b*b==a*a) 
                s=1.0/2*b*c;
            break; 
        case 2:
            s=sqrt(3)/4.0*a*a;
            break;
        case 3:
            s=sqrt(l*(l-a)*(l-b)*(l-c));
        case 4:
            s=sqrt(l*(l-a)*(l-b)*(l-c));
    }
    if(y==1) 
        printf("直角三角形");
    if(y==2) 
        printf("等边三角形");
    if(y==3) 
        printf("等腰三角形");
    return 0;
}