⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 秒表.cpp

📁 这是一款时间显示软件 简练但包含了一般时钟的特性
💻 CPP
字号:
#include<stdio.h>
#include<conio.h>
#include<stdlib.h>

#define BEGIN 13                //开始
#define PAUSE 122               //暂停
#define RESET 120               //复位
#define REGISTER 32            //记录
#define ESC 27                 //退出

int x=33,y=12;         //定位输出

void yc(long t)  //延迟
{long i;
 for(i=0;i<t;i++);
}

void windows()
{
  printf("         ╔═════╗\n");
  printf("         ║   秒表   ║\n");
  printf("         ╚═════╝\n");
  printf("   ╔══════════════════════════════╗\n");
  printf("   ║操作说明:                                                  ║\n");
  printf("   ║按ENTER键开始计时                                           ║\n");
  printf("   ║按Z键暂停或继续                                             ║\n");
  printf("   ║按X键复位                                                   ║\n");
  printf("   ║按空格键执行多重记录                                        ║\n");
  printf("   ║按ESC键退出                                                 ║\n");
  printf("   ╚══════════════════════════════╝\n");
  printf("                               ╔═════╗\n");
  printf("                               ║          ║\n");
  printf("                               ╚═════╝\n");
}

void windows_()
{
 gotoxy(x-2,y+1);
 printf("║          ║");
 gotoxy(x-2,y+2);
 printf("╚═════╝");
 y++;
}
int main()
{
  int k=0;
  int m=0,i=0,j=0,m_=0,i_=0,j_=0;
  windows();
  for(;k!=BEGIN;)
   {
    kbhit();
    k=getch();
   }
 GO:
  switch(k)                     //按键判断
   {
    case REGISTER:
     windows_();
     m_=m;
     i_=i;
     j_=j;
     break;
    case PAUSE:
     m_=m;
     i_=i;
     j_=j;
     k=0;
     for(;(k!=PAUSE)&&(k!=ESC);)
      {
       kbhit();
       k=getch();
      }
     if(k==ESC)
      {
       gotoxy(5,16);
       return(0);
      }
     break;
    case RESET:
     system("cls");
     x=33,y=12;
     windows();
     break;
    case ESC:
     gotoxy(5,16);
     return(0);
   }
  for(m=0;;m++)
    for(i=0;;i++)
     {
       if(i==60)
        break;
       for(j=0;;j++)
       {
	if((k==PAUSE)||(k==REGISTER))
	 {
          m=m_;
	  i=i_;
	  j=j_;
	  k=0;
	 }
	k=kbhit();
        if(k!=0)
         k=getch();
        if((k==PAUSE)||(k==ESC)||(k==REGISTER)||(k==RESET))
          goto GO;
        if(j==100)break;
        yc(3700000);
        gotoxy(x,y);
        printf("%2d:%2d:%2d",m,i,j);
       }
     }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -