using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace 类复习
{
class Program
{
static void Main(string[] args)
{
for (; ; )
{

//输入身份证号,截取生日,输出
//Console.WriteLine("请输入身份证号:");
//string a = Console.ReadLine();
//int b = a.Length;
//if (a.Length == 18)
//{
// string year = a.Substring(6, 4);
// string month = a.Substring(10, 2);
// string day = a.Substring(12, 2);
// Console.WriteLine("您的生日是" + year + "年" + month + "月" + day + "日");
//}
//else
//{
// Console.WriteLine("您输入的身份证有误请重新输入");
//}

//邮箱格式
//1.有且只有一个@
//2.不能以@开头
//3.@和.不能在一起
//4.@后至少有一个.
//5.不能以.结尾
//Console.Write("请输入你的邮箱账号:");
//string mail = Console.ReadLine();
//bool a = mail.Contains("@");
//if (a)
//{
// int b = mail.IndexOf("@");
// int c = mail.LastIndexOf("@");
// if (b == c)
// {
// if (b != 0)
// {
// string mail1 = mail.Substring(b);
// if (mail1.Contains("."))
// {
// int d = mail1.IndexOf(".");
// if (d != 1)
// {
// int e = mail1.LastIndexOf(".");
// if (e != mail1.Length - 1)
// {
// Console.WriteLine("邮箱格式输入正确");
// }
// else
// {
// Console.WriteLine("输入有误!");
// }
// }
// }
// }
// else
// {
// Console.WriteLine("输入有误!");
// }
// }
//}

//随机数类 Random
//Random ran = new Random();//初始化
//int a = ran.Next(10);
//Console.WriteLine(a);

//Console.ReadLine();

//随机出验证码,对照输入,判断是否正确
string s = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890";
Random ran = new Random();
for(;;){
int a1 = ran.Next(s.Length);
string b1 = s.Substring(a1, 1);

int a2 = ran.Next(s.Length);
string b2 = s.Substring(a2, 1);

int a3 = ran.Next(s.Length);
string b3 = s.Substring(a3, 1);

int a4 = ran.Next(s.Length);
string b4 = s.Substring(a4, 1);

string m=b1+b2+b3+b4;
Console.WriteLine("验证码为:"+m);
string n = m.ToUpper();

Console.WriteLine("请输入验证码:");
string c = Console.ReadLine();
if (c.Length == 4)
{
string d = c.ToUpper();
if (n == d)
{
Console.WriteLine("验证码输入正确!");
Console.ReadLine();
Console.Clear();

break;
}
else
{
Console.WriteLine("输入有误!");
}
}
else
{
Console.WriteLine("您输入的验证码位数不对");
}
Console.ReadLine();
Console.Clear();

}

}
}
}
}

C#第十一节课的更多相关文章

  1. centos 邮件服务 腾讯企业邮箱(免费) 使用iRedmail 需要有公网的centos主机 发邮件协议:smtp 端口25 收邮件协议:pop3 端口110 iredmail安装配置 使用邮箱系统 第三十一节课

    centos   邮件服务  腾讯企业邮箱(免费) 使用iRedmail 需要有公网的centos主机 发邮件协议:smtp 端口25  收邮件协议:pop3 端口110  iredmail安装配置 ...

  2. centos LAMP第三部分php,mysql配置 php配置文件 配置php的error_log 配置php的open_basedir 安装php的扩展模块 phpize mysql配置第二十一节课

    centos   LAMP第三部分php,mysql配置 php配置文件   配置php的error_log  配置php的open_basedir 安装php的扩展模块 phpize  mysql配 ...

  3. centos 阶段复习 2015-4-6 dd命令 hosts.allow和hosts.deny 啊铭的myssh脚本 清空history命令历史 /dev/zero 零发生器 /dev/null 黑洞 /dev/random 生成随机数 第十一节课

    centos 阶段复习 2015-4-6  dd命令 hosts.allow和hosts.deny 啊铭的myssh脚本 清空history命令历史  /dev/zero 零发生器  /dev/nul ...

  4. 风炫安全web安全学习第三十一节课 命令执行以及代码执行演示

    风炫安全web安全学习第三十一节课 命令执行以及代码执行演示 参考: http://blog.evalshell.com/2020/12/20/风炫安全web安全学习第三十一节课-命令执行以及代/

  5. 风炫安全WEB安全学习第二十一节课 存储型XSS讲解

    风炫安全WEB安全学习第二十一节课 存储型XSS讲解 存储型XSS演示 存储型XSS,持久化,代码是存储在服务器中的,如在个人信息或发表文章等地方,加入代码,如果没有过滤或过滤不严,那么这些代码将储存 ...

  6. 《linux就该这么学》第十一节课: 第九章,网卡绑定与sshd服务

    8.4.服务的访问控制列表 TCPwrappers是RHEL7中默认启用的流量监控程序,能够对服务做出允许或拒绝. TCPwrappers服务由两个文件控制:  /etc/hosts.allow    ...

  7. Linux第十一节课学习笔记

    区域就是firewalld预先准备了几套防火墙策略集合(策略模板),用户可以根据生产场景的不同而选择合适的策略集合,从而实现防火墙策略之间的快速切换. RUNTIME模式:当前生效,重启失效:PERM ...

  8. php第二十一节课

    AJAX <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3 ...

  9. php第十一节课

    增删改查 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3 ...

随机推荐

  1. UVA 10859 树形DP

    很明显的树形DP了,设状态dp[i][0],dp[i][1].枚举子节点放或不放的两种状态. 在此学到一种不同于一般处理的方法,题目要求被两灯照亮的边尽量多,反过来即被一灯照亮的尽量少设为e.又需要的 ...

  2. jQuery和CSS3炫酷button点击波特效

    这是一款效果很炫酷的jQuery和CSS3炫酷button点击波特效.该特效当用户在菜单button上点击的时候.从鼠标点击的点開始,会有一道光波以改点为原点向外辐射的动画效果,很绚丽. 在线演示:h ...

  3. UVA 10069 Distinct Subsequences(DP)

    考虑两个字符串,我们用dp[i][j]表示字串第到i个和字符串到第j个的总数,由于字串必须连续 因此dp[i][j]能够有dp[i][j-1]和dp[i-1][j-1]递推而来,而不能由dp[i-1] ...

  4. IOS的一个关于球碰撞的小游戏

    这个游戏是关于一个球随机在屏幕上移动,能够用手指来操纵令一个球,假设两个球碰撞到一起,就表示输了,很easy的一个游戏 在StoryBoard里定义两个UIImageView和一个startbutto ...

  5. springboot-quartz普通任务与可传参任务

    两者区别与作用: 普通任务:总调度(SchedulerFactoryBean)--> 定时调度器(CronTriggerFactoryBean) --> 调度明细自定义执行方法bean(M ...

  6. B1202 [HNOI2005]狡猾的商人 并查集

    其实就是并查集的题.维护一个前缀和,然后用并查集维护前缀和,每次判断是否合理就行了. 题干: Description 刁姹接到一个任务,为税务部门调查一位商人的账本,看看账本是不是伪造的.账本上记录了 ...

  7. 原生JS---6

    原生js学习笔记6——事件 事件对象 鼠标事件 event.clientX在可视区中,鼠标点击的x坐标 event.clientY在可视区中,鼠标点击的y坐标 示例: <!DOCTYPE htm ...

  8. 模拟Queue(wait/notify)

    BlockingQueue:顾名思义,首先它是一个队列,并且支持阻塞的机制,阻塞的放入和得到数据.我们要实现LinkedBlockingQueue下面的两个方法put和take. put(anObje ...

  9. SqlMap常用参数(一)

    sqlmap可谓是利用sql注入的神器了,sqlmap的参数很多,接下介绍几种常见的参数. 一.注入access数据库常用的参数 sqlmap.py -u "url"  //判断参 ...

  10. 知识总结1:debug命令汇总(一)

    -r 得到当前寄存器状态或修改寄存器状态 -d 跳到默认(CS:IP指定的地址)区间 -d 段地址:偏移地址 跳到(段地址*+偏移地址)区间 -d 段地址:起始偏移地址 终止偏移地址 跳到(段地址*+ ...