Почему программа дает мне другой результат, когда я использую оператор if.Почему программа дает мне другой результат, когда я использую оператор
Если я использую команду else if, она печатает 5. Однако. Если я изменил else, если на оператор if, он напечатает совершенно другую картинку. Может ли кто-нибудь сказать мне, почему?
#include<iostream>
using namespace std;
// Print 5.
int main() {
int n=5;
for(int row=1;row<=2*n-1;row++)
{
for(int col=1;col<=n;col++)
{
if(row==1||row==n||row==2*n-1)
cout<<"*";
else if (col==1&&row<n||col==n&&row>n)
cout<<"*";
else
cout<<" ";
}
cout<<endl;
}
return 0;
}
Я всегда думал, что если и еще, если они одинаковы.
в 'еще if' на' if' оценивается только когда закрывающее условие 'if' ложно ... Оно меняет вещь s использовать одну форму или другую ... 'if (c1) {} else if (c2) {}' эквивалентно 'if (c1) {}, если (! c1 && c2) {}'. –