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

C语言数组与循环问题:-999终止条件无法生效求助

解决-999终止条件失效问题&数组演示程序

Hey there! 我猜你大概率是在输入处理环节没把用户输入转换成整数,导致字符串形式的"-999"和整数-999没法匹配,所以条件一直没触发。别着急,下面我给你写一个完全符合需求的Python程序,顺便帮你理清逻辑:

程序功能说明

  • 提示用户输入数字,直到以下任一条件满足:
    • 用户输入-999(终止信号)
    • 累计输入满5个数字
  • 输入停止后,展示用户最终输入的数字数组

完整代码示例

# 初始化用于存储输入数字的空数组
user_numbers = []

print("👉 请输入数字,输入-999或输入满5个数字时自动停止:")

# 循环获取输入,双条件判断终止
while len(user_numbers) < 5:
    try:
        # 将用户输入的字符串转换为整数(关键!这一步是解决-999不识别的核心)
        current_num = int(input(f"请输入第{len(user_numbers)+1}个数字:"))
        
        # 检测终止信号-999
        if current_num == -999:
            print("✅ 已检测到终止信号,停止输入!")
            break
        
        # 若不是终止信号,将数字添加到数组中
        user_numbers.append(current_num)
    except ValueError:
        # 处理用户输入非整数的情况,避免程序崩溃
        print("❌ 请输入有效的整数哦!")

# 输入结束后,展示结果
print("\n🎉 你最终输入的数字列表是:", user_numbers)

关键细节解释

  • 输入转换:必须用int(input())把用户输入的字符串转成整数,不然"-999"和-999是两种不同类型的数据,永远不会相等
  • 双条件控制:while len(user_numbers) <5保证最多输入5个数字;内部的if current_num == -999则捕捉终止信号,任一条件满足就停止循环
  • 异常处理:try-except块防止用户输入非整数时程序直接崩溃,提升程序健壮性

你可以直接运行这段代码测试,不管是输入-999还是满5个数字,程序都会正确停止哦!

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.22 09:26:50