九度 Online Judge 算法 刷题 题目1048:判断三角形类型

题目1048:判断三角形类型

题目描述:
给定三角形的三条边,a,b,c。判断该三角形类型。
输入:
测试数据有多组,每组输入三角形的三条边。
输出:
对于每组输入,输出直角三角形、锐角三角形、或是钝角三角形。
样例输入:
3 4 5
样例输出:
直角三角形
来源:
2009年哈尔滨工业大学计算机研究生机试真题

code

c语言实现

#include<stdio.h>
#include<math.h>
int max(int a,int b,int c) {
    int m=a;
    if (b>m) 
        m=b;
    if (c>m)
        m=c;
    return m;
}
int min(int a,int b,int c) {
    int m=a;
    if (b<m) 
        m=b;
    if (c<m)
        m=c;
    return m;
}
int main() {
    int a,b,c,x,y,z;
    while (scanf("%d %d %d",&a,&b,&c)==3) {
        x = pow(max(a,b,c),2);
        y = pow(min(a,b,c),2);
        z = pow(a,2)+pow(b,2)+pow(c,2)-x-y;
        if (pow(y,0.5)+pow(z,0.5) <= pow(x,0.5))
            continue;
        else {
            if (x == y+z) 
                printf("直角三角形\n");
            else
                if (x > y+z)
                    printf("钝角三角形\n");
                else
                    printf("锐角三角形\n");
        }       
    }
    return 0;
}
/************************************************************** Problem: 1048 User: langzimaizan Language: C Result: Accepted Time:0 ms Memory:1004 kb ****************************************************************/

你可能感兴趣的:(算法,面试,测试,计算机,C语言)