最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C語言for語句用法詳解

 更新時(shí)間:2015年11月24日 09:16:55   投稿:hebedich  
今天,小編講訴C語言中循環(huán)語句(for)的使用方法,作為示例,以一個(gè)簡單的例子講訴for語法。

首先,這里所提到的類C語言指的是如C、C++、C#和Java等語法和C語言一樣或類似的程序設(shè)計(jì)語言。這些語言中,for語句的語法和執(zhí)行流程都是一樣的。本文將就這一語句的用法進(jìn)行一個(gè)較為深入的討論。

for語句:

復(fù)制代碼 代碼如下:
for (表達(dá)式1;表達(dá)式2;表達(dá)式3)
{
  循環(huán)語句
}

表達(dá)式1 給循環(huán)變量賦初值
表達(dá)式2 為循環(huán)條件
表達(dá)式3 用來修改循環(huán)變量的值,稱為循環(huán)步長。

for語句的執(zhí)行流程:

例:編程計(jì)算:1+2+3+...+99+100的結(jié)果。
這是累加問題,累加問題的通用表達(dá)式為:S = S + T;
其中,S是一個(gè)變量,用來存儲累加最后的結(jié)果,稱之為累加器;T是一個(gè)表達(dá)式,代表每次需要加入累加器的中的值。
累加一般是通過循環(huán)結(jié)構(gòu)實(shí)現(xiàn)的。循環(huán)之前要設(shè)置累加器S的初始值為0。
累加項(xiàng)T可以是很簡單的表達(dá)式,也有可能是一個(gè)通過分析得到的較復(fù)雜的表達(dá)式。

int S = 0;
for (int i = 1; i <= 100; i++)
{
  S = S + i;
}
printf("%d\n",S);

注意:
1)對于已經(jīng)確定是累加算法的題目,首先確定累加項(xiàng)與循環(huán)變量的關(guān)系;
2)然后,考慮第一個(gè)累加項(xiàng)的值是多少,以確定循環(huán)變量的初值;
3)其次,確定最后一個(gè)累加項(xiàng)的值,確定循環(huán)條件;
4)最后,考慮每個(gè)累加項(xiàng)之間的關(guān)系,以確定循環(huán)變量的變化(步長值)。

例:編程計(jì)算S = a + aa + aaa + aaaa + ... 的前n項(xiàng)之和。
例如:如果a = 3,n = 5,則表達(dá)式為:S = 3 + 33 + 333 + 3333 + 33333。

int S = 0;
int t = 0;
for (int i = 0;i < 5;i++ )
{
  t = t * 10 + 3;
  S = S + t;
}
printf("%d\n",S);

累加算法也可以演化為連乘的形式:S = 1 * 2 * 3 * ... * n。
連乘的算法和累加算法相似,循環(huán)體實(shí)現(xiàn)的是S = S * T的形式。需要注意的S的初值不是0,而是要設(shè)為1。
在求連乘時(shí),由于每乘一次結(jié)果增長都非常快,所以應(yīng)該注意是否會出現(xiàn)溢出的問題。

循環(huán)程序設(shè)計(jì)思路:

(1)輸入是什么?用來確定原始值。
(2)輸出是什么?確定應(yīng)該輸出的結(jié)果。
(3)從輸入轉(zhuǎn)換為輸出需要怎樣的步驟,是否需要重復(fù)(確定是否需要使用循環(huán)語句以及循環(huán)語句的內(nèi)容)。
(4)如果需要重復(fù),能否提前預(yù)知重復(fù)的次數(shù)?用來確定使用while、do while、for中的哪種循環(huán)語句。
(5)何時(shí)不再需要重復(fù)?用來確定循環(huán)條件以及循環(huán)體中使循環(huán)條件趨近于0的語句。

例:水仙花數(shù)、四葉玫瑰數(shù)、五角星數(shù)、六位數(shù)的問題。

水仙花數(shù):每位數(shù)字的3次冪之和等于它本身。例:1^3 + 5^3 + 3^3 = 153。
四葉玫瑰數(shù):每位數(shù)字的4次冪之和等于它本身。
五角星數(shù):每位數(shù)字的5次冪之和等于它本身。
六位數(shù):每位數(shù)字的6次冪之和等于它本身。

// 打印出所有的水仙花數(shù)
int i,j,k,n,s;
for(i = 1;i <= 9;i++)
  for(j = 0;j <= 9;j++)
   for(k = 0;k <= 9;k++)
   {
     n = k * k * k + j * j * j + i * i * i;
     s = i * 100 + j * 10 + k;
     if (n == s)
     {
      printf("%d\n",n);
     }
    }
或:
// 打印出所有水仙花數(shù)
    int i,j,k,n,s;
    printf("水仙花數(shù)有:\n");
    for(n = 100;n < 1000;n++)
    {
      i = n / 100;     /*分解出百位*/
      j = n / 10 % 10;   /*分解出十位*/
      k = n % 10;     /*分解出個(gè)位*/
      s = i * i * i + j * j * j + k * k * k;
      if(s == n)
      {
        printf("%d\n",n);
      }
    }

最后我用例子來總結(jié)一下吧! 下面的例子是一個(gè)對1-10這10個(gè)數(shù)求和的例子。

復(fù)制代碼 代碼如下:

int i, sum = 0, num = 10;       // 聲明幾個(gè)變量:i 計(jì)數(shù), sum 存儲最后的總和, num 表示多少個(gè)數(shù),用來控制邊界。
for(i = 1; i <= num; i++)   // for語句包含三個(gè)語句,用;隔開。
{                                     //1設(shè)置初始值,2邊界控制,3通常用來調(diào)整計(jì)數(shù)值。
    sum += i;          // 相當(dāng)于 sum = sum + i; 表示不斷地加i。 {}內(nèi)的語句均為循環(huán)體,用4表示。
}  // for循環(huán)的執(zhí)行順序?yàn)?1-2-4-3-2-4-3-2-4-3-2................直到i > num.這時(shí),將退出循環(huán)。
printf("The sum from 1 to 10 is ", sum);     // 打印輸出sum值。

相關(guān)文章

  • C語言 bind()函數(shù)案例詳解

    C語言 bind()函數(shù)案例詳解

    這篇文章主要介紹了C語言 bind()函數(shù)案例詳解,本篇文章通過簡要的案例,講解了該項(xiàng)技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下
    2021-08-08
  • C++中函數(shù)模板與類模板的簡單使用及區(qū)別介紹

    C++中函數(shù)模板與類模板的簡單使用及區(qū)別介紹

    這篇文章介紹了C++中的模板機(jī)制,包括函數(shù)模板和類模板的概念、語法和實(shí)際應(yīng)用,函數(shù)模板通過類型參數(shù)實(shí)現(xiàn)泛型操作,而類模板允許創(chuàng)建可處理多種數(shù)據(jù)類型的類,文章還討論了模板的關(guān)鍵區(qū)別、注意事項(xiàng)以及它們在實(shí)際編程中的應(yīng)用,感興趣的朋友一起看看吧
    2025-03-03
  • C語言中二級指針解析(指向指針的指針)

    C語言中二級指針解析(指向指針的指針)

    這篇文章主要介紹了C語言中二級指針(指向指針的指針),具有很好的參考價(jià)值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-05-05
  • 詳解C++異常處理三個(gè)重要組成部分

    詳解C++異常處理三個(gè)重要組成部分

    這篇文章主要為大家介紹了C++異常處理的三個(gè)重要組成部分示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-04-04
  • 詳解C++中OpenSSL動態(tài)鏈接庫的使用

    詳解C++中OpenSSL動態(tài)鏈接庫的使用

    這篇文章主要介紹了OpenSSL動態(tài)鏈接庫的使用,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-11-11
  • 用C語言實(shí)現(xiàn)猜數(shù)字游戲

    用C語言實(shí)現(xiàn)猜數(shù)字游戲

    這篇文章主要為大家詳細(xì)介紹了用C語言實(shí)現(xiàn)猜數(shù)字游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-10-10
  • C++?opencv實(shí)現(xiàn)在圖片上畫一條線示例代碼

    C++?opencv實(shí)現(xiàn)在圖片上畫一條線示例代碼

    這篇文章主要為大家介紹了C++?opencv實(shí)現(xiàn)在圖片上畫一條線的示例代碼,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-05-05
  • C語言 while for do while循環(huán)體詳解用法

    C語言 while for do while循環(huán)體詳解用法

    在不少實(shí)際問題中有許多具有規(guī)律性的重復(fù)操作,因此在程序中就需要重復(fù)執(zhí)行某些語句。一組被重復(fù)執(zhí)行的語句稱之為循環(huán)體,能否繼續(xù)重復(fù),決定循環(huán)的終止條件
    2021-10-10
  • c++之time_t和struct tm及時(shí)間戳的正確使用方式

    c++之time_t和struct tm及時(shí)間戳的正確使用方式

    C++中處理時(shí)間的常用數(shù)據(jù)類型有time_t和struct tm,time_t通常用來表示時(shí)間戳,即從1970年1月1日至今的秒數(shù),struct tm是一個(gè)結(jié)構(gòu)體,用來存儲年、月、日、時(shí)、分、秒等信息,時(shí)間戳可以通過gmtime()轉(zhuǎn)換為struct tm類型,反之亦然
    2024-10-10
  • c語言動態(tài)內(nèi)存分配知識點(diǎn)及實(shí)例

    c語言動態(tài)內(nèi)存分配知識點(diǎn)及實(shí)例

    在本篇文章里小編給大家整理的是關(guān)于c語言動態(tài)內(nèi)存分配知識點(diǎn)及實(shí)例,需要的朋友們可以學(xué)習(xí)下。
    2020-03-03

最新評論

安陆市| 永嘉县| 长丰县| 葵青区| 确山县| 晋州市| 申扎县| 佛教| 白朗县| 扶沟县| 昭觉县| 隆安县| 司法| 元朗区| 神农架林区| 沾化县| 许昌县| 玛沁县| 丰城市| 柳林县| 嘉义市| 乐业县| 崇左市| 吐鲁番市| 邢台市| 富蕴县| 新平| 昌江| 玉林市| 侯马市| 黑水县| 连江县| 香河县| 绥芬河市| 安陆市| 焉耆| 泰安市| 天气| 讷河市| 中超| 若羌县|