c语言打字游戏代码

简介: c语言打字游戏代码
#include<stdio.h>
#include<time.h> 
char *kw[]={"Q W E R T Y U I O P [ ]","A S D F G H J K L ; '","Z X C V B N M , . / "}; 
long AllCounter=0,RightCounter=0,WrongCounter=0; 
// 来自公众号:c语言与cpp编程
main() 
{ 
  int i,j; 
  int fun_Esc(); 
  clrscr(); 
  gotoxy(18,1); 
  printf("%s\n",kw[0]); 
  gotoxy(20,3); 
  printf("%s\n",kw[1]); 
  gotoxy(22,5); 
  printf("%s\n",kw[2]); 
  gotoxy(11,25); 
  for(i=0;i<60;i++) 
  { 
    printf("="); 
  } 
  gotoxy(1,1); 
  printf("AllCh: %ld\nRight: %ld\nWrong: %ld",AllCounter,RightCounter,WrongCounter); 
  gotoxy(50,1); 
  printf("Press Esc to exit"); 
  gotoxy(50,2);
  printf("Enter to pause"); 
  gotoxy(26,12); 
  printf("* * * * * * * * * * * * * * "); 
  gotoxy(26,13); 
  printf("* Press any key to start! *"); 
  gotoxy(26,14); 
  printf("* * * * * * * * * * * * * * "); 
  gotoxy(51,13); 
  if(getch()==27) 
  { 
    if(fun_Esc()==1) 
    { 
      clrscr(); 
      exit(0); 
    } 
  } 
  gotoxy(23,12); 
  printf(" "); 
  gotoxy(23,13); 
  printf(" "); 
  gotoxy(23,14); 
  printf(" "); 
  while(1)
        fun_Play(); 
} 
int fun_Play()
{
  int x,y,i,j; 
  unsigned int Timer; 
  char ch; 
  char cur; 
  time_t t; 
  srand((unsigned)time(&t)); 
  gotoxy(26,12); 
  printf("                              "); 
  gotoxy(26,13); 
  printf("                              "); 
  gotoxy(26,14); 
  printf("                              "); 
  y = 6; 
  Timer = 100000; 
  i = rand()%3; 
  j = rand()%(9-i); 
  ch = kw[i][j*4]; 
  x = 18+i*2+j*4; 
  while(y<=24) 
  { 
    if(kbhit()) 
    { 
      cur = getch(); 
      if(cur==ch || cur==ch+32) 
      { 
        ch = '*'; Timer = 1000; 
      } 
      else if(cur==27) 
      { 
        if(fun_Esc()==1) 
        { 
          clrscr(); 
          exit(0); 
        } 
      } 
      else if(cur=='\r') 
      { 
        gotoxy(x,y-1); 
        printf(" "); 
        gotoxy(26,12); 
        printf("* * * * * * * * * * * * * * *"); 
        gotoxy(26,13); 
        printf("* Press any key to continue *"); 
        gotoxy(26,14); 
        printf("* * * * * * * * * * * * * * * "); 
        getch(); 
        gotoxy(28,13); 
        printf(" "); 
      } 
      else 
      { 
        WrongCounter++; 
      } 
    } 
    if(y>6) 
    { 
      gotoxy(x,y-1); 
      printf(" "); 
    } 
    gotoxy(x,y); 
    printf("%c",ch); 
    gotoxy(1,1); 
    printf("AllCh: %ld\nRight: %ld\nWrong: %ld",AllCounter,RightCounter,WrongCounter); 
    delay(Timer); 
    y++; 
  } 
  AllCounter++; 
  if(ch == '*') 
  { 
    RightCounter++; 
  } 
}
int fun_Esc() 
{ 
  int key = '#'; 
  gotoxy(26,12); 
  printf("* * * * * * * * * * * * * * * * "); 
  gotoxy(26,13); 
  printf("* Are you sure to exit? (Y/N) *"); 
  gotoxy(26,14); 
  printf("* * * * * * * * * * * * * * * * "); 
  gotoxy(51,13); 
  while(key!='Y' && key!='y' && key!='N' && key!='n') 
  { 
    key = getch(); 
    if(key=='Y' || key=='y') 
    { 
      return 1; 
    } 
    if(key=='N' || key=='n') 
    { 
      gotoxy(24,12); 
      printf(" "); 
      gotoxy(24,13); 
      printf(" "); 
      gotoxy(24,14); 
      printf(" "); 
      return 0; 
    } 
  } 
}
相关文章
|
1天前
|
C语言
C语言扫雷代码(蹦蹦炸弹)(下)
C语言扫雷代码(蹦蹦炸弹)(下)
3 0
|
2天前
|
C语言
C语言实战演练之游戏框架
C语言实战演练之游戏框架
|
2天前
|
存储 算法 C语言
【C 言专栏】用 C 语言开发游戏的实践
【5月更文挑战第5天】本文探讨了使用C语言开发游戏的实践,包括选择适合的游戏类型(如贪吃蛇、俄罗斯方块),设计游戏框架、图形界面和逻辑,以及音效添加。文章还强调了性能优化、测试调试、跨平台挑战及未来发展趋势。对于热衷于C语言的开发者,这是一次挑战与乐趣并存的探索之旅。
【C 言专栏】用 C 语言开发游戏的实践
|
2天前
|
传感器 算法 C语言
C语言在嵌入式系统开发中的优化策略与代码实现
C语言在嵌入式系统开发中的优化策略与代码实现
28 1
|
2天前
|
存储 算法 C语言
C语言进阶:顺序表(数据结构基础) (以通讯录项目为代码练习)
C语言进阶:顺序表(数据结构基础) (以通讯录项目为代码练习)
|
2天前
|
编译器 Linux C语言
C语言:预处理详解(知识点和代码演示)
C语言:预处理详解(知识点和代码演示)
|
2天前
|
C语言
换硬币问题(C语言代码练习)
换硬币问题(C语言代码练习)
|
2天前
|
C语言
以c语言为基础实现的简易扫雷游戏(游戏代码附在文章最后,如有需要请自取)
以c语言为基础实现的简易扫雷游戏(游戏代码附在文章最后,如有需要请自取)
49 1
|
2天前
|
编译器 C语言 C++
c语言中代码运行时发生c++弹窗的解决方法
通过遵循这些步骤,你应该能够解决在C语言代码运行时出现C++弹窗的问题,确保代码在纯C环境中运行。 买CN2云服务器,免备案服务器,高防服务器,就选蓝易云。百度搜索:蓝易云
19 0
|
1天前
|
C语言
C语言—内存函数的实现和模拟实现(内存函数的丝绸之路)
C语言—内存函数的实现和模拟实现(内存函数的丝绸之路)
17 0