19.04.27--作业 打字游戏

/*

编译环境:windows系统

编译器:VC6.0

编译时间:19.04.27

编译者:黑桃3

*/

#include <stdio.h>
#include <time.h>
#include <conio.h>
#include <stdlib.h>
#define NUM 50
void tips()
{
 system("clear");
 printf("==============打字游戏==============\n");
 printf("==========按任意键开启游戏==========\n");
 printf("===========按ESC退出游戏============\n");
 char ch = _getch();
 if (ch == 27)
 {
  exit(0);
 }
}
void rand_ch(char *arr)
{
 srand((unsigned int)time(NULL));
 for (int i = 0; i < NUM; i++)
 {
  arr[i] = rand() % 26 + 'a';
 }
}
void start_game(char *arr)
{
 //计时器
 char ch;
 int start_time;
 int end_time;
 int count = 0;
 for (int i = 0; i < NUM; i++)
 {
  ch = _getch();
  if (i == 0)
  {
   //记录时间 单位是秒
   start_time = time(NULL);
  }
  if (ch == arr[i])
  {
   count++;
   printf("%c", ch);
  }
  else
  {
   printf("_");
  }
 }
 end_time = time(NULL);
 printf("\n用时:%d (秒)\n", end_time - start_time);
 printf("正确率:%.f %%\n", count*1.0 / 50 * 100);
 tips();
}
int main(void)
{
 char arr[NUM+1] = {0};
 //1、提示
 //2、随机字符串
 //3、时间 正确率
 while (1)
 {
  tips();
  rand_ch(arr);
  printf("%s\n\n", arr);
  start_game(arr);
 }
 return 0;
}

转载于:https://www.cnblogs.com/redyellowblue/p/10778734.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值