用C#编写猜拳程式
如何编写当使用者按下任意radioButton(石头、剪子、布)电脑则为图案出拳,该如何撰写判断输赢与显示在下方label结果的程式码呢?以上此问题有请这方面在行的人指教...
如何编写当使用者按下任意radioButton(石头、剪子、布)
电脑则为图案出拳,该如何撰写判断输赢与显示在下方label
结果的程式码呢?
以上此问题有请这方面在行的人指教罗!
这位回答的先生~你真是失礼呢~切勿逞口舌之快,实际行动证明才对吧! 展开
电脑则为图案出拳,该如何撰写判断输赢与显示在下方label
结果的程式码呢?
以上此问题有请这方面在行的人指教罗!
这位回答的先生~你真是失礼呢~切勿逞口舌之快,实际行动证明才对吧! 展开
4个回答
展开全部
这里说个思路吧。
电脑的出拳,你用随机函数生成就行了,例如:
石头=0,剪刀=1,布=2,
程序中使用随机函数在0-2中间随机生成数字,得到结果后将对应的图片显示出来。
至于输赢的话,因为你这里只用到3者之间的比较,给你简单提一下,比如电脑出的是石头(0),你出的是剪刀(1),结果就用石头(0)-剪刀(1)=(-1),那就是电脑胜,相反,如果电脑出的是剪刀,你出的是石头,那结果就是(1),明白了吗,只要看两者相减的结果的正负就知道哪方获胜,至于布跟石头的比较,就需要你处理一下了,提示一下,你根据相减的结果判断是不是石头跟布的比较。
这个程序并不难,都说出来就没意思了。
电脑的出拳,你用随机函数生成就行了,例如:
石头=0,剪刀=1,布=2,
程序中使用随机函数在0-2中间随机生成数字,得到结果后将对应的图片显示出来。
至于输赢的话,因为你这里只用到3者之间的比较,给你简单提一下,比如电脑出的是石头(0),你出的是剪刀(1),结果就用石头(0)-剪刀(1)=(-1),那就是电脑胜,相反,如果电脑出的是剪刀,你出的是石头,那结果就是(1),明白了吗,只要看两者相减的结果的正负就知道哪方获胜,至于布跟石头的比较,就需要你处理一下了,提示一下,你根据相减的结果判断是不是石头跟布的比较。
这个程序并不难,都说出来就没意思了。
展开全部
enum Guess
{
剪刀 = 0,石头 , 布
} class Program
{
static void Main(string[] args)
{
Random ran = new Random();
int firstNum =ran.Next(3);
int secNum = ran.Next(3);
Console.WriteLine("firstNum出了{0},secNum出了{1}", (Guess)firstNum, (Guess)secNum);
Console.WriteLine(check(firstNum, secNum));
Console.Read();
}
static int max(int firstNum, int secNum)
{
if(firstNum>secNum)
{
return firstNum;
}
else
{
return secNum;
}
}
static int min(int firstNum, int secNum)
{
if (firstNum > secNum)
{
return secNum;
}
else
{
return firstNum;
}
}
static string check(int firstNum, int secNum)
{
if(Math.Abs( firstNum - secNum) ==1)
{
return (Guess)max(firstNum, secNum) + "赢";
}
if (Math.Abs(firstNum - secNum) == 2)
{
return (Guess)min(firstNum, secNum) + "赢";
}
return "平";
}
}
{
剪刀 = 0,石头 , 布
} class Program
{
static void Main(string[] args)
{
Random ran = new Random();
int firstNum =ran.Next(3);
int secNum = ran.Next(3);
Console.WriteLine("firstNum出了{0},secNum出了{1}", (Guess)firstNum, (Guess)secNum);
Console.WriteLine(check(firstNum, secNum));
Console.Read();
}
static int max(int firstNum, int secNum)
{
if(firstNum>secNum)
{
return firstNum;
}
else
{
return secNum;
}
}
static int min(int firstNum, int secNum)
{
if (firstNum > secNum)
{
return secNum;
}
else
{
return firstNum;
}
}
static string check(int firstNum, int secNum)
{
if(Math.Abs( firstNum - secNum) ==1)
{
return (Guess)max(firstNum, secNum) + "赢";
}
if (Math.Abs(firstNum - secNum) == 2)
{
return (Guess)min(firstNum, secNum) + "赢";
}
return "平";
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这个也太。。。。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2009-03-08
展开全部
这也不会?!!懒的更你说……
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询