猜数字小游戏C#实现代码

猜数字小游戏,供大家参考,具体内容如下

1、实验目的

掌握循环、分支等结构的使用方法,以及数据类型转换的方法。

2、实验内容

设计并实现一款猜数字游戏。游戏开始之后,首先生成一个随机数n。n是在1至100之间的一个整数。玩家有十次机会猜该数字的大小。如果在十次之内猜中n的大小,则游戏成功;否则游戏失败。每次猜的数字如果不对,则程序要给玩家提示,玩家猜的数字相比n是较大还是较小,并将猜数范围更新后显示出来。

3、实验要求

程序应能够具有鲁棒性。

1、如果用户输入的不是数字,程序应提示错误信息,而更不应崩溃。

2、如果用户输入的不是猜数范围内的整数,程序应提示错误信息,而 不应更改猜数范围。

3、如果十次机会,用户都没有猜中,应提示游戏失败,并能结束游戏。

4、如果十次机会之内,用户猜中,应提示游戏成功,并能结束游戏,而不应让用户继续猜数。

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("游戏退出,按任意键退出");

}

}

}

}

5、测试项

1)、测试Y与y进入游戏是否可行以及退出游戏是否可行;

2)、测试输入非法字符(包括非整型和超范围整型);

3)、测试待猜范围更新是否正确;

4)、测试游戏能否正常成功和结束;

6、测试效果

以上是 猜数字小游戏C#实现代码 的全部内容, 来源链接: utcz.com/z/317619.html

回到顶部