c++用模板来判断三角形的形状

img

img


为什么编译的结果会是这样的,还没有学过模板, (*꒦ິ⌓꒦ີ),希望能得到解决,会采纳的!

img


img


#include<iostream>
using namespace std;
#include<cmath>
int main()
{
    cout<<"请输入三角形的三条边:"<<endl;
    int a,b,c;//a,b,c分别表示三角形的三边
    cin>>a>>b>>c;
    if((((a+b)>c&&c>abs(a-b))&&((c+b)>a&&a>abs(c-b))&&((a+c)>b&&b>abs(a-c)))){
        if(a==b&&b==c&&a==c)
            cout<<"这是等边三角形"<<endl;
        else if(a==b||a==c||b==c)
            cout<<"这是等腰三角形"<<endl;
        else if((a*a+b*b==c*c)||(b*b+c*c==a*a)||(a*a+c*c==b*b))
            cout<<"这是直角三角形"<<endl;
        else 
            cout<<"这是普通三角形"<<endl;

    }else{
        cout<<"无法构成三角形"<<endl;
    }

    return 0;
}

if(a+b>c&&a+c>b& &b+c>a)改成if(a+b>c||a+c>b||b+c>a),他们应该是”或”的关系,而不是“且”的关系