|
发表于 2014-6-9 00:37:49
|
显示全部楼层
- #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];
- }
复制代码 |
|