80分不知道哪里出错了,求助
查看原帖
80分不知道哪里出错了,求助
341753
damumooc楼主2020/4/29 16:53
#include<stdio.h>
#include <algorithm>
//如果三条线段不能组成一个三角形,输出Not triangle;
//如果是直角三角形,输出Right triangle;
//如果是锐角三角形,输出Acute triangle;
//如果是钝角三角形,输出Obtuse triangle;
//如果是等腰三角形,输出Isosceles triangle;
//如果是等边三角形,输出Equilateral triangle。
int main(){
	int a , b , c ; 
	scanf("%d %d %d",&a ,&b ,&c);
  //从小到大排序
	if(a>b){
		int temp ;
		temp = b;
		b= a ;
		a = temp;
	}
	if(b>c){
		int swap ;
		swap = b ; 
		b = c;
		c = swap;
	}
	if(a>c){
		int s ;
		s = a ;
		a = c ;
		c = s ;
	}
	if(a+b>c&&a-b<c){
		if(a==b==c){	//等边三角形的情况 
			printf("Equilanteral triangle\n");
			printf("Isosceles triangle\n");
			printf("Acute triangle");
		}else if(a==b){	//等腰三角形的情况 
				if((a*a)+(b*b)==(c*c)){
			printf("Right triangle\n");
			printf("Isosceles triangle");
		}else if((a*a)+(b*b)<(c*c)){
			printf("Obtuse triangle\n");
			printf("Isosceles triangle");
		}else if((a*a)+(b*b)>(c*c)){
			printf("Acute triangle\n");
			printf("Isosceles triangle");
		}	
		}else if((a*a)+(b*b)==(c*c)){//直角,锐角,钝角的情况 
			printf("Right triangle");
		}else if((a*a)+(b*b)>(c*c)){
			printf("Acute triangle");
		}else if((a*a)+(b*b)<(c*c)){
			printf("Obtuse triangle");
		}
	}else {	//不满足三角形的情况 
		printf("Not triangle");
	}
	return 0;

}

2020/4/29 16:53
加载中...