回覆列表
-
1 # 髒話比謊話乾淨558
-
2 # yrohi18338
舉個例子intn=0;for(inti=0;i<100;i++){n++;for(intj=0;j<10;j++){printf("j");for(intk=0;k<5;k++){printf("k");}}}這個程式一步步來第一步先進入i的迴圈n變成1;在進入j的迴圈列印一個j;在進入k的迴圈,列印一個k然後會繼續進行k迴圈直到k迴圈結束也就是列印5個k然後在進行第二個j迴圈列印一個j;在進行k迴圈5次列印5個k繼續j迴圈直到j結束也就是列印10次(1個j+5個k)jkkkkkjkkkkkjkkkkk.......jkkkkk這只是完成了第一個i迴圈然後在回到i迴圈n變成2再來一波10次(1個j+5個k)jkkkkkjkkkkkjkkkkk.......jkkkkk然後n變成3直到100次最後列印了1000個jkkkkk並且n變成100
-
3 # 使用者289913434813374
第二個for 語句,如果是位於第一個for語句的內部,就是“巢狀”的,如果是第一個for語句結束後,那就是“並列”的。
for(i=0;i<n;i++)
for(j=i+1;j<n;j++)
和
for(i=0;i<n;i++)
{ };
for(j=i+1;j<n;j++)
{ };
一樣
.......
而
for(i=0;i<n;i++)
{for(j=i+1;j<n;j++)
.....
}
第二個才算for迴圈巢狀