C语言判断三角形类型
判断三角形类型。输入三角形的三条边a,b,c,判断它们能否构成三角形。若能构成三角形,指出是何种三角形(等腰三角形、等边三角形、直角三角形、等腰直角三角形、一般三角形),计算精度:1E-1。
输入提示信息:"Input a,b,c:"
输入格式:"%f,%f,%f"
运行示例:
① Input a,b,c:3,4,5↙
直角三角形↙
② Input a,b,c:4,4,5↙
等腰三角形↙
③ Input a,b,c:3,4,6↙
一般三角形↙
④ Input a,b,c:3,4,9↙
不是三角形↙
⑤ Input a,b,c:10,10,14.14↙
等腰直角三角形
⑥ Input a,b,c:4,4,4↙
等边三角形↙
1 #include<stdio.h> 2 #include<math.h> 3 #define EPS 1E-1 4 int main(void) 5 { 6 float a, b, c; 7 int flag = 1; 8 printf("Input a,b,c:"); 9 scanf("%f,%f,%f", &a, &b, &c); 10 if (a + b > c && a + c > b && b + c > a) 11 { 12 if (fabs(a - b) <= EPS && fabs(b - c) <= EPS && fabs(a - c) <= EPS) 13 { 14 printf("等边"); 15 flag = 0; 16 } 17 else if (fabs(a - b) <= EPS || fabs(b - c) <= EPS || fabs(a - c) <= EPS) 18 { 19 printf("等腰"); 20 flag = 0; 21 } 22 23 if (fabs(a * a + b * b - c * c) <= EPS || fabs(a * a + c * c - b * b) <= EPS || fabs(b * b + c * c - a * a) <= EPS) 24 { 25 printf("直角"); 26 flag = 0; 27 } 28 if (flag) 29 { 30 printf("一般"); 31 } 32 printf("三角形\n"); 33 } 34 else 35 { 36 printf("不是三角形\n"); 37 } 38 return 0; 39 }