九度oj 题目1048:判断三角形类型

题目描述:

给定三角形的三条边,a,b,c。判断该三角形类型。

输入:

测试数据有多组,每组输入三角形的三条边。

输出:

对于每组输入,输出直角三角形、锐角三角形、或是钝角三角形。

样例输入:
3 4 5
样例输出:
直角三角形
 1 #include <cstdio>
 2 #include <cstdlib>
 3 #include <string>
 4 #include <cstring>
 5 #include <algorithm>
 6 #include <queue>
 7 #define MAX 1002
 8 #define inf 100002
 9 
10 using namespace std;
11 
12 int main(int argc, char const *argv[])
13 {
14     
15     //freopen("input.txt","r",stdin);
16     double a, b, c;
17     while(scanf("%lf %lf %lf",&a, &b, &c) != EOF){    
18         if(c < a) {
19             double tmp = c;
20             c = a;
21             a = tmp;
22         }
23         if(c < b) {
24             double tmp = c;
25             c = b;
26             b = tmp;
27         }
28         //printf("%lf %lf %lf
",a,b,c);
29         double cosc = -c * c + a * a + b * b;
30         cosc = cosc/(2 * a * b);
31         if(cosc == 0) {
32             puts("直角三角形");
33         }
34         else if(cosc > 0) {
35             puts("锐角三角形");
36         }
37         else {
38             puts("钝角三角形");
39         }
40     }
41     return 0;
42     //c2 = a2 + b2 - 2abcosc
43 }
原文地址:https://www.cnblogs.com/jasonJie/p/5732306.html