编辑代码

using System;

namespace Exam
{
    class ConsoleApp
    {
        public static void Main(string[] args)
        {
            bool isValid = false;
            string password;

            while (!isValid)
            {
                Console.Write("请输入密码: ");
                password = Console.ReadLine();

                if (password.Length >= 8 &&
                    ContainsDigit(password) &&
                    ContainsUpperCase(password) &&
                    ContainsLowerCase(password))
                {
                    isValid = true;
                    Console.WriteLine("密码有效!");
                }
                else
                {
                    Console.WriteLine("密码无效!密码必须长度不小于8,并且包含数字、大写以及小写字母。请重新输入。");
                }
            }

            // 可以在这里添加后续逻辑,例如使用有效的密码进行其他操作
            // ...

            // 阻止控制台立即关闭,以便查看结果
            Console.WriteLine("按任意键退出...");
            Console.ReadKey();
        }

        private static bool ContainsDigit(string input)
        {
            foreach (char c in input)
            {
                if (char.IsDigit(c))
                {
                    return true;
                }
            }
            return false;
        }

        private static bool ContainsUpperCase(string input)
        {
            foreach (char c in input)
            {
                if (char.IsUpper(c))
                {
                    return true;
                }
            }
            return false;
        }

        private static bool ContainsLowerCase(string input)
        {
            foreach (char c in input)
            {
                if (char.IsLower(c))
                {
                    return true;
                }
            }
            return false;
        }
    }
}