このコードがどのようにコンパイルされているかわかりません(ビジュアルスタジオコードを使用してfyiだけ)
int i,j;
for(i=0; i<=6; i++) {
for (j=1; j<=7-i; j++) {
Console.Write("*");
}
Console.Write("\n");
}
私の質問は、コードがコンパイルされ始めたときに、最初のforループがテストされて真になり、次にネストされたforループがテストされて真になるので、"Console.Write(" * ");が書き込まれます。。しかし、ここからは何が起こるのか、なぜ起こるのかわかりません。コンパイラはConsole.Write( "\ n");または...を実行しますか?
変数はこのように変化します。
i = 0 : j changes from 0 to 7 ( 7- i, but i = 0)
i = 1 : j changes from 0 to 6 (7 - i, i = 1)
.
.
.
.
i = 6: j changes from 1 to 1 (7 - i, i = 6)
各iループでは、jループと改行文字を印刷しています。
|j-loop|i-loop|
|******|'\n' |
だから、あなたは出力を得るでしょう、
*******
******
*****
****
***
**
*
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加