简单的记忆力测试系统

帮同学做的简单的记忆力测试系统,应用了time头文件和rand()函数进行随机字母生成,利用Sleep()函数和和“\r"进行数据消失。

 

 

代码如下:

 1 #include <iostream>
 2 #include<stdio.h>
 3 #include<stdlib.h>
 4 #include<string.h>
 5 #include<windows.h>
 6 #include<time.h>
 7 #define  byte  unsigned char
 8 using namespace std;
 9 char a[8];//测试字母
10 char b[10];//输入答案
11 int  k;//当前测试等级
12 void  putin()//生成测试数据
13 {
14     for(int i=0;i<k;++i)
15         a[i]='A'+rand()%26;
16 }
17 void ss()//读秒
18 {
19     for(int i=3;i>0;i--)
20     {
21 
22         cout<<"\r"<<i;
23         Sleep(1000);
24         cout<<"\r"<<" ";
25     }
26 
27 }
28 void miss()//测试数据消失
29 {
30     Sleep(3000);
31     cout<<"\r";
32     for(int i=0;i<k;++i)
33         cout<<" ";
34     cout<<"\n";
35 }
36 int main()
37 {
38     while(1)
39     {
40         printf("|---------------------------------------|\n");
41         printf("|                                       |\n");
42         printf("|       欢迎进入记忆力测试系统!         |\n");
43         printf("|                                       |\n");
44         printf("|---------------------------------------|\n");
45         printf("请输入“1”开始测试(测试数据将在3秒后出现,并在3秒后消失,按回车键结束输入,输入“0”退出系统):");
46         char  ch;
47         cin>>ch;
48         if(ch=='0')
49             break;
50         if(ch!='1')
51         {
52             printf("输入有误!\n");
53             continue;
54         }
55         memset(a,'\0', sizeof(a));
56         srand(time(0));
57         int i;//目前测试者的等级
58         for(i=0;i<8;++i)
59         {
60             k=i+1;
61             putin();
62             printf("测试等级:%d(测试数据将在3秒后出现,并在3秒后消失)\n",k);
63             ss();
64             cout<<"\r";
65             cout<<a;
66             miss();
67             printf("请输入你的结果(按回车键结束输入,输入“1”重新开始测试,输入“0”退出系统):");
68             cin>>b;
69             if(strcmp(b,"1")==0||strcmp(b,"0")==0||strcmp(b,a)!=0)
70                 break;
71         }
72         if(strcmp(b,"1")==0)
73             continue;
74         if(strcmp(b,"0")==0)
75             break;
76         if(i!=8)
77             printf("答案错误,正确答案为:%s\n",a);
78         else
79             printf("完全正确!");
80         printf("你的记忆力等级为:%d,",i);
81         if(i<=4)
82             printf("你的记忆力需要更多的提高");
83         else if(i<6)
84             printf("你的记忆力需要提高");
85         else
86             printf("你的记忆力非常棒");
87         printf("(输入“1”重新开始测试,输入“0”退出系统)\n");
88         cin>>ch;
89         if(ch=='0')
90             break;
91         else
92         {
93             if(ch!='1')
94                 printf("输入有误!\n");
95             continue;
96         }
97     }
98 return 0;
99 }
View Code

 

posted @ 2016-09-12 11:53  BK-X  阅读(254)  评论(0编辑  收藏  举报