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

C#使用switch case比较用户输入两个数值大小的问题排查

代码无输出的问题根因

  • 你定义的静态属性Max全程没有赋值,int类型的默认值为0,switch分支仅匹配1和2,没有命中任何分支,所有判断和输出逻辑都不会执行,自然没有结果输出。
  • switch语句完全不适用于两个数值比较的场景,属于不必要的逻辑冗余,反而增加了出错概率。
  • 原有输出逻辑缺少空格,即使逻辑执行成功也会出现Xis Maximum的格式错误。

修复后的功能实现

class Program
{
    static void Main(string[] args)
    {
        Console.WriteLine("请依次输入两个整数,每个整数单独占一行:");

        int num1 = int.Parse(Console.ReadLine());
        int num2 = int.Parse(Console.ReadLine());

        if (num1 > num2)
        {
            Console.WriteLine($"{num1} 是更大的数值");
        }
        else if (num2 > num1)
        {
            Console.WriteLine($"{num2} 是更大的数值");
        }
        else
        {
            Console.WriteLine("两个输入的整数数值相等");
        }
    }
}

可选优化建议

如果需要避免用户输入非整数导致程序崩溃,可以将int.Parse替换为int.TryParse做输入合法性校验,提前拦截非法输入并给出提示。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.29 04:45:04