1c语言根据输入的三角形的三边(在黑屏状态下输入)判断三角形的类型,并输出它的面积和它的类型(判断是等边三角形,还是等腰三角形,还是普通三角形,还是三边长不能构成三角形)
时间: 2024-05-05 09:16:26 浏览: 5
```c
#include <stdio.h>
#include <math.h>
int main() {
float a, b, c;
printf("请输入三角形的三个边长,用空格隔开:\n");
scanf("%f %f %f", &a, &b, &c);
if (a + b > c && a + c > b && b + c > a) {
// 可以构成三角形
float p = (a + b + c) / 2; // 计算半周长
float s = sqrt(p * (p - a) * (p - b) * (p - c)); // 计算面积
if (a == b && b == c) {
printf("这是一个等边三角形,面积为:%f\n", s);
} else if (a == b || b == c || a == c) {
printf("这是一个等腰三角形,面积为:%f\n", s);
} else {
printf("这是一个普通三角形,面积为:%f\n", s);
}
} else {
printf("这三条边不能构成三角形!\n");
}
return 0;
}
```
相关问题
C语言根据输入的三角形的三边(在黑屏状态下输入)判断三角形的类型,并输出它的面积和它的类型(判断是等边三角形,还是等腰三角形,还是普通三角形,还是三边长不能构成三角形)
以下是代码实现:
```c
#include<stdio.h>
#include<math.h>
int main()
{
double a, b, c, p, area;
printf("请输入三角形的三边长度:\n");
scanf("%lf %lf %lf", &a, &b, &c);
if(a+b>c && a+c>b && b+c>a) // 判断是否能构成三角形
{
p = (a+b+c)/2; // 计算半周长
area = sqrt(p*(p-a)*(p-b)*(p-c)); // 计算面积
if(a==b && b==c) // 判断是否为等边三角形
{
printf("三角形为等边三角形,面积为%.2lf\n", area);
}
else if(a==b || a==c || b==c) // 判断是否为等腰三角形
{
printf("三角形为等腰三角形,面积为%.2lf\n", area);
}
else // 不是等边三角形也不是等腰三角形,即为普通三角形
{
printf("三角形为普通三角形,面积为%.2lf\n", area);
}
}
else // 不能构成三角形
{
printf("三边长不能构成三角形\n");
}
return 0;
}
```
在输入三角形三边的时候,需要用空格或回车将它们分隔开。程序会先判断输入的三边是否能构成三角形,如果不能,则直接输出“三边长不能构成三角形”;如果可以,就根据三边长度的大小关系判断三角形类型,并计算出它的面积。最后输出面积和类型。
请用c语言根据输入的三角形的三边(在黑屏状态下输入)判断三角形的类型,并输出它的面积和它的类型(判断是等边三角形,还是等腰三角形,还是普通三角形,还是三边长不能构成三角形)。
#include<stdio.h>
#include<math.h>
int main()
{
float a,b,c,p,area;
printf("请输入三角形的三边:\n");
scanf("%f%f%f",&a,&b,&c);
if(a+b>c && a+c>b && b+c>a) //判断是否能构成三角形
{
p=(a+b+c)/2; //计算半周长
area=sqrt(p*(p-a)*(p-b)*(p-c)); //计算面积
if(a==b && b==c) //判断等边三角形
{
printf("该三角形为等边三角形,面积为:%.2f\n",area);
}
else if(a==b || b==c || c==a) //判断等腰三角形
{
printf("该三角形为等腰三角形,面积为:%.2f\n",area);
}
else //普通三角形
{
printf("该三角形为普通三角形,面积为:%.2f\n",area);
}
}
else //不能构成三角形
{
printf("三边长不能构成三角形!\n");
}
return 0;
}