#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;
/* it学习网收集 http://www.zixue7.com */
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;
}
}
}
小码叔
- 粉丝: 4986
- 资源: 5144
最新资源
- 多台三相逆变器并联(本模型为三台并联,市面上多为两台并联)matlab simulink仿真 功能:实现并联系统中各逆变器输出
- Ruby中的正则表达式及其应用实例
- WMS507紧耦合惯性gps北斗紧组合导航MATLAB仿真代码
- 以Java的GUI编程为基础设计的贪吃蛇游戏
- Simulink仿真入门学习光伏系统 电导增量法跟踪光伏最大功率点,光照强度发生变化可以有效跟踪 通俗易懂,适合入门学习光伏系统
- 汽车电子系统中的AURIX TC23x系列MCU开发与应用详解
- 西克编码器调零软件,西克编码器读写位置软件,西克SKM36编码器调零软件,SICK编码器调零软件
- 提升深度学习图像模型性能的多种训练技巧详解
- 深入剖析与实践大模型技术路径及应用场景
- 文本数据分析与预处理方法详解
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈