题目:输入三条线段的长度,判定它们能否构成一个三角形。如果能构成三角形,打印它们所构成三角形的名称,包括等边、等腰、直角或任意三角形。
代码段:
#include <stdio.h>
int main (){
int a = 0, b = 0, c = 0;
printf("请输入三条线段长度:\n");
scanf("%d", &a);
scanf("%d", &b);
scanf("%d", &c);
if (a + b > c && a + c > b && b + c > a) {
if (a == b || a == c || b == c) {
if (a = b = c) {
printf("这三个长度构成的三角形是等边三角形");
}
else {
printf("这三个长度构成的三角形是等腰三角形");
}
}
else if (a * a == b * b + c * c || b * b == a * a + c * c || c * c == a * a + b * b) {
printf("这三个长度构成的三角形是直角三角形");
}
else {
printf("这三个长度构成的三角形是任意三角形");
}
}
else {
printf("这三个长度不能构成一个三角形");
}
return 0;
}
测试结果:
小结:一定要注意什么地方该用“或”什么地方该用“且”。