【浑水摸鱼】化学方程式默写练习器

来源:互联网 发布:nginx 图片服务器架构 编辑:程序博客网 时间:2024/04/26 23:04

最近化学方程式一直默写错= =

搞得我和老师都非常不爽,所以用一天的时间编了一个练习器。


A.方程式载入部分

因为后面肯定要不断添加的,所以用文本文档存储方程式。用freopen读入。

void prepare_fangcheng(){freopen("方程式.txt","r",stdin);while(1){char ss[1005];gets(ss);if(strcmp(ss,"0")==0)break;cnt++;strcpy(s[cnt].fc,ss);}//↑↓freopen("方程式名称.txt","r",stdin);while(1){char ss[1005];gets(ss);if(strcmp(ss,"0")==0)break;cntt++;strcpy(s[cntt].name,ss);}freopen("con","r",stdin);if(cnt!=cntt){cout<<"方程式载入错误!"<<endl;system("pause");exit(0);}else {cout<<"方程式载入成功!共 "<<cnt<<" 个方程式"<<endl;system("pause");}return;}

刚开始时没有将方程式的名字和内容放在一起,好蠢啊(笑)

最后要检查一下名字和内容是否个数相同,免得最后崩溃什么的。

freopen("con","r",stdin)可以将输入还回控制台。


B.显示部分

显示部分就随便摸鱼了,直接输出,也没有居中。加了一个SlowDisPlay

void SlowDisplay(char *p)     {         while(1)         {             if(*p!=0)                 cout<<(*p++);             else                 break;             Sleep(50);         }     }

50毫秒输出一个字符,进函数时可以直接打内容,屡试不爽。


C.运行部分

运行其实很简单,不断随机数,然后匹配。这里就不赘述了。

对了气体标号可以用Alt+41468(按住alt输入5个数字)和alt+41469打出来


D.统计和保存错题

用变量存储总答题数,正确数。求正确率(完全没有答题时不输出,否则正确率会出现除以0操作)

错题用结构体存储,先输出到没用的文件中,在将没用文件和错题本合并,使得错题本不会被覆盖。

printf("总共做题%d道,其中正确%d道,错误%d道",tot,tt,ff); if(tot!=0)printf(",正确率%.6lf\n",(double)tt/(double)tot);cout<<endl<<"错题已经保存至错题本"<<endl;freopen("soy.txt","w",stdout);for(int i=1;i<=ff;i++){printf("%s\n",wrong[i].name);printf("正确答案:%s\n",wrong[i].fc);printf("错误答案:%s\n",wrong[i].fc1);printf("\n");}freopen("con","w",stdout);system("copy /y /b /d 错题本.txt+soy.txt 错题本.txt");system("pause");

摸鱼大法好!

0 0
原创粉丝点击