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

C#新手求助:用数组实现用户输入1-25的5个数字并限制范围

解决C#数组输入范围限制的问题

嘿,作为C#新手能想到用数组完成作业已经很棒啦!先提个小细节:你现在定义的数组长度是4,但作业要求输入5个数字,得先把数组定义改成int[] usernum = new int[5];哦。

接下来要实现1-25的范围校验,我们可以用do-while循环来确保用户输入符合要求——只要输入的数值不在1到25之间,就一直提示用户重新输入。另外,为了避免用户输入非数字导致程序崩溃,还可以加上int.TryParse做输入合法性检查,这会让你的代码更健壮。

完整代码如下:

int[] usernum = new int[5]; // 修正数组长度为5,满足输入5个数字的需求
for (int i = 0; i < usernum.Length; i++)
{
    int inputNum;
    bool isValidInput;
    do
    {
        Console.WriteLine($"请输入第{i+1}个1-25之间的数字:");
        // 同时完成数字转换和范围校验
        isValidInput = int.TryParse(Console.ReadLine(), out inputNum) && inputNum >= 1 && inputNum <= 25;
        if (!isValidInput)
        {
            Console.WriteLine("输入无效!请输入1到25之间的整数。");
        }
    } while (!isValidInput); // 不符合要求就重复提示输入

    usernum[i] = inputNum;
}

// 可选:输出验证用户输入的结果
Console.WriteLine("你输入的有效数字为:");
foreach (int num in usernum)
{
    Console.Write(num + " ");
}

代码关键点解释:

  • 数组长度修正:把数组长度从4调整为5,匹配作业要求的5个输入数字。
  • int.TryParse的使用:比Convert.ToInt32更安全,它会返回布尔值表示转换是否成功,避免用户输入字母/符号时程序直接崩溃。
  • do-while循环:先执行一次输入操作,再判断是否符合要求,确保用户必须输入合法数值后才会进入下一个循环。
  • 范围校验逻辑:通过inputNum >= 1 && inputNum <= 25严格限制输入数值的范围,完全满足作业要求。

这样你的代码就完全符合老师的要求啦,既用了数组,又实现了输入范围限制,还能处理非法输入的情况~

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.09 14:27:49