C语言打字游戏源码

简介: C语言打字游戏源码
#include <stdio.h>
#include <time.h>
#include <stdlib.h>
#include <string.h>
#define MAX 51 //第一测试字母的最大长度
void help()
{
       printf("\n************************");
       printf("\n* 请快速输入上面的字母 *");
       printf("\n************************");
}
void start(char *str)
{
       srand((unsigned int)time(NULL));//产生一个随机种子
       int i=0;
       for (i=0;i<MAX-1;i++)//产生50个字母进行测试
       {
              *(str + i) = rand() % 26 + 'a';  //随机获取一个0-25的数字并于‘a’相加,从而获取一个任意字符
       }
       *(str + MAX - 1) = '\0';//给字符串最后加上结束符
}
void on_game(char *str)
{
       char ch;
       int i = 0;
       int count = 0;
       time_t t_start, t_end; //开始时间和结束时间
       printf("\n%s\n", str);
       count = 0;
       for (i=0;i<MAX-1;i++)
       {
              ch = getch();
              if (i==0)
              {
                     t_start = time(NULL);
              }
              if (ch==*(str+i))
              {
                     printf("%c",ch);//输入正确,打印出字符
                     count++;
              }
              else
              {
                     printf("*");//输入错误,打印*
              }
       }
       t_end = time(NULL);//取结束时间
       printf("\n用时%d 秒\n",t_end-t_start);
       printf("正确率%lf %%\n", (count * 1.0 / (MAX - 1)) * 100);
       printf("按下q键退出");
}
int main() {
       char str[MAX] = { 0 };
       while (1)
       {
              help();//弹出开始内容
              start(str);//生成随机字母
              on_game(str);//开始游戏
              char ch = getch();
              if (ch == 'q') //按下esc键退出
              {
                     break;
              }
              system("cls");
       }
       system("pause");
       return 0;
}

1、getch(), 用户按下某个字符时,函数自动读取,无需按回车


2、gechar(),用户按下某个字符时,函数自动读取,需要按回车


3、%%,两个%在格式化字符串中输出一个


4、rand(),获取一个随机数,最大值为32767


5、 count * 1.0,将count变成小数


6、system("cls"),清屏操作


运行结果:

0a2653c851af460fa595bd959398a8f1.png

目录
相关文章
|
5天前
|
存储 SQL 网络协议
C语言C/S架构PACS影像归档和通信系统源码 医院PACS系统源码
医院影像科PACS系统,意为影像归档和通信系统。它是应用在医院影像科室的系统,主要的任务是把日常产生的各种医学影像(包括核磁、CT、超声、各种X光机、各种红外仪、显微仪等设备产生的图像)通过各种接口(模拟、DICOM、网络)以数字化的方式海量保存起来,并在需要的时候在一定授权下能够快速地调回使用。同时,PACS系统还增加了一些辅助诊断管理功能。
41 11
|
5天前
|
算法 C语言 C++
【C语言实战项目】三子棋游戏
【C语言实战项目】三子棋游戏
33 1
|
5天前
|
程序员 C语言
【C语言实战项目】猜数字游戏
【C语言实战项目】猜数字游戏
33 0
【C语言实战项目】猜数字游戏
|
18小时前
|
C语言
C语言初阶⑤(数组)扫雷游戏(分步实现+效果图)
C语言初阶⑤(数组)扫雷游戏(分步实现+效果图)
7 1
|
5天前
|
C语言
C语言实战演练之游戏框架
C语言实战演练之游戏框架
|
5天前
|
存储 算法 C语言
【C 言专栏】用 C 语言开发游戏的实践
【5月更文挑战第5天】本文探讨了使用C语言开发游戏的实践,包括选择适合的游戏类型(如贪吃蛇、俄罗斯方块),设计游戏框架、图形界面和逻辑,以及音效添加。文章还强调了性能优化、测试调试、跨平台挑战及未来发展趋势。对于热衷于C语言的开发者,这是一次挑战与乐趣并存的探索之旅。
【C 言专栏】用 C 语言开发游戏的实践
|
5天前
|
C语言
以c语言为基础实现的简易扫雷游戏(游戏代码附在文章最后,如有需要请自取)
以c语言为基础实现的简易扫雷游戏(游戏代码附在文章最后,如有需要请自取)
53 1
|
5天前
|
存储 人工智能 搜索推荐
【C语言/C++】电子元器件管理系统(C源码)【独一无二】
【C语言/C++】电子元器件管理系统(C源码)【独一无二】
|
5天前
|
存储 人工智能 机器人
【C/C++】C语言 学生信息管理系统(源码)【独一无二】
【C/C++】C语言 学生信息管理系统(源码)【独一无二】
|
5天前
|
人工智能 机器人 测试技术
【C/C++】C语言 21点桌牌游戏 (源码) 【独一无二】
【C/C++】C语言 21点桌牌游戏 (源码) 【独一无二】

相关实验场景

更多