課程
/后端開發
/C
/C語言入門
for(i=9; i>=1; i++)
for(j=1; j<=1; j--)
這兩個for語句分別是怎么運行的? ?可以解釋一下嗎 ? i和j分別代表什么呢
2015-11-14
源自:C語言入門 4-13
正在回答
for(i=9;i>=1;i--)???//i的初值為9,判斷是否滿足i>=1,滿足即運行內部的程序,i++是內部程序執行完后做的 ????{ ???????for(j=1;j<=i;j++)??/*可以先看成第一個for的內部程序,然后再把它當做一個for循環,單個的for循環你會吧*/ ??????????{ ??????????????result=i*j;?//i=9,j=1,得出相應的result ?????????????printf("%d*%d=%d\t",i?,j,result);?//輸出9*1=9,j++,j=2,j<=i,條件滿足,繼續執行第二個for ??????????} ????????printf("\n");?//第二個for的循環條件不滿足即j>i時,循環結束,執行第一個for循環的換行命令 ????}
第二個for循環嵌在第一個for循環里面,要第二個for循環執行好了,才能夠i--,然后繼續執行,這個時候i=8,for循環條件通過,執行第二個for循環,第二個for循環執行跳出以后,再執行i--,這樣循環往復的執行。
第一次i=9
j=1時輸出 ? ?9*1=9
j=2時輸出 ? ?9*2=18
j=3時輸出 ? ?9*3=27
j=4時輸出 ? ?9*4=36
j=5時輸出 ? ?9*5=45
j=6時輸出 ? ?9*6=54
j=7時輸出 ? ?9*7=63
j=8時輸出 ? ?9*8=72
j=9時輸出 ? ?9*9=81
當j=10時循環條件不滿足,第二for循環結束,執行回車換行,i--
第二次 i=8
和上面的類似不過當j=9時循環條件j<=i不滿足,循環結束,回車換行,i--
下面就是一樣的道理,知道i=0不滿足i>=1的循環條件,循環結束。
好啦,差不多就這樣,希望沒有把你繞糊涂
super珊__ 提問者
for(i=9;i>=1;i--) ????for(j=1;j<=i;j++)
覺得是這樣的,第二個for套在第一個for里面,先執行第一個for,i=9;然后執行第二個for循環,第二個for循環條件不滿足即j>i時跳出循環執行i--,此時i=8滿足i>=1這個循環條件,再去執行第二個for循環,一直這樣循環往復,直到i=0,無法滿足循環條件時循環結束。你可以把第二個for當成第一個for的執行程序。就像for(i=0;i<10;i++){x=x+1;}一樣的程序,第二個for就是{ }內的程序。
i的初始值為9,判斷條件是i>.=1,執行完程序后i=i+1,不滿足循環條件時跳出for循環,不過我覺得你寫錯了吧,這樣下去一定是無限制循環了。下面那個也一樣
舉報
C語言入門視頻教程,帶你進入編程世界的必修課-C語言
2 回答有點小問題不是很懂
1 回答不是很理解這道題
1 回答不是很理解
3 回答有點不理解例題,
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2015-11-15
第二個for循環嵌在第一個for循環里面,要第二個for循環執行好了,才能夠i--,然后繼續執行,這個時候i=8,for循環條件通過,執行第二個for循環,第二個for循環執行跳出以后,再執行i--,這樣循環往復的執行。
第一次i=9
j=1時輸出 ? ?9*1=9
j=2時輸出 ? ?9*2=18
j=3時輸出 ? ?9*3=27
j=4時輸出 ? ?9*4=36
j=5時輸出 ? ?9*5=45
j=6時輸出 ? ?9*6=54
j=7時輸出 ? ?9*7=63
j=8時輸出 ? ?9*8=72
j=9時輸出 ? ?9*9=81
當j=10時循環條件不滿足,第二for循環結束,執行回車換行,i--
第二次 i=8
和上面的類似不過當j=9時循環條件j<=i不滿足,循環結束,回車換行,i--
下面就是一樣的道理,知道i=0不滿足i>=1的循環條件,循環結束。
好啦,差不多就這樣,希望沒有把你繞糊涂
2015-11-15
覺得是這樣的,第二個for套在第一個for里面,先執行第一個for,i=9;然后執行第二個for循環,第二個for循環條件不滿足即j>i時跳出循環執行i--,此時i=8滿足i>=1這個循環條件,再去執行第二個for循環,一直這樣循環往復,直到i=0,無法滿足循環條件時循環結束。你可以把第二個for當成第一個for的執行程序。就像for(i=0;i<10;i++){x=x+1;}一樣的程序,第二個for就是{ }內的程序。
2015-11-14
i的初始值為9,判斷條件是i>.=1,執行完程序后i=i+1,不滿足循環條件時跳出for循環,不過我覺得你寫錯了吧,這樣下去一定是無限制循環了。下面那個也一樣