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

如何在C#控制台应用程序中实现登录尝试次数控制

C#控制台登录次数限制功能实现方案

实现思路

  • 新增尝试次数计数器,设定最大错误尝试阈值为3次
  • 每次用户输入凭证后优先校验正确性,校验通过直接输出欢迎信息并终止流程
  • 校验失败时计数器累加,剩余尝试次数>0时输出Try Again引导用户重新输入
  • 累计错误次数达到3次时直接输出System Blocked终止程序

完整可运行代码

using System;

namespace LoginAuthDemo
{
    class Program
    {
        static void Main(string[] args)
        {
            // 配置正确的凭证与尝试阈值
            const string ValidUsername = "user";
            const string ValidPassword = "word";
            const int MaxAttempts = 3;
            int failedAttempts = 0;
            bool isLoginSuccess = false;

            while (failedAttempts < MaxAttempts)
            {
                Console.Write("Username:");
                string inputUname = Console.ReadLine();
                Console.Write("Password:");
                string inputPass = Console.ReadLine();

                // 校验凭证合法性
                if (inputUname == ValidUsername && inputPass == ValidPassword)
                {
                    isLoginSuccess = true;
                    break;
                }

                failedAttempts++;
                // 还有剩余尝试次数时提示重试
                if (failedAttempts < MaxAttempts)
                {
                    Console.WriteLine("Try Again");
                }
            }

            // 输出最终结果
            if (isLoginSuccess)
            {
                Console.WriteLine("Welcome");
            }
            else
            {
                Console.WriteLine("System Blocked");
            }
            
            Console.ReadKey();
        }
    }
}

代码说明

  • 用常量存储合法凭证和最大尝试次数,后续业务调整时可直接修改常量值,无需改动逻辑代码
  • 修正了原有参考代码中Console.Readline()的拼写错误,正确方法名为Console.ReadLine()
  • 凭证输入变量和合法凭证变量拆分,避免变量复用导致的逻辑混乱
  • 所有输出内容完全匹配需求要求,无额外冗余输出

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.26 03:15:03