Java 7.35 游戏:猜字游戏(C++&Java)
Ps:
有人可能好奇我为什么大费周章的去写主函数,而不直接把所有操作放在类中,Why?类就好比骨干(存放核心的数据和功能),最好提供接口, 避免了类中的输入输出,当然,这也不是绝对的。
C++:
#include<iostream>
#include<string>
#include<ctime>
using namespace std;
class GuessNumber {
public:
void Get();
int Guess(char);
string get_g_word() {
return g_word;
}
string get_word() {
return word;
}
int get_miss() {
return miss;
}
private:
int miss = 0;
string words[7] = { "write","that","important","transform","judge","index","run" };
string word;
string g_word;
};
void GuessNumber::Get() {
srand((unsigned int)time(0)); //随机数
word = words[rand() % 7 ]; //伪随机数?——跟运行时间有关
g_word=string(word.length(), '*');
}
int GuessNumber::Guess(char ch) {
if (word.find(ch) == string::npos) { //字母没有出现在单词中
miss++;
return 2;
}
if (g_word.find(ch) != string::npos) { //已猜过(出现在g_word中)
miss++;
return 1;
}
for (int i = 0; i < word.length(); i++) //猜中,修改g_word
if (word[i] == ch)
g_word[i] = ch;
return 0;
}
int main() {
char ch;
string str;
GuessNumber My;
int key;
while (1) {
My.Get();
while (My.get_g_word() != My.get_word()) {
cout << "(Guess) Enter a letter in word " << My.get_g_word() << " > ";
cin >> ch;
key = My.Guess(ch);
if (key == 2)
cout << " " << ch << " is not in the word" << endl;
else if (key == 1)
cout << " " << ch << " is already in the word" << endl;
}
cout << "The word is " << My.get_word() << ". You missed " << My.get_miss() << " time " << endl;
cout << "Do you want to guess another word? Enter y or n >";
cin >> str;
if (str == "n")
break;
system("cls"); //清屏
}
return 0;
}
Java:
请自己写。
Java 7.35 游戏:猜字游戏(C++&Java)的更多相关文章
- 猜字游戏java
一.实践目的 1.掌握基本输入输出. 2.掌握方法定义与调用,理解参数传递方式. 3.掌握数组的声明.定义与初始化,数组的处理. 4.掌握数组作为方法参数和返回值. 二.实践要求 利用方法.数组.基本 ...
- 044 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 06 使用do-while循环实现猜字游戏
044 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 06 使用do-while循环实现猜字游戏 本文知识点:do-while循环深入运用 案例练习 案例 ...
- Leetcode 299.猜字游戏
猜字游戏 你正在和你的朋友玩 猜数字(Bulls and Cows)游戏:你写下一个数字让你的朋友猜.每次他猜测后,你给他一个提示,告诉他有多少位数字和确切位置都猜对了(称为"Bulls&q ...
- 《Java语言程序设计》编程练习8.9(游戏:#字游戏)
8.9 (游戏:#字游戏)在并字游戏中,两个玩家使用各自的标志(一方用X则另一方就用O),轮流填写3x3的网格中的某个空格.当一个玩家在网格的水平方向.垂直方向或者对角线方向上出 现了三个相同的X或三 ...
- C - 一个C语言猜字游戏
下面是一个简陋的猜字游戏,玩了一会儿,发现自己打不过自己写的游戏,除非赢了就跑,最高分没有过1000. 说明:srand(time(NULL))和rand(),srand,time和rand都是函数, ...
- CASIO 5800P计算器游戏--猜数字游戏
CASIO 5800P 计算器游戏--猜数字游戏原代码 我编的计算器小游戏--猜数字游戏 LbI I↙ "xxGUESS NUMBERxx xPROGRAMMER:JCHx -------- ...
- 51 Nod 不一样的猜字游戏
1536 不一样的猜数游戏 题目来源: CodeForces 基准时间限制:1 秒 空间限制:131072 KB 分值: 20 难度:3级算法题 收藏 关注 瓦斯亚和皮台亚在玩一个简单的游戏.瓦 ...
- Java实现 LeetCode 299 猜数字游戏
299. 猜数字游戏 你正在和你的朋友玩 猜数字(Bulls and Cows)游戏:你写下一个数字让你的朋友猜.每次他猜测后,你给他一个提示,告诉他有多少位数字和确切位置都猜对了(称为"B ...
- 初识Java,猜字游戏
import java.util.*; public class caizi{ public static void main(String[] args){ Scanner in=new Scann ...
随机推荐
- 组播协议——IGMP v2报文头介绍
TYPE:占一个字节,其值有:0x16.0x12.0x17三种类型. Max Resp Time:最大响应时间,占一个字节. Checksum:校验和,占两个字节. Group address:组播地 ...
- C# windows服务:如何检测指定的Windows服务是否启动
public void CheckServerState(string ServiceName) { ServiceController[] service = ServiceController.G ...
- Mac中安装tensorflow(转)
当我们开始学习编程的时候,第一件事往往是学习打印"Hello World".就好比编程入门有Hello World,机器学习入门有MNIST.MNIST是一个识别手写数字的程序 M ...
- rename批量修改文件并在后缀前加字段
rename 's/\.jpg$/generate_badu\.jpg/' * 其中,'.'需要加转义斜杠'\', '*'代表文件夹下所有文件
- SPSS-非参数检验
非参数检验(卡方(Chi-square)检验.二项分布(Binomial)检验.单样本K-S(Kolmogorov-Smirnov)检验.单样本变量值随机性检验(Runs Test).两独立样本非参数 ...
- spring .cloud ------------java.lang.RuntimeException: com.netflix.client.ClientException,Caused by: java.lang.IllegalArgumentException: MIME type may not contain reserved characters
1.问题的发生 Feign在默认情况下使用的是JDK原生的URLConnection发送HTTP请求,没有连接池,但是对每个地址会保持一个长连接,即利用HTTP的persistence connect ...
- soap 简单调用其他系统的函数
<?xml version ='1.0' encoding ='UTF-8' ?> <definitions name='自定义名称' targetNamespace='目标命名空间 ...
- Myeclipse 2014 破解
Myeclipse 2014 破解补丁,首先需要先下载 Myeclipse 2014 官方安装文件,下载地址http://www.jb51.net/softs/150886.html,然后下载此补丁. ...
- JMeter (二十)参数化、检查点、集合点(转载)
转载自 http://www.cnblogs.com/yangxia-test 参数化:简单的来理解一下,我们录制了一个脚本,这个脚本中有登录操作,需要输入用户名和密码,假如系统不允许相同的用户名和密 ...
- pta l2-7(家庭房产)
题目链接:https://pintia.cn/problem-sets/994805046380707840/problems/994805068539215872 题意:给定n个人的信息,包括其编号 ...