我在c#中编写了一个Tic Tac Toe程序,并检查一个玩家是否获胜我目前有16个if
语句(x
和o
都有8个选项)。 (这些按钮的编号类似于电话拨号盘)。
简短的例子:
if (button1.Text == "X" && button2.Text == "X" && button3.Text=="X")//horizontal top X
{
MessageBox.Show("Congratulations! X wins!", "Winner!");
}
if (button1.Text == "O" && button2.Text == "O" && button3.Text == "O")//horizontal top O
{
MessageBox.Show("Congratulations! O wins!", "Winner!");
}
if (button4.Text == "X" && button5.Text == "X" && button6.Text == "X")//horizontal middle X
{
MessagBox.Show("Congratulations! X wins!");
}
if (button4.Text == "O" && button5.Text == "O" && button6.Text == "O")//horizontal middle O
{
MesageBox.Show("Congratulations! O wins!", "Winner!");
}
有没有办法说"下一个按钮" / button index?,因为那时我可以做到:
if (button.Text==NextButton.Text==NextButton.Text)
{
MessageBox.Show("Congratulations! X wins!", "Winner!");
}
或:
if (button[i].Text=="X" && button[i++].Text=="X" && button[i+=2].Text=="X")
答案 0 :(得分:0)
你可以这样做:
if (button1.Text == button2.Text && button2.Text == button3.Text)
MessageBox.Show("Congratulations! " +button1.Text +" wins!", "Winner!");
等等。
答案 1 :(得分:0)
或者您可以创建3x3按钮数组,然后您可以使用索引方法button[row,column]
来访问它们。