ImageVerifierCode 换一换
格式:DOCX , 页数:44 ,大小:2.19MB ,
资源ID:19835226      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/19835226.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(c++猜单词课程设计猜单词游戏Word下载.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

c++猜单词课程设计猜单词游戏Word下载.docx

1、int Judge();/判断是否猜中,猜中返回0,猜不中返回1或-(death)int ShowDisplay();/显示单词及上吊人形,程序结束返回1int OpenWordFile();/打开单词库,随机取出一个单词赋给Word,成功返回1int SaveWordFile();/向单词库输入新单词,正确返回1(2)程序主体结构的设置该设置基本上全部修改了原程序的结构,在main函数中分别定义人人对抗和人机对抗的对象。在键入对应的菜单选项后,进入操作函数,操作函数的参数即是对应对象的引用。同样,若有下级菜单的函数一样用该对象的引用参数,这样,可保证对象的唯一性。主菜单:1.人人对抗(以人人

2、对抗对象的引用作为参数调用子程序)2.人机对抗(以人机对抗对象的引用作为参数调用子程序)人人对抗菜单1.开始猜单词2.设置系统(即设置显示字符的概率和允许猜错的次数)3.退出人机对抗1开始猜单词2设置系统(即设置显示字符的概率和允许猜错的次数)3向单词库中添加单词4退出(3)人人对抗时输入欲猜单词的隐藏一个玩家给出单词时,单词不显示在屏幕上,字符用“*”号显示。本程序在基础上还要有些限制条件,就是接收的字符必须是字母,当字幕为大写时还要转化为小写。如果输入的不是字母要提示重新输入。(4)C+用于处理字符串变量的新的数据类型字符串类型(string类型)在原程序字符串的操作中用了一种新的数据类型

3、String,该类型是一个字符串类,可以定义对象。它在使用方法上和char,int类型一样,可以用来定义字符串变量,即用一个名字代表一个字符序列。程序设计的特点(1)增设了单词库,并且输入50个单词,以便使用。(2)人人对抗和人机对抗时显示是否有重复字母2课程设计的详细设计:程序主体结构图如下:程序详细结构:1.主菜单程序:void CGuess:GetChoice() coutendlendl; cout 猜单词游戏 endl endl; 制 刘健莹 cout Choice; / 得到用户选择 while (!cin|Choice 3) / 简查是否无效 无效输入 endl / 完成简查,

4、得到有效输入,m_Choice变量的值被修改,清屏 system(cls);2.子菜单程序:int CGuess:InitialSet() int exit=0; if(Choice=1) cout 人人对抗按1开始玩游戏按2修改设置值按3退出* 你的选择:Choice2; else 人机对抗按3向单词库输入单词按4退出 while(!cin|Choice2 4) if(Choice2=1) coutGuessNum if(Choice2=2) 你要几次猜词机会(4 - 10): GuessNum; /输入猜词次数 cin|GuessNum 10) endl 请再输入- 你要几次猜词机会(4

5、- 10): cin Proba 你要百分之几的字母显示出来(10 - 80):Proba; /输入显示字母百分数 cin|Proba 80) 请再输入- 你要百分之几的字母显示出来(10 - 80): if(Choice2=3) if(Choice=1) exit=1; else SaveWordFile(); InitialSet(); if(Choice2=4) exit=1; return exit;3.修改默认设置程序:4.默认的游戏设置程序:Proba=20; /显示单词字母个数百分比 GuessNum=4; /玩家猜词的机会5.将单词输入进单词库中的函数:void GuessGa

6、me:saveWordFile() int n=50,i,j; ofstream out; out.open(words.txt if(!out) 不能打开单词库单词库中有50个单词向单词库中输入多少个单词j;请向单词库中输入j个单词for ( i = 0; i j; i+) string word; / 输入单词getline(cin,word); n=n+1; out word;单词库中有n out.close();6.显示猜对的单词:test(string word, char letter, int& numwrong, string& temp) static int m; int

7、check2 = 0; / 判断输入的字符是否为组成单词的字符,正确为1 if (letter = word.at(m) /若单词中有这一个字符 temp.replace(m, 1, 1, letter); check2 = 1; if (check2 = 0) /若单词中没有这一个字符Wrong letter system(pause numwrong+; if(m(word.length()-1)m+; else m=0;7.输出给定几率的字母:for (i = word.length() * Proba; word.length(); temp.replace(i, 1, 1,*8.游戏

8、程序主体运行:Run() int exit = 0; /主循环是否退出的变量,1时退出 do /主循环 / 执行系统命令清屏 GetChoice(); / 给出说明并得到选择 switch(Choice) case 1: Game(); / 与人对战 break; case 2: / 与电脑对战 case 3: cout 再见 endl=97&stri=65&=90) stri=stri+32; else if(stri=90&=97)|stri=112)* i+; a=j;for(i=0;ia;i+) word.replace(i, 1, 1, stri); Word=word;word=w

9、orD; int wordcheck; do / 检查用户输入单词是否有误 wordcheck = 0; for (int i = 0;Word.length(); i+) if (!isalpha(Word.at(i) /isalpha();word.at(); wordcheck = 1; if (wordcheck = 1) 无效 - 请第二位玩家重新输入: password();Word=word; while (wordcheck = 1); w=ch;UserWord() 人人对战 - 猜词机会: 显示字母:% password(); Length=Word.length(); r

10、eturn 1;10.主体的类的定义class CGuess private: string Word,word,worD; /要猜的单词 string DisplayWord; /用户所见的单词 char *pWord1; char *pWord2; int Proba; int GuessNum; int WrongNum; /玩家猜错的次数 int ChosenCounter;/玩家猜过的字母个数 string LetterChosen; /玩家已经猜过的字母 int Choice; /玩家的选择 int ShowNum; /显示字母个数 int Length; /所猜单词的长度 int

11、 LetterNum; /单词中的字母个数 int i; /循环的记数变量,使每次游戏都不一样 int Check; /用户输入字母是否正确 int Choice2; int w; public: CGuess(); int InitialSet(); int SaveWordFile(); int UserWord(); /玩家出词 int RndWord(); /电脑出词 void ReplaceWord(); void isChosen(char); void Judge(char); int Run(); /运行 void GetChoice(); /得到选择 void Game();

12、 /游戏主要函数 void Set(); /设置 void password();3调试程序的过程:1主函数若出现在前面,应将其他函数先定义,或将主函数后置。2在程序开头须将所用函数的文件包含,否则函数不得使用。3人人对抗时,输入单词未显示*,应先设置显示部分,然后输入单词。4当使用getch()时,应先加头文件conic.h,否则无法使用。5人机对抗程序会出现不出现单词,直接显示猜词正确,随机函数rand()应除50求余。6保密部分无法识别大小写,用ASCII码将大写字母转化为小写字母。7人人对抗过程中输入单词,输出*,但是无论退格还是回车都输出*,在保密函数中没有设置输入回车或空格就跳出函

13、数的部分。8运用保密函数时出现输出无效输入。9人人对抗中输入单词后显示*,但是单词没有返回原程序,造成没有猜单词的过程,只有最后结果“恭喜你,猜对了!”10人机对抗无法找到words.txt文件,需要先将words文档转化为文件格式,才能应用。4输入输出数据:以人人对抗模式输入love为例:1.运行程序,出现主菜单,输入12,.出现人人对抗模式菜单栏,输入23.修改默认设置4.第二个玩家输入单词love5.出现猜单词程序6.输出上吊人形7.出现正确答案附:猜单词过程:正确输入错误输入向单词库中输入单词:5课程设计总结:通过这次课程设计,我懂得了如何将所学的知识运用起来,与实际相结合,也让我能够

14、在以后的学习中能够想有所学,学有所用,多多联系实际,用知识帮助他人。课程设计中,我掌握了类的定义和调用,数组的运用,菜单栏的设置等等,同时,程序设计过程中,懂得了如何将不会的知识学会,如何将会的知识灵活熟练地应用,也懂得了以后的学习也要勤动脑思考,把知识转化为自己的,提高了自己的创新能力,动手能力,思考能力,为我今后的学习打下良好的基础。6. 程序源代码附录#include / 标准输入输出cin;coutstring / 字符串处理string.length();at();cctype / 字符处理和检测fstream / 文件流cstdlib / 使用随机函数用time.h / 得到更好的随机数用conio.h/ draw类定义#ifndef DRAW_H / 检测是否已经包含#define DRAW_Hclass draw draw(); / 构造函数 / 成员函数 void rope(); / 绳子 void head(); / 头 void neck(); / 颈 void leftarm(); / 左臂 void rightarm(); / 右臂 void waisttop(); / 腰 void leftleg(); / 左腿 void rightleg()

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1