使用C#实现的七个计时案例

使用C#实现的七个计时案例。

	//输入时间开始进行倒计时  单位
   public void timeOne()
        {

            int milliseconds = Convert.ToInt32(Console.ReadLine());  // 倒计时毫秒数
            int interval = 1000;  // 单次刷新间隔毫秒数 
            int elapsed = 0;
        
            Console.Write("倒计时开始:");
            while (elapsed < milliseconds)
            {
                Console.CursorLeft = 15;
                Console.Write("{0}毫秒", milliseconds - elapsed);
                Thread.Sleep(interval);
                elapsed += interval;
            }
            Console.WriteLine();
            Console.WriteLine("倒计时结束。");
            Console.ReadKey();
        }

显示结果图

在这里插入图片描述

//该方法接收输入的倒计时时间(秒),然后在控制台上显示倒计时的剩余时间。当倒计时结束时,程序将显示“倒计时结束!”。
  public void timeTwo()
        {
            Console.WriteLine("请输入倒计时时间(秒):");
            int seconds = Convert.ToInt32(Console.ReadLine());
            Console.WriteLine("倒计时开始!");

            for (int i = seconds; i >= 0; i--)
            {
                Console.Write("\r{0}", TimeSpan.FromSeconds(i).ToString(@"hh\:mm\:ss\:fff"));
                Thread.Sleep(1000);
            }

            Console.WriteLine("\n倒计时结束!");
            Console.ReadLine();
        }

效果图
在这里插入图片描述


// 通过按回车进行计时  
 public void timeThree()
      {
          Console.WriteLine("按下回车键开始计时...");
          Console.ReadLine();

          // 获取当前时间
          DateTime startTime = DateTime.Now;

          while (true)
          {
              // 计算已经经过的时间
              TimeSpan elapsedTime = DateTime.Now - startTime;

              Console.Clear();
              Console.WriteLine("计时中...");
              Console.WriteLine($"已经过 {elapsedTime.ToString(@"hh\:mm\:ss\:fff")}");

              // 延迟一秒钟
              System.Threading.Thread.Sleep(1000);
          }
      }

效果图
在这里插入图片描述

//使用一个简单的for循环和Thread.Sleep()方法来减少计时器每秒的秒数。输出格式为小时:分钟:秒,当计时器结束时,将输出"时间到了!按Enter键退出应用程序。
  public void timeFour()
        {
            Console.Write("请输入倒计时时间: ");
            int seconds = Convert.ToInt32(Console.ReadLine());

            Console.WriteLine("开始倒计时...");

            for (int i = seconds; i >= 0; i--)
            {

                Console.WriteLine("{0:D2:}:{1:D2}:{2:D2}", i / 3600, (i / 60) % 60, i % 60);
                Thread.Sleep(1000);
            }

            Console.WriteLine("时间到了!");
            Console.ReadLine();
        }

效果图

在这里插入图片描述

  public void timeFive()
        {
          
                Console.Write("请输入倒计时时间(秒):");
                int seconds = int.Parse(Console.ReadLine());

                for (int i = seconds; i >= 0; i--)
                {
                    Console.Clear(); // 清空控制台
                    Console.WriteLine("倒计时还有{0}秒", i);
                    Thread.Sleep(1000); // 暂停 1 秒钟
                }

                Console.Clear(); // 清空控制台
                Console.WriteLine("倒计时结束!");
                Console.ReadKey();
        
    }

效果图
在这里插入图片描述

//计时器 增加秒数
  public void timeSix()
        {
            int seconds = 0;
            while (true)
            {
                Console.Clear(); //清空控制台
                Console.WriteLine("计时器: {0} 秒", seconds);
                Thread.Sleep(1000); //线程休眠1秒
                seconds++; //增加秒数计数器
            }
        }

效果图
在这里插入图片描述

// 按下回车开始进行计时  再次按下回车则返回计时时间
   public void timeSeven()
        {
            Console.WriteLine("按下 Enter 开始计时,按下 Enter 停止计时。");

            while (true)
            {
                if (Console.ReadKey().Key == ConsoleKey.Enter)
                {
                    var watch = new System.Diagnostics.Stopwatch();
                    watch.Start();

                    Console.WriteLine("计时开始,请按下 Enter 停止计时。");
                    Console.ReadKey();

                    watch.Stop();
                    Console.WriteLine($"计时结束,用时 {watch.Elapsed.Hours} 小时 {watch.Elapsed.Minutes} 分钟 {watch.Elapsed.Seconds}{watch.Elapsed.Milliseconds} 毫秒。");
                    break;
                }
            }

            Console.ReadKey();
        }

效果图
在这里插入图片描述

  • 2
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值