for迴圈感覺是比較有技術含量的乙個知識點,很容易繞暈過去,特別是for迴圈的巢狀語句,總是有種不知道應該怎麼往下看的無措感。但是for迴圈其實還有點意思,特別是在我用它能輸出菱形之後,越發覺得好神奇。
首先總結for的知識點:
格式如下:
for(表示式1;表示式2;表示式3)
語句表示式1:賦初值,只執行一次
表示式2:是迴圈條件表示式,用來判定是否繼續迴圈,在每次只需迴圈前先執行此表示式,決定是否執行迴圈
表示式3:是用來調整迴圈條件的,是在執行完迴圈體後才進行的。
而且for裡面的表示式還可以省略,因為可能前面的值也是個變數,但是分號一定要寫。於是有這些可見for語句比while語句功能強,因為for語句可以給出迴圈條件外,還可以賦初值,是迴圈變數自己增加
#include這段**可以輸出乙個七行的菱形,第一行是乙個,第二行是三個。。。這段**就是for迴圈巢狀的經典**,我認為這段for的巢狀可以這麼看:第四行的for到i開始判斷**,開始往下執行,一開始我也在糾結這個巢狀裡的第乙個迴圈應該怎麼看,我原以為也是在判斷j值的時候也往下執行,進行第三個for語句,然後發現這樣根本不行,糾結好久才知道因為巢狀語句裡的第二個for迴圈不是第乙個for迴圈的巢狀語句,所以不用再往下執行,只需要乙個乙個執行完在往下或者再一次迴圈。雖然有點難理解,但是還是挺實用的在很多類似的題目裡,話說敲出菱形確實挺難得,因為思路有點和計算機不一樣,但是很有趣是真的。執行結果如下:int main( )
for(i=0;i<=2;i++)
return 0;
}
*
********
*****
****
C語言巨集裡 的用法
c 和c 中的巨集 macro 屬於編譯器預處理的範疇,屬於編譯期概念 而非執行期概念 下面對常遇到的巨集的使用問題做了簡單總結。關於 和 define warn if exp do while 0 那麼實際使用中會出現下面所示的替換過程 warn if divider 0 被替換為 do whil...
c語言裡NULL的理解
null一看名字就知道為空,什麼為空呢,而且全是大寫。是不是意味著是個巨集定義呢?如果想到這裡,我相信你離真理不遠了。有些人為什麼犯錯?因為只看到了null這四個字母而已,沒有看到事物的本質,老師在課堂上也只是說空指標,空字串。這樣只會陷入無止境的誤區。如果我這樣定義 define null 0 你...
C語言裡try的用法
c語言裡try是乙個語句或函式。其作用是是丟擲錯誤用。將有可能產生錯誤的語句括在一起,放入try語句塊。如果在try語句塊中發生異常,flashplayer會建立乙個錯誤物件,並將該error物件派發至第乙個可用的catch塊。catch語句塊提供對錯誤的處理。如果沒有try語句,或者try語句沒有...