You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

C++嵌套if语句问题:输入任意数据均输出所有结果,求修正

问题解决:C++温度判断程序修正

你的代码问题在于使用了多个独立的if语句而非嵌套结构,导致多个条件会被同时触发;同时最后一个else存在语法错误,使得"it is hot"总会被打印。以下是符合要求的修正代码,使用嵌套if/else实现互斥的分支判断:

#include <iostream>
using namespace std;

int main()
{
    int temp;
    
    cout << "请输入温度:" << endl;
    cin >> temp;
    
    if (temp < 40)
    {
        cout << "it is cold\n";
    }
    else
    {
        if (temp < 60)
        {  
            cout << "it is chilly\n";
        }
        else
        {
            if (temp < 80)
            {
                cout << "it is nice\n";
            }
            else
            {
                cout << "it is hot\n";
            }
        }
    }

    return 0;
}

代码说明

  • 采用嵌套if/else结构,确保每个温度区间只会触发一个输出语句,彻底解决多条件同时触发的问题。
  • 外层else承接所有temp >=40的情况,内层依次细分区间,完全符合题目禁止使用else if的要求。
  • 修正了原代码中else的语法错误,移除了多余的(temp >80)判断——else本身就代表前面条件不成立的情况,即temp >=80。

内容的提问来源于stack exchange,提问作者Ann Baumgart

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.21 21:03:16