放错了其他错误,我提到标签“ ERROR”的行我放错了其他错误

时间:2019-05-14 16:27:27

标签: c++ if-statement

我在这个C ++程序中遇到了一个错误放置的else错误,它是无与伦比的Tic-Tac-Toe程序的一部分,不是全部代码,只是程序的一部分

我包括了所有必要的花括号,并检查了三次(也许不止于此)

我已经键入了所有必需的大括号[{}],即使在我提到标签“ ERROR”的行中,我也会放错地方,否则会出错

if(k==4)
{ if(e=='x')
  {   if(b=='x')
  j[k]='8';
  else
  if(h=='x')
  j[k]='2';
  else
  if(c=='x')
  j[k]='7';
  else
  if(g=='x')
  j[k]='3';
  else
  if(d=='x')
  j[k]='6';
  else
  if(f=='x')
  j[k]='4';
  else
  if(i=='x')
  j[k]='3';
  }
  else
  {   if(a=='x'&&b=='x'||i=='x'&&f=='x')
  j[k]='3';
  else
  if(a=='x'&&d=='x'||h=='x'&&i=='x')
  j[k]='7';
  else
  if(d=='x'&&g=='x'||b=='x'&&c=='x')
  j[k]='1';
  else
  if(c=='x'&&f=='x'||g=='x'&&h=='x')
  j[k]='9';
  else
  if(a=='x')
  { if(c=='x')
    j[k]='2';
    else
    if(g=='x')
    j[k]='4';
  }
  else
  if(i=='x')
  { if(c=='x')
    j[k]='6';
    else
    if(g=='x')
    j[k]='8';
  }
  else
  if(g=='x')
  { if(f=='x')
    j[k]='9';
    else
    if(b=='x')
    j[k]='1';
  }
  else
  if(a=='x')
  { if(h=='x')
     j[k]='7';
    else
    if(f=='x')
     j[k]='3';
  }
  else
  if(c=='x')
  { if(h=='x')
    j[k]='9';
    if(d=='x')
    j[k]='1';
  }
  else
  if(i=='x')
  { if(b=='x')
    j[k]='3';
    if(d=='x')
    j[k]='7';
   }
  } ERROR:  else
            {if(a=='x')
             j[k]='3';
             else
             j[k]='1';
            }
          }

实际结果是我提到标签“ ERROR”的行。必须正常工作

1 个答案:

答案 0 :(得分:1)

如Mark Loeser所写。错误是在其他字符之前放错了'}'。因此,在另一个之后还有另一个。

我强烈建议始终在每个if和else语句之后使用支撑块,并使用缩进。

if (something)
{
    do_something();
}
else
{
    do_something_else();
}

然后

您的提示如下所示。您将立即看到错误。

if(k==4)
{ 
    if(e=='x')
    {   
        if(b=='x')
            j[k]='8';
        else
            if(h=='x')
                j[k]='2';
            else
                if(c=='x')
                    j[k]='7';
                else
                    if(g=='x')
                        j[k]='3';
                    else
                        if(d=='x')
                            j[k]='6';
                        else
                            if(f=='x')
                                j[k]='4';
                            else
                                if(i=='x')
                                    j[k]='3';
    }
    else
    {   
        if(a=='x'&&b=='x'||i=='x'&&f=='x')
            j[k]='3';
        else
            if(a=='x'&&d=='x'||h=='x'&&i=='x')
                j[k]='7';
            else
                if(d=='x'&&g=='x'||b=='x'&&c=='x')
                    j[k]='1';
                else
                    if(c=='x'&&f=='x'||g=='x'&&h=='x')
                        j[k]='9';
                    else
                        if(a=='x')
                        { 
                            if(c=='x')
                                j[k]='2';
                            else
                                if(g=='x')
                                    j[k]='4';
                        }
                        else
                            if(i=='x')
                            { 
                                if(c=='x')
                                    j[k]='6';
                                else
                                    if(g=='x')
                                        j[k]='8';
                            }
                            else
                                if(g=='x')
                                { 
                                    if(f=='x')
                                        j[k]='9';
                                    else
                                        if(b=='x')
                                            j[k]='1';
                                }
                                else
                                    if(a=='x')
                                    { 
                                        if(h=='x')
                                            j[k]='7';
                                        else
                                            if(f=='x')
                                                j[k]='3';
                                    }
                                    else
                                        if(c=='x')
                                        { 
                                            if(h=='x')
                                                j[k]='9';
                                            if(d=='x')
                                                j[k]='1';
                                        }
                                        else
                                            if(i=='x')
                                            { 
                                                if(b=='x')
                                                    j[k]='3';
                                                if(d=='x')
                                                    j[k]='7';
                                            }
    } 
    else
    {
        if(a=='x')
            j[k]='3';
        else
            j[k]='1';
    }
}

我希望这会有所帮助。