zoukankan      html  css  js  c++  java
  • C#之简易猜数字游戏

    游戏规则说明:

    由系统生成一个随机数,玩家有三次猜数字的机会,如果在三次内猜出数字反馈玩家猜对了,否则Game Over!

    代码设计说明

    1.首先设计一个简易的欢迎界面,并提示玩家是否开始游戏;

            public void Rule()
            {
                string symbol;
                bool flag = false;
                Console.WriteLine("***********************************************");
                Console.WriteLine("------------欢迎进入猜数字游戏!-------------");
                Console.WriteLine("我们将从1到10间随机生成一个数字由玩家进行猜测!");
                Console.WriteLine("  来看看你们的运气,提供你们三次猜测机会!");
                Console.WriteLine("	Y--开始游戏		N--退出游戏");
                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(0);
                            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); // 使用该方法获得的随机数大于等于1,小于10;
                return number;
            }

    3.由玩家输入一个数值与系统生成随机数进行比较,判断是否相同,如果相同则表示玩家猜对,否则继续猜,直到三次机会使用完反馈Game Over!

    public void Guess(int num)
            {
                int number;
                int count = 0;
                Console.WriteLine("请输入猜测数值:");
                number = Convert.ToInt32(Console.ReadLine());
    
                while (num <= 10)
                {
                    if (number == num)
                    {
                        Console.WriteLine("恭喜你,猜对了!");
                        break;
                    }
                    else
                    {
                        count++; // 获取玩家输入次数
                        Console.WriteLine("亲。猜错了哦! 您以使用{0}次机会
    ", count);
    
                        if (count >= 3) //判断玩家是否已输入三次
                        {
                            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("	Y--开始游戏		N--退出游戏");
                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(0);
                            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); // 使用该方法获得的随机数大于等于1,小于10;
                return number;
            }
    
            public void Guess(int num)
            {
                int number;
                int count = 0;
                Console.WriteLine("请输入猜测数值:");
                number = Convert.ToInt32(Console.ReadLine());
    
                while (num <= 10)
                {
                    if (number == num)
                    {
                        Console.WriteLine("恭喜你,猜对了!");
                        break;
                    }
                    else
                    {
                        count++; // 获取玩家输入次数
                        Console.WriteLine("亲。猜错了哦! 您以使用{0}次机会
    ", count);
    
                        if (count >= 3) //判断玩家是否已输入三次
                        {
                            Console.WriteLine("您已用完猜测次数,Game Over!");
                            break;
                        }
                        Console.WriteLine("请再次输入猜测数值:");
                        number = Convert.ToInt32(Console.ReadLine());
    
                    }
    
                }
    
            }
        }
    }
  • 相关阅读:
    【深入理解Java虚拟机】类加载机制
    【深入理解Java虚拟机】四种引用类型的特点
    【深入理解Java虚拟机】JVM内存区域
    【每日一题】单词搜索
    过滤器和拦截器有啥区别,这次会了!
    Filter过滤器简单入门
    SpringMVC的运行流程+常用注解总结
    SpringAOP+源码解析,切就完事了
    Spring的循环依赖,学就完事了【附源码】
    Markdown的流程图制作
  • 原文地址:https://www.cnblogs.com/drift-code/p/8821582.html
Copyright © 2011-2022 走看看