C#之简易猜数字游戏
游戏规则说明:
由系统生成一个随机数,玩家有三次猜数字的机会,如果在三次内猜出数字反馈玩家猜对了,否则Game Over!
代码设计说明:
1.首先设计一个简易的欢迎界面,并提示玩家是否开始游戏;
public void Rule()
{
string symbol;
bool flag = false;
Console.WriteLine("***********************************************");
Console.WriteLine("------------欢迎进入猜数字游戏!-------------");
Console.WriteLine("我们将从1到10间随机生成一个数字由玩家进行猜测!");
Console.WriteLine(" 来看看你们的运气,提供你们三次猜测机会!");
Console.WriteLine("\tY--开始游戏\t\tN--退出游戏");
Console.WriteLine("***********************************************");
Console.Write("是否进入游戏:");
symbol = Convert.ToString(Console.ReadLine());
while (flag == false)
{
switch (symbol)
{
case "Y":
Console.Clear();
Console.WriteLine("游戏开始!");
flag = true;
break;
case "N":
Console.WriteLine("退出游戏!");
Console.ReadKey();
Environment.Exit();
break;
default:
Console.WriteLine("输入无效符号!");
Console.Write("是否进入游戏:");
symbol = Convert.ToString(Console.ReadLine());
break;
}
}
}
2.由系统自动生成一个随机数;
public int SetRandom()
{
int number; var random = new Random();
number = random.Next(,); // 使用该方法获得的随机数大于等于1,小于10;
return number;
}
3.由玩家输入一个数值与系统生成随机数进行比较,判断是否相同,如果相同则表示玩家猜对,否则继续猜,直到三次机会使用完反馈Game Over!
public void Guess(int num)
{
int number;
int count = ;
Console.WriteLine("请输入猜测数值:");
number = Convert.ToInt32(Console.ReadLine()); while (num <= )
{
if (number == num)
{
Console.WriteLine("恭喜你,猜对了!");
break;
}
else
{
count++; // 获取玩家输入次数
Console.WriteLine("亲。猜错了哦! 您以使用{0}次机会\n", count); if (count >= ) //判断玩家是否已输入三次
{
Console.WriteLine("您已用完猜测次数,Game Over!");
break;
}
Console.WriteLine("请再次输入猜测数值:");
number = Convert.ToInt32(Console.ReadLine()); } } }
完整代码
using System; namespace GuessNumberApplication
{
class Program
{
static void Main(string[] args)
{
var guessNumber = new GuessNumber();
var ruleExplain = new RuleExplain(); ruleExplain.Rule();
int number = guessNumber.SetRandom();
guessNumber.Guess(number); Console.ReadKey();
}
}
class RuleExplain
{
public void Rule()
{
string symbol;
bool flag = false;
Console.WriteLine("***********************************************");
Console.WriteLine("------------欢迎进入猜数字游戏!-------------");
Console.WriteLine("我们将从1到10间随机生成一个数字由玩家进行猜测!");
Console.WriteLine(" 来看看你们的运气,提供你们三次猜测机会!");
Console.WriteLine("\tY--开始游戏\t\tN--退出游戏");
Console.WriteLine("***********************************************");
Console.Write("是否进入游戏:");
symbol = Convert.ToString(Console.ReadLine());
while (flag == false)
{
switch (symbol)
{
case "Y":
Console.Clear();
Console.WriteLine("游戏开始!");
flag = true;
break;
case "N":
Console.WriteLine("退出游戏!");
Console.ReadKey();
Environment.Exit();
break;
default:
Console.WriteLine("输入无效符号!");
Console.Write("是否进入游戏:");
symbol = Convert.ToString(Console.ReadLine());
break;
}
} }
} class GuessNumber
{
public int SetRandom()
{
int number; Random random = new Random();
number = random.Next(, ); // 使用该方法获得的随机数大于等于1,小于10;
return number;
} public void Guess(int num)
{
int number;
int count = ;
Console.WriteLine("请输入猜测数值:");
number = Convert.ToInt32(Console.ReadLine()); while (num <= )
{
if (number == num)
{
Console.WriteLine("恭喜你,猜对了!");
break;
}
else
{
count++; // 获取玩家输入次数
Console.WriteLine("亲。猜错了哦! 您以使用{0}次机会\n", count); if (count >= ) //判断玩家是否已输入三次
{
Console.WriteLine("您已用完猜测次数,Game Over!");
break;
}
Console.WriteLine("请再次输入猜测数值:");
number = Convert.ToInt32(Console.ReadLine()); } } }
}
}
C#之简易猜数字游戏的更多相关文章
- C语言猜数字游戏
猜数字游戏,各式各样的实现方式,我这边提供一个实现方式,希望可以帮到新手. 老程序猿就不要看了,黑呵呵 源代码1 include stdio.h include stdlib.h include ti ...
- 不一样的猜数字游戏 — leetcode 375. Guess Number Higher or Lower II
好久没切 leetcode 的题了,静下心来切了道,这道题比较有意思,和大家分享下. 我把它叫做 "不一样的猜数字游戏",我们先来看看传统的猜数字游戏,Guess Number H ...
- java 猜数字游戏
作用:猜数字游戏.随机产生1个数字(1~10),大了.小了或者成功后给出提示. 语言:java 工具:eclipse 作者:潇洒鸿图 时间:2016.11.10 >>>>> ...
- 【原创Android游戏】--猜数字游戏Version 0.1
想当年高中时经常和小伙伴在纸上或者黑板上或者学习机上玩猜数字的游戏,在当年那个手机等娱乐设备在我们那还不是很普遍的时候是很好的一个消遣的游戏,去年的时候便写了一个Android版的猜数字游戏,只是当时 ...
- 【原创Android游戏】--猜数字游戏V1.1 --数据存储,Intent,SimpleAdapter的学习与应用
--------------------------------------------------------------- V0.1版本 上次做完第一个版本后,发现还有一些漏洞,并且还有一些可以添 ...
- python学习笔记 ——python写的猜数字游戏 002
from sys import exit import random def Arrfor(str): #CONTST = CONTST + 1 artificial = input("请输 ...
- 用MFC完成一个简单的猜数字游戏: 输入的四位数中,位置和数字都正确为A,数字相同而位置不同的为B。
最近学习了MFC一些比较基础的知识,所以打算通过做一个简单的数字游戏来理解MFC的流程并进一步熟悉其操作. 在这里,我做了一个猜数字的小游戏.第一步当然是设计主界面,先给大家展示一下游戏界面: 主界面 ...
- C语言之猜数字游戏
猜数字游戏 猜数字游戏是以前功能机上的一款益智游戏,计算机会根据输入的位数随机分配一个符合要求的数据,计算机输出guess后便可以输入数字,注意数字间需要用空格或回车符加以区分,计算机会根据输入信息给 ...
- c语言-猜数字游戏
#include <stdio.h> #include <stdlib.h> int top(); int input(); void main() { ; int numbe ...
随机推荐
- poj3233Matrix Power Series(矩阵乘法)
Matrix Power Series Time Limit: 3000MS Memory Limit: 131072K Total Submissions: 23187 Accepted: ...
- Aviator
Aviator 简介¶ Aviator是一个高性能.轻量级的java语言实现的表达式求值引擎,主要用于各种表达式的动态求值.现在已经有很多开源可用的java表达式求值引擎,为什么还需要Avaitor呢 ...
- Blender插件编写指南
前言 Blender插件是Blender的利器, 用户可以使用各种插件扩充Blender的功能. Blender Python插件以bpy.props, bpy.types.Operator, bpy ...
- # secure_link_module模块
作用 制定并允许检查请求的链接的真实性以及保护资源免遭未经授权的访问 限制链接生效周期 首先检查nginx是否已安装模块 #nginx -V 输出nginx所有已安装模块,检查是否有ngx_http_ ...
- NetCore下获取项目文件路径
我要获取的是doc/FPFile.xml 百度了一大堆就是找不到解决问题. 把属性更改为始终赋值, XmlDocument xdi = new XmlDocument(); xdi.Load((&qu ...
- 【Oracle】详解10053事件
借助Oracle的10053事件event,我们可以监控到CBO对SQL进行成本计算和路径选择的过程和方法. 10053事件有两个级别: Level 2:2级是1级的一个子集,它包含以下内容: Col ...
- JSP_内置对象_请求转发和请求重定向的区别
请求重定向:客户端行为,response.sendRedirect(),从本质上将等同与两次请求,前一次请求request对象不会保存,地址栏的URL地址会改变. 请求转发:服务器行为,request ...
- 洛谷P1101 单词方阵【DFS】
给一n \times nn×n的字母方阵,内可能蕴含多个"yizhong"单词.单词在方阵中是沿着同一方向连续摆放的.摆放可沿着 88 个方向的任一方向,同一单词摆放时不再改变方向 ...
- 51Nod - 1134 最长递增子序列【动态规划】
给出长度为N的数组,找出这个数组的最长递增子序列.(递增子序列是指,子序列的元素是递增的) 例如:5 1 6 8 2 4 5 10,最长递增子序列是1 2 4 5 10. Input 第1行:1个数N ...
- Ecshop模板中html_options用法详解
程序部分 <?php $smarty->assign('status_list', $_LANG['cs']); // 订单状态 $smarty->display("ind ...