猜单词1.88.3.3补丁
补丁内容:
1.消除从size_t转化为int的丢失数据的可能;
2.将loc变量static_cast转化,加强find函数的可靠性;
3.加强连接,防止闪退;
4.格式更美观。
注:部分编译器无法编译static_cast<basic_string<char, char_traits<char>, allocator<char>>::size_type>或size_t,可以使用1.88.3.2旧版本的猜单词游戏。
#include <iostream>
#include <string>
#include <cstdlib>
#include <ctime>
using namespace std;
const int NUM = 89;
const string wordlist[NUM] = { "racket","badminton","panda","deep","early","prepare","gift","chocolate","fashion","designer","keyboard","feel","medal","modern","middle","quilt","dictionary","difficult","future","mainly","autumn","butterfly","greedy","useful","dancer","businessman","view","best","interesting","view","space","travel","bridge","telephone","tree","sing","player","change","juice","soccer","tennis","morning","afternoon","night","evening","season","spring","summer","winter","fall","leave","monday","tuesday","thursday","friday","wednesday","saturday","sunday","january","february","march","april","may","june","july","augest","september","october","november","december","favourite","factory","sale","male","trousers","skirt","million","desert","noon","were","often","never","seldom","son","daughter","danger","just","hurt","" };
int main()
{cout << "----------------Hand Man----------------\n";srand(time(NULL));char play;cout << "Will you play a word game?<y/n>";cin >> play;play = tolower(play);while (play == 'y'){string target = wordlist[rand() % NUM];if (target == ""){cout << "Well,you are so luck,you win!" << endl;cout << "Will you play again?<y/n>";cin >> play;play = tolower(play);continue;}size_t length = target.length();string attempt(length, '-');string badchars;int guesses = 6;cout << "Guess my secret word.It has " << length << " letters ,and you guess\none letter at a time .You get " << guesses << " wrong guesses.\n";cout << "Your word: " << attempt << endl;while (guesses && attempt != target){char letter;cout << "Guess a letter: ";cin >> letter;if (badchars.find(letter) != string::npos || attempt.find(letter) != string::npos){cout << "You already guessed that.Try again.\n";continue;}size_t loc = target.find(letter);if (loc == string::npos){cout << "Oh,bad guess!\n";guesses--;badchars += letter;}else{cout << "Good guess!\n";attempt[loc] = letter;loc = target.find(letter, static_cast<basic_string<char, char_traits<char>, allocator<char>>::size_type>(loc) + 1);while (loc != string::npos){attempt[loc] = letter;loc = target.find(letter, static_cast<basic_string<char, char_traits<char>, allocator<char>>::size_type>(loc) + 1);}}cout << "Your word: " << attempt << endl;if (attempt != target){if (badchars.length())cout << "Bad choice: " << badchars << endl;cout << guesses << " bad guess left\n";}}if (guesses)cout << "That's right!\n";elsecout << "Sorry,the word is " << target << ".\n";cout << "Will you play another?<y/n>";cin >> play;play = tolower(play);}cout << "Thanks for your playing.Bye!\n";return 0;
}
下期补丁,粉丝内测,专栏收录,欢迎订阅!
猜单词1.88.3.3补丁相关推荐
- python超简单小游戏代码-Python实现简单的猜单词小游戏
本文实例为大家分享了Python实现猜单词小游戏的具体代码,供大家参考,具体内容如下 思路 1.一个words列表里存放若干的单词,例如:["extends", "pri ...
- python猜单词游戏_python 游戏(猜单词Hangman)
1.游戏思路和流程图 实现功能:随机一个单词让玩家猜测(后续难度实现修改为成语填空,成语必须要有提示,可修改猜的次数,增加连续猜成语,难度系数随着次数的增加而增加) 游戏流程图 2. 单词库和模块 i ...
- java猜单词游戏_序列应用——猜单词游戏
开发工具:Visual Studio Code 1.游戏介绍 猜单词游戏就是计筧机随机产生一个单词,打乱字母顺序,供玩家去猜测.此游戏采用控制字符界面. 2.程序设计思路 游戏中,可使用序列中的元组存 ...
- 单词九连猜python编程_python实现猜单词游戏
本文实例为大家分享了python实现猜单词游戏的具体代码,供大家参考,具体内容如下 0.效果 1.代码 # 猜单词游戏 import random #添加 WORDS = ("python& ...
- 编程猜单词游戏python_Python实现简单的猜单词小游戏
本文实例为大家分享了Python实现猜单词小游戏的具体代码,供大家参考,具体内容如下 思路 1.一个words列表里存放若干的单词,例如:["extends", "pri ...
- 用C语言实现猜单词的小游戏
题目 程序设计思想:该程序将从单词库文件中随机地选择一个单词,显示该单词的中文名,用户输入对应的英文单词.系统显示猜中的字母,用户可以最多有8次猜测的机会.如果用户在规定次数中内猜中了该单词,则该次游 ...
- c语言猜单词游戏实验报告,猜单词游戏c语言源程序.doc
猜单词游戏c语言源程序 包括程序及txt文档,希望可以对您有所帮助 #include #include #include #include #include #include #include voi ...
- Python实现猜单词游戏
推荐自己的专栏:分享一些Python案例,将所学用出来 欢迎参加猜单词游戏! 请把乱序后的字母组成一个单词乱序后的单词: odticnraiy请输入您猜测的结果:dictionary恭喜您,猜对了!是 ...
- python猜单词游戏_python实现猜单词游戏
本文实例为大家分享了python实现猜单词游戏的具体代码,供大家参考,具体内容如下 0.效果 1.代码 # 猜单词游戏 import random #添加 WORDS = ("python& ...
最新文章
- 【C++】【OpenCv】图片加噪声处理,计时,及键盘事件响应捕捉
- 以下可以采用python语言保留字的是-以下哪个选项不是Python语言的保留字?_学小易找答案...
- iReport中求和的问题
- 用VC进行COM编程所必须掌握的理论知识
- Asp.Net Core 中如何设置 IP 白名单
- ad如何镜像器件_使用 Dockerfile 制作镜像
- 带你读AI论文:SDMG-R结构化提取—无限版式小票场景应用
- 二分查找算法(C#实现)
- CocoStudio 骨骼动画制作过程
- 从零开始学USB(八、USB的数据流模型)
- Hybrid APP基础篇(一)-什么是Hybrid App
- 测试工程师常见的算法面试题
- Mysql开发实践:error while loading shared libraries: libaio解决方案
- 分享淘宝利器飞天侠4.1至尊商业版 去除域名限制 绕过淘宝API直接采集
- Win10 Delete键失效怎么办 ?
- 南陵中学2021高考成绩查询,南陵中学举行2021届高三距高考200天动员大会
- Tiled瓦片地图的使用
- 【运行报错】Centos 6 无法使用 yum
- 私有专辑 java,这是什么“专辑歌手”标签iTunes使用?任何方式使用java设置?
- PPP中的pap和chap认证
热门文章
- WPF开发经验-WPF的TextBox控件的MouseDown事件不响应的解决方法
- 鸿翼归档:释放企业存储压力 提升数据利用效率
- [转]ClassLoader的几个概念、类和对象的解释
- 运动防水防汗耳机哪个牌子好、防水的运动耳机推荐
- 微前端-qiankun
- Microsoft Office Professional Plus 2010 在安装过程中出现错误的解决方案
- 经验小波变换(EWT)理论基础
- HTML 学习笔记 0
- 【转】Neutral Density (ND) Filters 中性灰色滤镜
- 【汇正财经】C919 商业首飞临近,国产首款大飞机有望进入放量期