已有56人关注
零基础学c#中的一道练习题,写的代码有bug(Code\Try\04\11)
发表在C#图书答疑 2018-08-07 《零基础学C#》第4 章 流程控制语句 99页-99页
是否精华
版块置顶:

using System;

using System.Collections.Generic;

using System.Text;


namespace _0412

{

    class Program

    {

        static void Main(string[] args)

        {

            Console.WriteLine("----------游戏说明----------");

            Console.WriteLine("     系统随机选定(1-200)  ");

            Console.WriteLine(" 中一个整数, 根据提示猜    ");

            Console.WriteLine(" 出数字,游戏中输入-1 退   " );

            Console.WriteLine(" 出游戏,按任意键开始游戏。  ");

            Console.WriteLine(" ---------------------------");

            Console.ReadLine();

            Console.Clear();

            Console.WriteLine("游戏开始,请输入您猜的数字:");

            int UG = Convert.ToInt32(Console.ReadLine());

            Random SNS = new Random();

            int SN= SNS.Next(1,200);

            Console.WriteLine(SN);


            while ((SN > UG) && (UG > 0))

            {

                Console.WriteLine("似乎比你想的要大,再给你一次机会继续输入吧:");

                UG = Convert.ToInt32(Console.ReadLine());

            }

            while ((SN < UG) && (UG > 0))

            {

                Console.WriteLine("似乎比你想的要小,再给你一次机会继续输入吧:");

                UG = Convert.ToInt32(Console.ReadLine());

            }

            while (SN == UG)

            {


                Console.WriteLine("好棒!猜到了哦");

                Console.WriteLine("这个数字就是{0}", SN);

                Console.WriteLine("----------游戏结束----------");

                Console.ReadLine();

                break;


            }

            while (UG == -1)

            {

                Console.WriteLine("你个looser,再见!");

                Console.WriteLine("----------游戏结束----------");

                Console.ReadLine();

                break;

            }

            


        }

    }

}


该代码运行后,输入数字,随机会退出,麻烦老师答疑!没有学分,师兄师姐知道的也请帮帮忙谢谢!

分享到:
精彩评论 3
18921403167
学分:233 LV4
2018-08-07
沙发

是0412说错了,对不起

18921403167
学分:233 LV4
2018-08-07
板凳

while改成if 或else if 都会退出,多次试验发现从一个while跳到另一个while就会退出,分析是因为进程到while中后条件不满足则会退出。问问对不对,看来还是理解不深刻!

18921403167
学分:233 LV4
2018-08-07
地板

using System;

using System.Collections.Generic;

using System.Text;


namespace _0412

{

    class Program

    {

        static void Main(string[] args)

        {

            Console.WriteLine("----------游戏说明----------");

            Console.WriteLine("     系统随机选定(1-200)  ");

            Console.WriteLine(" 中一个整数, 根据提示猜    ");

            Console.WriteLine(" 出数字,游戏中输入-1 退   " );

            Console.WriteLine(" 出游戏,按任意键开始游戏。  ");

            Console.WriteLine(" ---------------------------");

            Console.ReadLine();

            Console.Clear();

            Console.WriteLine("游戏开始,请输入您猜的数字:");

            int UG = Convert.ToInt32(Console.ReadLine());

            Random SNS = new Random();

            int SN= SNS.Next(1,200);

        while((SN!=UG)&&(UG!=-1))

            {

                if ((SN > UG) && (UG > 0))

                {

                    Console.WriteLine("似乎比你想的要大,再给你一次机会继续输入吧:");

                    UG = Convert.ToInt32(Console.ReadLine());

                }

                else if ((SN < UG) && (UG > 0))

                {

                    Console.WriteLine("似乎比你想的要小,再给你一次机会继续输入吧:");

                    UG = Convert.ToInt32(Console.ReadLine());

                }

            }

            if (SN == UG)

            {


                Console.WriteLine("好棒!猜到了哦");

                Console.WriteLine("这个数字就是{0}", SN);

                Console.WriteLine("----------游戏结束----------");

                Console.ReadLine();

            }

            else if (UG == -1)

            {

                Console.WriteLine("你个looser,再见!");

                Console.WriteLine("----------游戏结束----------");

                Console.ReadLine();

            }

修改成这样,程序暂无bug,当然不能输入数字意外的字符。OMG!


首页上一页 1 下一页尾页 3 条记录 1/1页
手机同步功能介绍
友情提示:以下图书配套资源能够实现手机同步功能
明日微信公众号
明日之星 明日之星编程特训营
客服热线(每日9:00-17:00)
400 675 1066
mingrisoft@mingrisoft.com
吉林省明日科技有限公司Copyright ©2007-2022,mingrisoft.com, All Rights Reserved长春市北湖科技开发区盛北大街3333号长春北湖科技园项目一期A10号楼四、五层
吉ICP备10002740号-2吉公网安备22010202000132经营性网站备案信息 营业执照