猜数
题目
电脑产生一个0到100之间的随机数字,并且要求用户来猜,如果用户猜到的数字太大,电脑会提示“太大”,否则提示“太小”,当用户正好猜中,电脑会提示“恭喜你猜对了,这个数是。。。” 在用户每次猜测之后,程序会输出是用户第几次猜。如果用户输入的根本不是一个数字,程序会告诉用户输入无效。
提示:产生0到100之间的随机数字可用以下语句:
Random rdm = new Random();
int guess = rdm.Next(0,101);
我的代码
class Program
{
static void Main(string[] args)
{
bool w = true;
while (w)
{
Random rdm = new Random();
int guess = rdm.Next(0, 101);
bool a = true;
while (a)
{
Console.WriteLine("请输入数字");
int num = int.Parse(Console.ReadLine());
if (num >= 0 & num < 101)
{
if (num > guess)
{
Console.WriteLine("太大!");
a = true;
}
else
{
if (num < guess)
{
Console.WriteLine("太小!");
a = true;
}
else
{
Console.WriteLine("恭喜你猜对了!这个数是{0}", guess);
}
}
}
else
{
Console.WriteLine("输入无效,请输入有效数字!");
w = true;
}
}
}
}
}
}
运行结果
但是没有次数,下面是加入次数后的代码
class Program
{
static void Main(string[] args)
{
bool w = true;
while (w)
{
Random rdm = new Random();
int guess = rdm.Next(0, 101);
bool a = true;
int i = 0;
while (a)
{
Console.WriteLine("请输入数字");
int num = int.Parse(Console.ReadLine());
if (num >= 0 & num < 101)
{
i = i + 1;
if (num > guess)
{
Console.WriteLine("太大!");
a = true;
Console.WriteLine("这是第{0}次输入!", i);
}
else
{
if (num < guess)
{
Console.WriteLine("太小!");
a = true;
Console.WriteLine ("这是第{0}次输入!\n",i);
}
else
{
Console.WriteLine("这是第{0}次输入!\n", i);
Console.WriteLine("恭喜你猜对了!这个数是{0}", guess);
}
}
}
else
{
Console.WriteLine("输入无效,请输入有效数字!");
w = true;
}
}
}
}
}