Вы положили 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;
}
Сейчас я не могу запустить его, поэтому могут быть другие ошибки, которые я не обнаружил.
Некоторые программисты рекомендуют ставить квадратные скобки, чтобы убедиться, что ваше намерение явное (см. Неподвижная проблема ), но в этом случае это не нужно.