1. <nobr id="easjo"><address id="easjo"></address></nobr>

      <track id="easjo"><source id="easjo"></source></track>
      1. 
        

      2. <bdo id="easjo"><optgroup id="easjo"></optgroup></bdo>
      3. <track id="easjo"><source id="easjo"><em id="easjo"></em></source></track><option id="easjo"><span id="easjo"><em id="easjo"></em></span></option>
          貴州做網站公司
          貴州做網站公司~專業!靠譜!
          10年網站模板開發經驗,熟悉國內外開源網站程序,包括DEDECMS,WordPress,ZBlog,Discuz! 等網站程序,可為您提供網站建設,網站克隆,仿站,網頁設計,網站制作,網站推廣優化等服務。我們專注高端營銷型網站,企業官網,集團官網,自適應網站,手機網站,網絡營銷,網站優化,網站服務器環境搭建以及托管運維等。為客戶提供一站式網站解決方案?。?!

          for循環語句(C語言中for循環語句的用法)

          來源:互聯網轉載 時間:2024-05-12 11:57:00

          for循環是編程語言中一種開界的循環語句,而循環語句由循環體及循環的終止條件兩部分組成,for循環其在各種編程語言中的實現與表達有所出入,但基本為以C語言和pascal語言代表的兩種形式。

          for 循環語句的一般形式為:

          for (表達式1; 表達式2; 表達式3){        語句;}

          首先要強調兩點:

          1) 表達式1、表達式2和表達式3之間是用分號;隔開的,千萬不要寫成逗號。

          2) for(表達式1;表達式2;表達式3)的后面千萬不要加分號,很多新手都會犯這種錯誤——會情不自禁地在后面加分號。

          因為 for 循環只能控制到其后的一條語句,而在C語言中分號也是一個語句——空語句。所以如果在后面加個分號,那么 for 循環就只能控制到這個分號,下面大括號里面的語句就不屬于for循環了。

          下面來看看它的執行過程:

          • 求解表達式1。

          • 求解表達式2。若其值為真,則執行for語句中指定的內嵌語句,然后執行第3步;若表達式2值為假,則結束循環,轉到第5步。

          • 求解表達式3。

          • 轉回上面第2步繼續執行。

          • 循環結束,執行 for 語句下面的語句。

          從這個執行過程中可以看出,“表達式1”只執行一次,循環是在“表達式2”“表達式3”和“內嵌語句”之間進行的。

          for語句最簡單的形式是:

          for (循環變量賦初值; 循環條件; 循環變量增值){    語句;}

          C語言的四種運行模型(箭頭表示循環方向):

          (1)三角基本模型:

          例子:

          (2)中間循環體被省略得只剩下";"空語句時的左右往返模型:

          條件表達式?末尾循環體

          例子:

          (3)末尾循環體被省略后的上下往返模型:

          條件表達式

          ↓↑

          中間循環體

          (4)條件表達式被省略得只剩下";"空語句時,中間循環體或末尾循環體帶有跳出語句時的模型

          看完上面四個模型后,你會發現其實它的完成的都是同一個問題,但可以寫成這么多種模型,當然了,這只是省略其中一個語句的模型,你也可以仿照著侵略得只剩下一個語句都可以,前提是不要搞成死循環!

          下面給大家寫一個程序,求 1+2+3+4+…+100 的總和。

          # include <stdio.h>int main(void){    int i;    int sum = 0;  //sum的英文意思是“總和”    for (i=1; i<=100; ++i)  //++是自加的意思, ++i相當于i = i + 1    {        sum = sum + i;  /*等價于sum += i;但是不建議這么寫, 因為sum = sum + i看起來更清楚、更舒服*/    }    printf("sum = %d\n", sum);    return 0;}

          輸出結果是:

          sum = 5050

          這個程序的功能是實現求 1+2+3+4+…+100 的和,如果不用循環,加一次就要一條語句,加 100 次就要 100 條語句。這里是從 1 加到 100,要是從 1 加到 10000 那就要 10000 條語句。但有了循環就很方便了,你想加到多少就加到多少,只要改一個參數就可以了。所以循環很重要。

          下面按照執行過程看看上面這個程序是怎樣執行的。

          1、首先定義一個循環變量 i。定義的時候可以不給它賦初值,在 for 循環里面再給它賦初值也行。但前面說過,最好在定義變量的時候就對它進行初始化,如果值不確定就初始化為 0。所以程序中也可以在定義 i 的時候就給它賦初值,那么 for 循環里的“表達式1”就可以省略了,但分號不可以省略。

          這樣的話,執行的時候就跳過第1步,直接進入第2步,其他的不變。所以程序也可以像下面這樣寫:

          # include <stdio.h>int main(void){    int i = 1;    int sum = 0;    for (; i<=100; ++i)    {        sum = sum + i;    }    printf("sum = %d\n", sum);    return 0;}

          當然表達式1加上也行,大不了再重新賦一次值。

          2、然后定義一個用來存放“和”的變量 sum,并給它賦初值 0,然后進入 for 循環:

          • 首先求解表達式1,即給變量i賦初值,i=1;表達式1只執行這一次,下面都不會再執行了。

          • 然后求解表達式2,若 1<=100 成立,則執行 for 循環中的內嵌語句,即 sum=0+1。

          • 然后執行第3步,變量 i 自加 1,即變量 i 由 1 變為 2。

          • 然后再求解表達式2,2<=100 成立,則執行 for 循環中的內嵌語句,sum=0+1+2。

          • 然后再執行第3步,變量 i 自加 1,即變量 i 由 2 變為 3。

          • 然后再求解表達式2,即 3<=100 成立,則執行 for 循環中的內嵌語句,sum=0+1+2+3。

          • ……

          就這樣一直循環下去,直到 ++i 等于 100 的時候,求解表達式2,即 100<=100 成立,則執行 for 循環中的內嵌語句,sum=0+1+2+3+…+100。

          然后再執行第3步,變量 i 自加 1,即變量 i 由 100 變為 101。然后再求解表達式2,即 101<=100 不成立,則結束循環,執行 for 循環下面的語句即 printf。

          以上就是這個程序的執行過程。關于 for 語句的代碼規范化問題,有兩點要再跟大家強調一下:

          1)if、else、for、while、do 都只能控制到其后的一條語句,如果要控制多條語句必須加大括號{}。但基于代碼規范化,if、else、for、while、do 后面的執行語句不論有多少行,就算只有一行也要加{}。

          2) 像 if、for、while 等關鍵字之后應留一個空格再跟左括號(,以突出關鍵字。

          此外上面的程序還有一個知識點要跟大家說一下:從功能上講,for(i=1; i<=100;++i)完全可以寫成for(i=1; i<101; ++i),而且建議大家盡量使用這種寫法。也就是說,循環語句的循環條件盡量寫成半開半閉的,不管是 for 循環還是 while 循環。

          for(i=1; i<101; ++i)實際上是 1≤i<101,是半開半閉的;而for(i=1; i<=100; ++i)實際上是 1≤i≤100,是全閉的。那么為什么建議使用半開半閉的呢?因為如果寫成 i<=100 的話,那么每次判斷的時候都要判斷兩次,即 i<100 和 i==100,而寫成 i<101 的話每次只需要判斷一次。

          下面再給大家寫一個程序,求 1 到 100 之間所有奇數的和。

          # include <stdio.h>int main(void){    int i;    int sum = 0 ;    for (i=1; i<100; i+=2)  //i+=2;等價于i = i + 2;    {        sum = sum + i;    }    printf("sum = %d\n", sum);    return 0;}

          輸出結果是:

          sum = 2500

          上述就是小編為大家分享的C語言中for循環語句的用法了,如果您也有類似的疑惑,不妨礙參照上述分析進行理解。如果想了解更多相關內容,請關注本站行業資訊。

          標簽:for循環語句-

          c語言中正確的字符常量是用一對單引號將一個字符括起表示合法的字符常量。例如‘a’。數值包括整型、浮點型。整型可用十進制,八進制,十六進制。八進制前面要加0,后面...

          2022年天津專場考試原定于3月19日舉行,受疫情影響確定延期,但目前延期后的考試時間推遲。 符合報名條件的考生,須在規定時間登錄招考資訊網(www.zha...

          :喜歡聽,樂意看。指很受歡迎?!巴卣官Y料”喜聞樂見:[ xǐ wén lè jiàn ]詳細解釋1. 【解釋】:喜歡聽,樂意看。指很受歡迎。2. 【示例】:這是...

          京東金條怎么開通?1、想要成功開通京東金條,需要先開通京東白條,因為只有白條用戶才有資格申請,其次個人征信必須良好,不能有任何不良信用記錄,小白信用分越高,越容易申請。2、正常使用京東白條兩個月以上,留在京東的收貨地址、手機號,不要經常更改,綁定自己的QQ號,還可以在京東金融多購買理財產品,證明自己的還款實力。這樣能夠提高自己的綜合資質,去申請京東金條更容易通過審批。新開戶京東金條有額度嗎?用戶的...

          購買的基金如何撤回?基金認購、申購、出和變換交易在成交前可撤單;假如已過交易截止時間,能夠在下一基金交易日17: 00前申請辦理撤單。只需基金公司都還沒開展市場份額確定就可以撤銷,但要是紀開展市場份額確定了,就不可以撤銷了?;鹎耙惶熨I入第二天可以撤單嗎?若投資者是在前一天下午3點前買入的,那么第二天不能撤銷,撤銷只能在交易日下午3點前進行,若投資者是在前一天下午3點后買入的,那么第二天可以撤銷,...

          金磚四國就是指俄羅斯、巴西、中國以及印度四個新起的國家,這四個國家有望在未來可以替代七國集團,進而變成世界最大經濟體。金磚四國,英語名為BRICs,各自為巴西(Brazil) 、俄羅斯(Russia) 、印度(India) 以及中國(China)英文名字前的首字母大寫而構成,又因為英文的發音神似英語單詞“Brics",有關新聞媒體將這四個國家又稱作金磚四國。以上就是金磚四國是...

          TOP
          国产初高中生视频在线观看|亚洲一区中文|久久亚洲欧美国产精品|黄色网站入口免费进人
          1. <nobr id="easjo"><address id="easjo"></address></nobr>

              <track id="easjo"><source id="easjo"></source></track>
              1. 
                

              2. <bdo id="easjo"><optgroup id="easjo"></optgroup></bdo>
              3. <track id="easjo"><source id="easjo"><em id="easjo"></em></source></track><option id="easjo"><span id="easjo"><em id="easjo"></em></span></option>