using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace ConsoleApplication1 { class Program { static void Main(string[] args) { //随机生成一个四位数的验证码,范围是0~9的数字,26位英文字母的大小写,输入验证码是否正确 for (; ; )//外部加一个无限循环,当用户输入错误可以再次进入重新输入 { Random ran = new Random();//初始化一个随机数 string a = "", b = ""; //创建两个字符串变量 for (int i = 0; i < 4; i++)//写一个四次的循环,以为每次生成一个随机数,一共需要四个 { //下面数组里面一共有36个元素,也就是0~35的索引,所以创建36以内的36个非负随机数 int c = ran.Next(36); string[] d = new string[36] //开辟一个数组空间放置36个字符串,命名d { "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z","1","2","3","4","5","6","7","8","9","0" }; a = d[c];//变量a等于随机数的随机的一个元素 b += a;//每次随机打印一个数组内的元素用b来接收,一共循环四次,生成四位数代码 } Console.WriteLine("验证码是:" + b);//计算机输出验证码 Console.Write("请输入验证码:");//用户输入验证码 string f = Console.ReadLine();//用一个字符串类型的变量f接收 f = f.ToUpper();//因为数组内的英文是大写,用户输入不区分大小写,所以把用户输入的转为大 //写来比较 if (f == b)//如果用户输入的等于电脑输入的,输入正确, { Console.WriteLine("输入正确"); break;//因为外部套了一个无限循环,当用户输入错误可以再次进入循环重新输入, } //所以当输入正确时,break跳出循环 else { Console.WriteLine("验证码输入不正确,请重新输入!"); } } Console.ReadLine(); } } }
时间: 2024-12-31 03:38:58