使用 If else 时出错

Error while using If else

我正在尝试创建一个程序,您需要输入 3 个数字并需要告诉您哪个数字更大,但我遇到了错误:[Error] expected '(' before 'else'. 错误在第 17 和 21 行。 这是代码。

using namespace std;


int main(){

  int n1, n2, n3;

  cout<<"Type 3 numbers : ";
  cin>>n1>>n2>>n3;

  if (n1 > n2 && n1 > n3){
    cout<<"The graeter is : "<<n1;
  } 
  if else{
    (n2 > n3);
    cout<<"The graeter is: "<<n2;
  }
  if else {
    cout<<"The graeter is: "<<n3;
  } 
  return 0;
}

您将 if else 放在了应该 else if 的位置。您还将条件放在代码块中。在你的最终测试中,你只有 else 因为除此之外别无选择。试试这个:

int main()
{ 
  int n1, n2, n3;

  cout<<"Type 3 numbers : ";
  cin>>n1>>n2>>n3;

  if (n1 > n2 && n1 > n3) {
    cout<<"The greater is : "<<n1;
  }
  else if (n2 > n3) {
    cout<<"The greater is: "<<n2;
  }
  else {
    cout<<"The greater is: "<<n3;
  }
  return 0;
}

我目前无法 运行,所以可能还有其他我没有发现的错误。

一些程序员建议放入括号以确保您的意图是明确的(参见 Dangling Else Problem),但在这种情况下没有必要。