ZOJ Problem Set

水题不解释

#include <stdio.h>
#include <math.h>
int main()
{
    int i=1,flag=0;
    double a,b,c;
    while(scanf("%lf%lf%lf",&a,&b,&c)!=EOF&&a||b||c)
    {
        printf("Triangle #%d
",i++);
        
        if(a==-1)
        {
            if(b>=c)
                flag=-1;
            else
            {
                a=sqrt(c*c-b*b);
                flag=1;
                
            }
        }
        else if(b==-1)
        {
            if(a>=c)
                flag=-1;
            else
            {
                b=sqrt(c*c-a*a);
                flag=2;
                
            }
        }
        else
        {
            c=sqrt(a*a+b*b);
            flag=3;
            
        }

        if(flag==-1)
        {
            printf("Impossible.

");
        }
        else
        {
            switch(flag)
            {
            case 1: printf("a = %.3lf

",a); break;
            case 2: printf("b = %.3lf

",b); break;
            case 3: printf("c = %.3lf

",c); break;
            }
        }
        
    }

    return 0;
}
原文地址:https://www.cnblogs.com/xlturing/p/3335855.html