根据输入的三角形的三边判断三角形的类型,并输出其面积和类型。
#include<stdio.h> #include<stdlib.h> #include<math.h> int main() { float a, b, c; float s, area; printf("please input three line:\n"); scanf("%f%f%f", &a, &b, &c); //判断是否满足三角形条件:两边之和是否大于第三边; if (a + b > c&&b + c > a&&a + c > a) { s = (a + b + c) / 2; area = (float)sqrt(s*(s - a)*(s - b)*(s - c));//三角形面积计算; printf("the area is: %f", area); printf("\n"); //判断三条边是否相等; if (a == b&&a == c) { printf("等边三角形\n"); } //判断三角形是否有两天边相等; else if (a == b || a == c || b == c) { printf("等腰三角形\n"); } //判断是否有两边的平方和大于第三边的平方; else if ((a*a + b*b == c*c) || (a*a + c*c == b*b) || (b*b + c*c == a*a)) { printf("直角三角形\n"); } else { printf("一般三角形\n"); } } else { printf("三边不能构成三角形\n"); } system("pause"); return 0; }
此处应该注意“&&”和“||”的正确使用:
使用“&&”逻辑与运算符,需要同时满足多种情况时。
使用“||”逻辑或运算符,需要满足几种情况中的一种时。
时间: 2024-10-15 22:56:31