#include<stdio.h>
#include<math.h>
void sjx(int a,int b, int c);
void mp(int * a,int * b,int * c);
int main(void)
{
int length,width,height;
printf("please input length : \n >");
scanf("%d",&length);
printf("please input width : \n >");
scanf("%d",&width);
printf("please input height : \n >");
scanf("%d",&height);
sjx(length,width,height);
return 0;
}
void sjx(int a,int b, int c)//不废话了
{
int a2,b2,c2;
if(a>0 && b>0 && c>0)
{
mp(&a,&b,&c);
if(a<b+c)
{
a2 = pow(a,2);
b2 = pow(b,2);
c2 = pow(c,2);
if(a2 < b2 + c2)
{
if(b == c)
{
if(a != b)
{
printf("等腰锐角三角形\n");
}
else
{
printf("等边三角形\n");
}
}
else
{
printf("普通锐角三角形\n");
}
}
else if(a2 == b2 + c2)
{
if(b == c)
{
printf("等腰直角三角形\n");
}
else
{
printf("普通直角三角形\n");
}
}
else
{
if(b == c)
{
printf("等腰钝角三角形\n");
}
else
{
printf("普通钝角三角形\n");
}
}
}
else
{
printf("这三边构不成三角形!\n");
}
}
else
{
printf("三角形三边必须都是正数!\n");
}
}
void mp(int * a,int * b,int * c)//将三边按从大到小排列
{
int i,j,t;
int n[3] = {*a,*b,*c};
for(i = 0;i<2;i++)
{
for(j = i+1;j<3;j++)
{
if(n[i]<n[j])
{
t = n[i];
n[i] = n[j];
n[j] = t;
}
}
}
*a = n[0];
*b = n[1];
*c = n[2];
}
|