已阅读5页,还剩4页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
一个练习打字的游戏小编程文章类别:C语言程序设计 | 发表日期:2008-9-24 14:46:50收藏到QQ书签 -大家自己设三个或一个文本文件,内含1000个字符就行了,英文字母或其他字符都可以。谢谢指教!主函数在下面!介绍一下自定义函数的功能吧。自定义函数名称 函数功能 Background() 设置简单友好界面。 DEMO() 设置菜单供用户选择练习方式及退出。 Get_charater() 实现从用户指定文件随机抽取100个字符并显示在屏幕上供用户参照打字的功能 Typing() 程序的核心,实现了接受输入的字符、判定正误、计算练习成绩和时间等并显示在屏幕 特点:而主函数则非常简单,只包含这四个要调用的函数。 这四个函数功能单一,且每个函数不超过50行,较好地满足设计风格。#include #include #include #include #include char string101; void Background() int driver=DETECT,mode; /*定义变量*/ int x1=20,y1=20,r=10,num; int x2=20,y2=450; int color1=10,color2=10; /*在此设置颜色,一改全改*/ initgraph(&driver,&mode,a:bgi ); /*初始化图形模式*/ setcolor(color1); /*步骤一、设置当前颜色用于绘图*/ for(num=0;num30;num+) circle(x1,y1,r); /*步骤二、使用当前颜色绘制一个闭合图形*/ setfillstyle(num%12,color1); /*步骤三、设置填充方式*/ floodfill(x1,y1,color1); /*步骤四、对闭合图形进行填充*/ x1+=20; delay(100); setcolor(color2); for(num=0;num30;num+) circle(x2,y2,r); setfillstyle(num%12,color2); floodfill(x2,y2,color2); x2+=20; delay(100); setcolor(YELLOW); /*改变当前颜色,输出友好话*/ settextstyle(0,0,2); outtextxy(50,150,WELCOME TO THE TYPING WORLD!); setcolor(LIGHTMAGENTA); outtextxy(200,350,DESIGED BY HE ZHANG HONG); sleep(3); /*延时二秒观看结果*/ closegraph(); /*关闭图形*/ void DEMO() /*设置菜单函数*/ printf(_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_*n” ttt THE DEMO DISPLAY FOR THE FILE SYSTEMn n tt 1:PRATICE ONLY ENGLISH Characters.n tt 2:PRATICE OTHER Charcters.n tt 3:PRATICE ALL Charcters.n tt 4:QUIT AT ONCE!n n); void Get_character(void) /*设置得到字符函数*/ void Typing(); /*声明typing()函数*/ FILE *in; int i,t,choice; char ch; t=abs(time(0)%700; /*获取随机数来指定下面指针的位*/ printf(nPLEASE ENTER YOUR CHOICE:); choice=getch(); clrscr(); /*清屏*/ switch(choice) /*选择不同打开文件来打不同的字符*/ case 1: in=fopen(english.txt,r); break; case 2: in=fopen(others.txt,r); break; case 3: in=fopen(type all.txt,r); break; case 4: exit(1);break; fseek(in,t*1l,0); fgets(string,101,in); printf(n); printf(*); for(i=0;i100;i+) putchar(stringi); printf(n); printf(*); fclose(in); printf(LETS BEGIN TYPING,OK?Y/N); printf(n); ch=getch(); if(ch=n|ch=N) /*判定是否练习打字*/ exit(0); else if(ch=y|ch=Y) Typing(); void Typing(void) /*设置打字(包括计算其他结果)函数*/ int i,j,Right_char=0,Wrong_char=0,Sum_char=0; float Speed,Timeused,Right_rate; char absorb_char,ch_1,ch_2,ch_3; time_t star,stop; /*定义time变量,获取系统时间并显示在屏幕上*/ time(&star); printf(n); printf(time begin:%s,ctime(&star); i=0; absorb_char=getchar(); /*接受键盘输入的字符并在下面的while语句判定正 错和计算结果*/ while(absorb_char!=n&i100) if(absorb_char=stringi) Right_char+; Sum_char+; else Wrong_char+; Sum_char+; i+; absorb_char=getchar(); time(&stop); Timeused=difftime(stop,star); /*利用difftime()函数输出所用时间*/ Right_rate=(float)Right_char/(float)Sum_char*100; Speed=(Sum_char/Timeused)*60; printf(time end:%s,ctime(&stop); /*下面显示分数*/ printf(*#YOUR SCORE!#*); printf( 1: TOTAL TIME USED:%.3fn,Timeused); printf( 2: YOU HAVE TYPED:%dn,Sum_char); printf( 3: Typing Right_Characters are:%dn,Right_char); printf( 4: Typing Wrong_Characters are:%dn,Wrong_char); printf( 5: YOUR TYPING SPEED IS :%.2fminn,Speed); printf( 6: YOUR TYPING RIGHT_RATE IS :%.2f%n,Right_rate); printf(*#YOUR SCORE!#*); if(Speed=50|Right_rate=80) /*询问用户是否重来一遍*/ printf( NOT VERY GOOD!n TRY IT AGAIN,OK?Y/Nn); ch_2=getch(); if(ch_2=n|ch_2=N) exit(0); else if(ch_2=y|ch_2=Y) clrscr(); DEMO(); /*分别调用函数重来一遍*/ Get_character(); Typing(); exit(0); else printf( WELL DONE!n ONE MORE TIME?Y/Nn); /*询问用户是否重来一遍*/ ch_3=getch(); if(ch_3=n|ch_3=N) exit(0); else if(ch_3=y|ch_3=Y) clrscr(); DEMO(); /*分别调用函数重来一遍*/ Get_character(); Typing(); ex
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年驱绦药项目发展计划
- 2025年及未来5年中国商用生态清洁剂市场发展前景预测及投资战略咨询报告
- 法人授权合同签订操作规范
- 二年级语文上册寓言两则坐井观天亡羊补牢西师大版教案(2025-2026学年)
- 经典民法案例解析及法律适用指导
- 学生课外科技创新活动方案全集
- 小班科学有趣的纸船教案反思(2025-2026学年)
- 开学安全工作自查报告范例
- 未来五年饲料(草)加工机械设备市场需求变化趋势与商业创新机遇分析研究报告
- 未来五年悬浮机行业市场营销创新战略制定与实施分析研究报告
- MOOC 思想道德与法治-南京师范大学 中国大学慕课答案
- 枕大神经痛的护理查房
- 临床医学导论习题与答案4
- 2023年《著作权法》考试题库及答案2
- 网络传播概论(彭兰第5版) 课件全套 第1-8章 网络媒介的演变-网络传播中的“数字鸿沟”
- 被执行人生活费申请书范文
- 220kV变电站消防工程 投标方案(技术方案)
- 《数字经济学》 课件全套 贾利军 专题1:数字经济的历史溯源、科学内涵与技术基础研究-专题10:数字经济的战略与实践研究
- 钻探项目部管理制度
- 《言语治疗技术》期末考试复习题库(含新题)
- GB/T 19494.1-2023煤炭机械化采样第1部分:采样方法
评论
0/150
提交评论