zoukankan      html  css  js  c++  java
  • 打字游戏1

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    using System.Collections;
    namespace 随笔
    {
    class Program
    {
    /// <summary>
    /// 比较两个字符串相相同元素的个数数
    /// </summary>
    /// <param name="a"></param>
    /// <param name="b"></param>
    /// <param name="n"></param>
    /// <returns></returns>
    public int avg(string a, string b, int n)
    {
    int count = 0;
    for (int i = 0; i < n; i++)
    {

    if (a.Substring(i, 1).ToLower() == b.Substring(i, 1).ToLower())
    {

    count += 1;
    }

    }
    return count;

    }

    static void Main(string[] args)
    {
    //打字测试
    //随机出现若干个A-Z的字符不区分大小写
    //从键盘键入与上述字符匹配,计算输入时间与正确率

    Console.WriteLine("请输入您需要测试的字符个数:");
    int n = int.Parse(Console.ReadLine());
    Random ran = new Random();
    ArrayList ss = new ArrayList();
    ss.Add("A"); ss.Add("B"); ss.Add("C"); ss.Add("D"); ss.Add("E"); ss.Add("F");
    ss.Add("G"); ss.Add("H"); ss.Add("I"); ss.Add("J"); ss.Add("K"); ss.Add("L");
    ss.Add("M"); ss.Add("N"); ss.Add("O"); ss.Add("P"); ss.Add("Q"); ss.Add("R");
    ss.Add("S"); ss.Add("T"); ss.Add("U"); ss.Add("V"); ss.Add("W"); ss.Add("X");
    ss.Add("Y"); ss.Add("Z");
    string s ="";
    for (int i = 0; i < n; i++)
    {
    s+= ss[ran.Next(26)].ToString();

    }
    Console.WriteLine("游戏开始(按提示输入字符:");
    Console.WriteLine(s);
    DateTime dt = DateTime.Now;
    string s1 ="";
    for (int i = 0; i < n; i++)
    {
    s1 += Console.Read();

    }
    Console.ReadLine();
    DateTime dt1 = DateTime.Now;
    Program hanshu=new Program();
    int j = hanshu.avg(s,s1,n);
    double a = (double)j / n;

    Console.Write("您的输入时间为:{0}秒", Math.Ceiling((dt1 - dt).TotalSeconds));
    Console.WriteLine("您的输入准确率为:{0}", a);

    Console.ReadLine();

    }


    }
    }

  • 相关阅读:
    回顾
    单例模式
    元类
    反射和内置方法
    issubclass 和 isinstance和断点调试
    绑定方法和非绑定方法
    并发编程:IO多路复用。
    基于tcp的下载文件,以及struct模块的应用。
    并发编程:协程,异步调用。
    并发编程:GIL,线程池,进程池,阻塞,非阻塞,同步,异步
  • 原文地址:https://www.cnblogs.com/xiaobao5161/p/5735273.html
Copyright © 2011-2022 走看看