首頁 > 軟體

C語言的分支和迴圈語句你瞭解嗎

2022-02-08 19:00:06

1、什麼是語句?

C語句可分為以下五類:

  • 表示式語句
  • 函數呼叫語句
  • 控制語句
  • 複合語句
  • 空語句

控制語句用於控制程式的執行流程,以實現程式的各種結構方式,它們由特定的語句定義符組成,C語言有九種控制語句。

可分成以下三類:

1. 條件判斷語句也叫分支語句:if語句、switch語句;

2. 迴圈執行語句:do while語句、while語句、for語句;

3. 轉向語句:break語句、goto語句、continue語句、return語句。

2、分支語句(選擇結構)

2.1、if語句

語法結構:

//單分支
    if(表示式)
       語句;
 
 
    if(表示式)
       語句1;
    else
       語句2;
 
//多分支    
    if(表示式1)
       語句1;
    else if(表示式2)
       語句2;
    else
       語句3;

else的匹配:else是和它離的最近的if匹配的。

2.2、switch語句

switch是一種多分支語句

switch(整型表示式)
{
   case 整形常數表示式:
    語句;
}

2.2.1、switch語句中的break

switch語句需要搭配break才能實現真正的分支

#include <stdio.h> 
int main() 
{    
    int day = 0;    
    switch(day)   
    {        
        case 1:            
            printf("星期一n");
            break;        
        case 2:            
            printf("星期二n");
            break;
        case 3:
            printf("星期三n");
            break;            
        case 4:
            printf("星期四n");
            break;            
        case 5:
            printf("星期五n");
            break;        
        case 6:
            printf("星期六n");
            break;
        case 7:
            printf("星期天n");
            break;
    }
    return 0;
}

當需要:

1. 輸入1-5,輸出的是“weekday”;

2. 輸入6-7,輸出“weekend”

所以我們的程式碼就應該這樣實現了:

#include <stdio.h> //switch程式碼演示 
int main() 
{    
    int day = 0;
    switch(day)
    {
        case 1:
        case 2:
        case 3:        
        case 4:
        case 5:
            printf("weekdayn");
            break;
        case 6:
        case 7:
            printf("weekendn");
            break;
   }
   return 0;
}

break語句 的實際效果是把語句列表劃分為不同的分支部分。

程式設計好習慣

在最後一個 case 語句的後面加上一條 break語句。(之所以這麼寫是可以避免出現在以前的最後一個 case 語句後面忘了新增 break語句)。

2.2.2default子句

當所有case條件都不滿足時就會執行default語句

3、迴圈語句

3.1、while迴圈

while 語法結構

while(表示式)
    迴圈語句;

while語句執行的流程:

在螢幕上列印0-10的數位。

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

3.1.1while中的break和continue

break:跳出整個迴圈

continue:跳過一次迴圈

3.2、for迴圈

3.2.1、語法

for(表示式1; 表示式2; 表示式3)
 
    迴圈語句;

表示式1

表示式1為初始化部分,用於初始化迴圈變數的。

表示式2

表示式2為條件判斷部分,用於判斷迴圈時候終止。

表示式3

表示式3為調整部分,用於迴圈條件的調整。

for迴圈的執行流程

3.2.2、break和continue在for迴圈中

與while迴圈相同

3.2.3、for語句的迴圈控制變數

1、不要在迴圈體內修改迴圈變數防止死迴圈

2、採用前閉後開區間寫法

for(i=0;i<10;i++) 
{}

3.2.4、for迴圈的變種

#include <stdio.h> 
int main() 
{ 
    for(;;) 
    { 
        printf("hehen"); 
    }    
    //for迴圈中的初始化部分,判斷部分,調整部分是可以省略的,但是不建議初學時省略,容易導致問 題。     return 0; 
}

3.3do…while()迴圈

3.3.1、語法

do
    迴圈語句;
while(表示式);

3.3.2、執行流程

3.3.3、 do語句的特點

先執行一次迴圈體

3.3.4、break和continue

同for迴圈

4、goto語句

語法格式:

again:
 
goto again;

使用場景:

跳出多層迴圈

總結

本篇文章就到這裡了,希望能夠給你帶來幫助,也希望您能夠多多關注it145.com的更多內容!    


IT145.com E-mail:sddin#qq.com