解题思路: 根据三角形的性质,任意两边之和大于第三边,即条件为a+b>c、a+c>b、b+c>a。 首先判断是否构成三角形,若不能则输出"no"。 若能构成三角形,进一步判断三角形的类型:

  • 若三边平方和等于最长边的平方,则为直角三角形,输出"zhijiao";
  • 若三边平方和大于最长边的平方,则为锐角三角形,输出"ruijiao";
  • 若三边平方和小于最长边的平方,则为钝角三角形,输出"dunjiao"。

C++代码实现:

#include <iostream>
using namespace std;

int main() {
    int a, b, c;
    cin >> a >> b >> c;
    
    if (a + b > c && a + c > b && b + c > a) {
        if (a*a + b*b == c*c || a*a + c*c == b*b || b*b + c*c == a*a) {
            cout << "zhijiao" << endl;
        } else if (a*a + b*b > c*c && a*a + c*c > b*b && b*b + c*c > a*a) {
            cout << "ruijiao" << endl;
        } else {
            cout << "dunjiao" << endl;
        }
    } else {
        cout << "no" << endl;
    }
    
    return 0;
}
``
C++题目描述输入三个整数以这三个数为边长判断是否构成三角形;若不能输出no若构成三角形进一步判断它们构的是:锐角三角形或直角三角形或钝角三角形分别输出ruijiaozhijiaodunjiao输入格式三个整数输出格式一个字符串输入输出样例样例 1输入样例 复制3 4 5输出样例 复制zhijiao

原文地址: https://www.cveoy.top/t/topic/iSiI 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录