循環結構程序設計


本節內容:  

  while循環

  do-while循環

  for循環

  循環中的嵌套

  循環中的break和continue

第一節 while語句(超過上萬次的成為死循環)

    while(表達式)

      語句;(循環體)

執行過程:首先判斷表達式的值,如果為真,就執行循環體,執行后再次判斷表達式的值,如果為真就再執行,再判斷,直到表達式的值為假,就退出循環。

 

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

注意:先定義再賦值 

int i,sum;

i=1;sum=0;

同時定義和賦值 

int i=1,sum=0;

使用while語句注意一下幾點:

1)while語句中的表達式一般是關系表達式或者邏輯表達式,只要表達式的值(常量或者變量)非0即可繼續循環。

2)循環體如果包含一個以上的語句,則必須用{}擴起來,組成符合語句。

第二節 do-while循環一般形式如下:

  do

    語句:(至少執行一次)

    while(循環條件);

執行過程:·首先無條件的執行循環體1次,然后判斷表達式的值,如果為真,在執行循環體,再判斷,再執行,直到表達式的值為假,退出循環。

第三節 for循環一般形式如下:

   for (初值表達式;結束條件;循環表達式)

       {

        語句1;

     ·   語句2;

        ...

        語句n;

       }

       語句b;

       ....

執行過程:首先執行表達式1,然后判斷表達式2的值,如果為真,就執行循環體,執行后執行表達式3,然后再判斷表達式的2,如果為真,再執行,再判斷,直到表達式2為假退出循環。

注意:

1)for循環中的“表達式1”(循環變量賦初值),表達式(循環條件),和表達式3(循環變量增值)都是選擇項,即可以缺省,“;”不能缺省。

2)表達式1和表達式3都是一個簡單的表達式也可以是逗號表達式。

即for(sum=0,i=1;i<=100;i++)

      sum=sum+1;

或者for(i=0,j=100;i<=100;j++,i++)k=i+j;

3)表達2一般是關系表達式或者邏輯表達式,但也可以是數值表達式或者字符表達式,只要非0就執行循環體。

總結:while和do-while循環一般用於條件比較明顯的循環(字符串處理),而for循環通常是循環次數比較明顯的循環(數字處理)。

#include<stdio.h>
mian()
{
int i=0;
for(i=0,prinitf("A");i<9&&printf("B");i++,printf("C\n"))
{
printf("循環體");
}
printf("循環結束");

getchar();

}

九九乘法表:

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

 

 循環嵌套

 for (表達式;條件1;表達式)
    {          
       代碼段;//可以沒有
      for (表達式;條件2;表達式)
          {          
           代碼段;//可以沒有
           for (表達式;條件3;表達式)
           {          
             代碼段;//可以沒有
              ....
           }
         }
    }
----------------------------------------------------------------------------
while(條件)
{
  代碼段;//可以沒有
  while(條件)
    {
       代碼段;//可以沒有
      while(條件)
      {
       代碼段;//可以沒有
       ..........       
      }
    }
 
}
-------------------------------------------------------------------------
while(條件)
{
  代碼段;//可以沒有
  for(表達式;條件;表達式)
    {
       代碼段;//可以沒有
      while(條件)
      {
       代碼段;//可以沒有
       ..........       
      }
    }
 
}  

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM