程序设计猜单词汇总

上传人:s9****2 文档编号:467176733 上传时间:2023-02-27 格式:DOCX 页数:27 大小:97.38KB
返回 下载 相关 举报
程序设计猜单词汇总_第1页
第1页 / 共27页
程序设计猜单词汇总_第2页
第2页 / 共27页
程序设计猜单词汇总_第3页
第3页 / 共27页
程序设计猜单词汇总_第4页
第4页 / 共27页
程序设计猜单词汇总_第5页
第5页 / 共27页
点击查看更多>>
资源描述

《程序设计猜单词汇总》由会员分享,可在线阅读,更多相关《程序设计猜单词汇总(27页珍藏版)》请在金锄头文库上搜索。

1、程序设计报告(2014/15学年第一学期)题目:猜字游戏专业组长学号姓名组员学号姓名教师单位组长()调试程序程序代码(选择等级的功能、记录排名的功能)灵a茸当见旃力、呈美T内扁技专注1戈肯灵a评分斑511平分页秀中享差守学习想复匕1遮抗可:艮专简短评语月名年日评分等级备注级良及格评等五中及分共爪不猜单词课题内容和要求这是一个简单的智力游戏,游戏者每次只能猜一个字母,如果游戏者猜的字母在单词中,单词中所有的该字母将被视为已猜出,例如:如果原单词是apple,游戏者猜出了p,则程序应显示当前猜出的残缺单词为-PP-;设置选择时间限制或猜错次数限制,超过限制则游戏失败。1-5个字母为初级;5.9个字

2、母为中级;10个字母以上为高级,猜错次数限制自定。1 .设计游戏者信息格式,记录用户名、成绩,并保存,下次开始时可选择用户继续游戏,用户信息存放2 .在user.txt中。建立积分排行榜,保留不同级别前五名的成绩。3 .根据单词长度设置不同级别的游戏。4 .游戏过程中,猜错的字母将被记录下来,每次猜测后,游戏应显示出当前猜出的残缺单词,以及当前猜错的所有字母,和剩下的机会。5 .提供相应安全机制,保证程序的健壮性,如选择单词长度时,应避免非数字字符的输入造成程序出错等。6 .提供选择一次求助机会。如显示单词一秒钟,或给出指定位置上的一个字母二、需求分析功能框架图如图1所示。王采单d帮助s设置图

3、1功能框架图(1)新游戏:提供进入游戏的功能。(3)排行:提供建立成绩积分表,保留不同级别前五名成绩的功能(3)设置:提供选择猜测次数和难度等级的功能。(4)帮助:提供游戏说明的功能。(5)退出:提供退出游戏的功能。三、概要设计1主要结构体typedefstructPlayer(intranker;charname20;/玩家姓名intright;/猜对的字母intwrong;/猜错的字幕inttime;/猜单词的时间Player;2主要函数流程图用VoidPlayGame(作为主体来进行游戏。如图2开始判断是否超过猜测次数否/是输入猜测字母guess是判断是否猜过否判断字母是否正确存在给gu

4、essword赋值给wrongword赋值结束图2函数结构图四、源程序代码#include#include#include#include#includeintrank=7,tot=05guesstime=10;doublestart_time,end_time;typedefstructPlayer(intranker;charname20;intright;intwrong;inttime;JPlayer;Playerp5=1/,unknown,0,0,0,2;,unknownJ0,0,0J3,Munknown,0J0J0J4;,unknownM,0,0,0,5,unknown,J0,0.

5、0);Playertemp;intright=05wrong=0;inttimes;charwordlist100020;voidget_word();voidchooose_len();voidchoose_guesstime();voidinput_name();voidCompare();voidRecord();voidPlayGame();voidMenu();intmain(intargc,char*argv)(get_word();while(1)/使得猜完单词或查看完排行榜后返回主菜单(Menu();return0;voidget_word()FILE*fp;if(fp=fop

6、en(,d:/word.txt,r+,)=NULL)读文件(printf(单词库无法打开!n“);exit(O);elsewhile(fscanf(fp/%sf,wordlisttot+)!=EOF);voidchooose_len()ag:printf(请选择最大单词长度:(范围5-15);scanf(%d,&rank);if(rank1)gotoag;voidchoose_guesstime()(printf(请输入你想猜的次数:”);scanf(H%d,&guesstime);voidinput_name()(printf(请先输入您的大名:”);scanf(”s”,temp.name)

7、;voidStartGame()(while(1)(inti;charplay;printf(n请输入你要猜的字母,每次一个,祝你好运哦!n);PlayGame(wordlist);temp.time=times;temp.right=right;temp.wrong=wrong;Compare();Record();printf(是否再玩一次?(Y/N)n);scanf(%c,&play);if(play!=n)continue;elsebreak;printf(Mn);)voidCompare()(inti;for(i=0;ipi.right)(strcpy(pi.name,temp.na

8、me);pi.right=temp.right;pi.wrong=temp.wrong;pi.time=temp.time;break;voidRecord()(inti;FILE*fp;fp=fopen(d:/record.txt,w+n);printf(游戏记录无法打开!”);ex计;fprintfp/M11名次t姓名tt成绩:猜对or猜错)t时间(s)n);for(i=0;i5;i+)fprintf(fp,%dt%sttRight:%dWrong:%dt%dn,i+1,pi.name,pi.right,pi.wrong,pi.time);fclose(fp);voidShow()(int

9、i;FILE*fp;charous200;fp=fopen(d;/record.txt,r+);if(!fp)printf(游戏记录无法打开!n);ex让;while(fgets(ous,256,fp)puts(ous);fclose(fp);void PlayGame()charguess;存用户打入的字母charplay;charguessword20,WrongGuess20;intc=1,l,j,f,k=O;intq;intx=O,t=O;intflag=0;while(1)iguess=play=l=j=f=k=q=x=t=flag=O;for(c=0;c20;+c)rank)got

10、oag2;求单词长for(f=0;fl;f+)guesswordf=-;/定义词一空单词,词长与所选一样guesswordl=,0,;字符串结尾printf(,%sH,guessword);/打印与词长相同的for(k=1;k=guesstime&c!=0;)/判断是否猜完flag=O;printf(“你有d次机会!nn,guesstime-k+1);scanf(%c,&guess);for(j=0;jl;j+)/循环判断单词中是否有所输入字母if(guesswordj=,-)/判断是否猜过这个字母(if(wordlistqj=guess|wordlistqj-guess=-32)如果单词中有

11、这个字母guesswordj=wordlistqj;/在空单词中打入这个字母X+;flag=1;如果猜过这个字母则提elseif(guesswordj=guess|guesswordj-guess=32)示(仅提示猜过的正确的字母)(printf(你已经输入过这个字母了An);break;)if(flag=0)/如果单词中没有这个字母(WrongGuesst=guess;t+;k+;)printf(H%sn,guessword);c=strcmp(guessword,wordlistq);if(c=O)printf(你真聪明!你猜出了这个单词!n正确单词就是:s”,wordlistq);rig

12、ht+;)elseprintf(你已经超过了规定的次数,你失败了!n正确单词是:swordlistq);wrong+;printf(你猜对了%d个字母。n”,x);printf(你猜错了1个字母。n,k-1);WrongGuesst=0;printf(错误单词是%sn,WrongGuess);end_time=(double)clock()/CLOCKS_PER_SEC;printf(HTimeused=%.2lfsn,end_time-start_time);printf(n是否再玩一次?(y/n)nH);scanf(%c,&play);if(play!=,n,)continue;elseexit(O);voidMenu()intchoice;system(title猜字母游戏Asmallgametoguessacertainword);system(colorf2);printf(,nH);printfC1n);printf(nprintf(nn);*

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 商业/管理/HR > 市场营销

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号