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

C++中结合break与continue操作符的代码修改需求:添加n<0时用break终止程序

解决方案

这里是修改后的代码,已经添加了n < 0时用break终止程序的逻辑:

using namespace std; 
int main() { 
    int n; 
    int total = 0; 
    cout << "Enter a value: "; 
    cin >> n; 

    // 新增:检查输入是否为负数,用break终止程序
    do {
        if (n < 0) {
            break; // 跳出这个do-while块,终止后续逻辑执行
        }

        while (total + n <= 1000) { 
            cout << total << " "; 
            total = n + total; 
            continue; 
        }
    } while(false); // 仅执行一次的循环,让break可以合法生效

    return 0;
}

关键修改说明:

  • 用do-while(false)创建了一个“一次性执行块”,这样break语句就能合法跳出这个块,直接终止后续程序逻辑(毕竟break只能用于循环或switch结构)。
  • 读取输入n后立即做负数检查,一旦满足条件就触发break,程序直接跳到return 0结束运行。
  • 原有的累加输出逻辑完全保留,只有当n为非负数时才会正常执行。

如果你觉得do-while的写法有点绕,也可以换成无限循环的方式,效果是一样的:

using namespace std; 
int main() { 
    int n; 
    int total = 0; 
    cout << "Enter a value: "; 
    cin >> n; 

    while(true) {
        if (n < 0) {
            break;
        }

        while (total + n <= 1000) { 
            cout << total << " "; 
            total = n + total; 
            continue; 
        }
        break; // 非负数时执行完逻辑后跳出外层循环
    }

    return 0;
}

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.28 17:42:42