#include <stdio.h>
int fun(int a,int b,int c);
int main ()
{
int a = 0, b = 0, c = 0;
printf("请输入三边的长度:");
scanf("%d%d%d",&a,&b,&c);
int ans = fun(a,b,c);
if(0 == ans)
{
printf("不能构成三角形\n");
}
if(1 == ans)
{
printf("能构成一般三角形\n");
}
if(2 == ans)
{
printf("能构成等腰三角形\n");
}
if(3 == ans)
{
printf("能构成等边三角形\n");
}
}
int fun(int a,int b,int c)
{
int num = 0; //返回的结果
//任意两边和大于第三边
int res = (a + b > c) && (a +c > b) && (c + b > a);
//是否有两边相等
int res1 = (a == b) || (b == c) || (a == c);
//只有三边都是正数的时候才有意义
if(a > 0 && b >0 && c >0 && res)
{
//判断等边三角形
if(a == b && b == c && a ==c)
{
num = 3;
}
//判断等腰三角形
else if(res1)
{
num = 2;
}
//判断一般三角形
else
{
num = 1;
}
}
else
{
num = 0;
}
return num;
}
|