大橙子网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
今天就跟大家聊聊有关使用C#编写一个猜数字小游戏,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。
成都创新互联主要从事网站设计制作、成都网站制作、网页设计、企业做网站、公司建网站等业务。立足成都服务两当,十多年网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:028-869222201、实验目的
掌握循环、分支等结构的使用方法,以及数据类型转换的方法。
设计并实现一款猜数字游戏。游戏开始之后,首先生成一个随机数n。n是在1至100之间的一个整数。玩家有十次机会猜该数字的大小。如果在十次之内猜中n的大小,则游戏成功;否则游戏失败。每次猜的数字如果不对,则程序要给玩家提示,玩家猜的数字相比n是较大还是较小,并将猜数范围更新后显示出来。
程序应能够具有鲁棒性。
1、如果用户输入的不是数字,程序应提示错误信息,而更不应崩溃。
2、如果用户输入的不是猜数范围内的整数,程序应提示错误信息,而 不应更改猜数范围。
3、如果十次机会,用户都没有猜中,应提示游戏失败,并能结束游戏。
4、如果十次机会之内,用户猜中,应提示游戏成功,并能结束游戏,而不应让用户继续猜数。
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace 猜数字小游戏 { class Program { public static int test(string n, int max, int min) { try { int i = int.Parse(n); if (i > min - 1 && i < max + 1)//不知道可不可以这样用// return 1; else { Console.WriteLine("错误:输入的数字超出范围"); return 0; } } catch { Console.WriteLine("错误:输入的不是整型数字"); return 0; } } static void Main(string[] args) { Console.WriteLine("-------------------------"); Console.WriteLine("***********欢迎**********"); Console.WriteLine("***1、你有十次机会"); Console.WriteLine("***2、随机数的范围为1-100"); Console.WriteLine("-------------------------"); Console.WriteLine("请输入“Y/y”开始游戏,输入其他键退出游戏"); String S = Console.ReadLine(); if (S == "Y" || S == "y") { Random R = new Random(); int m = R.Next(1, 101); int max = 100; int min = 1; int i; Console.WriteLine("-----随机数生成完毕------"); for (i = 0; i < 10; ) { Console.WriteLine("第" + (i + 1) + "次机会,请输入你的答案:"); String n = Console.ReadLine(); i++; if (test(n, max, min) == 1) { int j = int.Parse(n); if (i == 10) { Console.WriteLine("次数用尽,游戏失败!"); break; } if (j == m) { Console.WriteLine("恭喜你,猜对了"); break; } else if (j > m) { max = j-1; Console.WriteLine("猜错了,范围更新为[" + min + "-" + max + "]"); continue; } else if (j < m) { min = j+1; Console.WriteLine("猜错了,范围更新为[" + min + "-" + max + "]"); continue; } } } } else { Console.WriteLine("游戏退出,按任意键退出"); } } } }
1)、测试Y与y进入游戏是否可行以及退出游戏是否可行;
2)、测试输入非法字符(包括非整型和超范围整型);
3)、测试待猜范围更新是否正确;
4)、测试游戏能否正常成功和结束;
看完上述内容,你们对使用C#编写一个猜数字小游戏有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注创新互联行业资讯频道,感谢大家的支持。