C语言若为等边三角形输出"1",若为等腰三角形输出"2",若为一般三角形输出"3",若无法组成三角形输出"-1"。
时间: 2023-04-05 18:05:05 浏览: 74
这是一个编程问题,我可以回答。可以使用三角形的边长关系来判断,如果三边都相等,则为等边三角形;如果有两边相等,则为等腰三角形;如果三边都不相等,则为一般三角形;如果无法组成三角形,则需要满足任意两边之和大于第三边,否则输出"-1"。
相关问题
C语言编程,从键盘上输入3条边的长度(用空格分隔),然后判断是否可以构成一个三角形(条件:任意两边之和均大于第三边),如果可以则进一步判断是等边、等腰还是一般三角形。若为等边三角形则输出"1",若为等腰三角形则输出"2",若为一般三角形则输出"3",若无法构成三角形则输出"-1"。
```c
#include <stdio.h>
int main() {
int a, b, c;
printf("请输入三角形的三条边长(用空格分隔):\n");
scanf("%d %d %d", &a, &b, &c);
if (a + b > c && a + c > b && b + c > a) { // 可以构成三角形
if (a == b && b == c) {
printf("1\n"); // 等边三角形
} else if (a == b || b == c || a == c) {
printf("2\n"); // 等腰三角形
} else {
printf("3\n"); // 一般三角形
}
} else {
printf("-1\n"); // 无法构成三角形
}
return 0;
}
```
用C语言写程序,要求程序运行时,从键盘输入三角形的三条边长(整型),输出三角形的类型代码。若三角形为等边三角形,输出:1:若三角形为等腰三角形,输出:2:若三角形为直角三角形,输出:3:若三角形为一般三角形,输出:0:若输入的三条边不能构成三角形,输出:error!
在C语言中编写这个程序,你需要首先获取用户的输入,然后检查这些边长是否满足构成三角形的条件(任意两边之和大于第三边)。接着根据三角形的特性判断并输出相应的类型。这里是一个简单的示例:
```c
#include <stdio.h>
#include <math.h> // 引入数学库以计算平方根
int main() {
int a, b, c;
float s; // 计算半周长
printf("请输入三角形的三条边长:\n");
scanf("%d %d %d", &a, &b, &c);
if (a + b > c && a + c > b && b + c > a) { // 判断是否能构成三角形
s = (a + b + c) / 2; // 半周长
float sqrt_val = sqrt(s * (s - a) * (s - b) * (s - c)); // 计算面积
if (fabs(sqrt_val - floor(sqrt_val)) < 1e-6) { // 等边三角形
printf("1: 等边三角形\n");
} else if (a == b || a == c || b == c) { // 等腰三角形
printf("2: 等腰三角形\n");
} else if (sqrt_val == sqrt(a * a + b * b) && sqrt_val == sqrt(c * c)) { // 直角三角形
printf("3: 直角三角形\n");
} else { // 一般三角形
printf("0: 一般三角形\n");
}
} else {
printf("error!\n"); // 输入的边无法构成三角形
}
return 0;
}
```
阅读全文