三角形问题

问题:You are given the side lengths of a triangle, determine is it an acute triangle, right triangle or obtuse triangle.
 
Input
The first line contains an integer T indicating the number of test cases.
For each test case, there is a single line contains three integer A, B and C indicating the side lengths of the triangle. (You can assume it is a valid triangle)

Technical Specification
1. 1 <= T <= 50
2. 1 <= A,B,C <= 100
 
Output
For each test case, output the case number first, then output "Acute triangle", "Right triangle" or "Obtuse triangle".
 
Sample Input
3
2 2 2
4 8 5
3 4 5

Sample Output
Case 1: Acute triangle
Case 2: Obtuse triangle
Case 3: Right triangle

回答:

#include<iostream>
using namespace std;

int main()
{
    int n, p=1;
    scanf("%d", &n);
    while(n--)
    {
        int a, b, c;
        scanf("%d%d%d", &a, &b, &c);
        int t;
        if(a > b)
        {
            t=a;
            a=b;
            b=t;
        }
        if(b > c)
        {
            t=b;
            b=c;
            c=t;
        }
        if(a > b)
        {
            t=a;
            a=b;
            b=t;
        }
        printf("Case %d: ", p++);
        if(a*a+b*b == c*c)
            printf("Right triangle ");
        else if(a*a+b*b > c*c)
            printf("Acute triangle ");
        else
            printf("Obtuse triangle ");
    }
    return 0;
}

原文地址:https://www.cnblogs.com/benchao/p/4606292.html