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; // 来自公...
-
#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;
-
}
-
}
-
}
文章来源: blog.csdn.net,作者:C语言与CPP编程,版权归原作者所有,如需转载,请联系作者。
原文链接:blog.csdn.net/weixin_41055260/article/details/112107249
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)