[英]conditional statement in loop c++
for (i = 1; i <= a; i++){
for (b = 1; b <= i; b++){
cout << "X";
}
cout << endl;
}
如果 a=4,結果將是
X
XX
XXX
XXXX
而這個輸出
for (i = 1; i <= a; i++){
for (b = 1; b <= a - i; b++){
cout << "A";
}
cout << endl;
}
將會
AAA
AA
A
我認識到條件語句中的不同,但我無法解釋為什么會這樣。
對於您的第一個示例,第一個 for 循環運行,因為 1 小於 (4)。 然后它將移動到下一個 for 循環。 所以 b = 1,並且 1 等於 1,它將運行並打印出 X。現在循環將結束,外部 for 循環將增加到 2,並重復。
查看內部循環的停止條件:
b <= i;
b <= a - i;
現在,讓我們從i
是 1 開始:
b <= 1;
b <= 3;
並且,以i
為 4 結束:
b <= 4;
b <= 0;
考慮到你的b
的初始化:
b = 1;
b = 1;
將它們全部結合起來 => b
s 的循環范圍將是[1; 4]
[1; 4]
和[3; 1]
[3; 1]
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.