C語言的分支和循環(huán)語句你了解嗎
1、什么是語句?
C語句可分為以下五類:
- 表達(dá)式語句
- 函數(shù)調(diào)用語句
- 控制語句
- 復(fù)合語句
- 空語句
控制語句用于控制程序的執(zhí)行流程,以實(shí)現(xiàn)程序的各種結(jié)構(gòu)方式,它們由特定的語句定義符組成,C語言有九種控制語句。
可分成以下三類:
1. 條件判斷語句也叫分支語句:if語句、switch語句;
2. 循環(huán)執(zhí)行語句:do while語句、while語句、for語句;
3. 轉(zhuǎn)向語句:break語句、goto語句、continue語句、return語句。
2、分支語句(選擇結(jié)構(gòu))
2.1、if語句
語法結(jié)構(gòu):
//單分支 if(表達(dá)式) 語句; if(表達(dá)式) 語句1; else 語句2; //多分支 if(表達(dá)式1) 語句1; else if(表達(dá)式2) 語句2; else 語句3;
else的匹配:else是和它離的最近的if匹配的。
2.2、switch語句
switch是一種多分支語句
switch(整型表達(dá)式) { case 整形常量表達(dá)式: 語句; }
2.2.1、switch語句中的break
switch語句需要搭配break才能實(shí)現(xiàn)真正的分支
#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; }
當(dāng)需要:
1. 輸入1-5,輸出的是“weekday”;
2. 輸入6-7,輸出“weekend”
所以我們的代碼就應(yīng)該這樣實(shí)現(xiàn)了:
#include <stdio.h> //switch代碼演示 int main() { int day = 0; switch(day) { case 1: case 2: case 3: case 4: case 5: printf("weekday\n"); break; case 6: case 7: printf("weekend\n"); break; } return 0; }
break語句 的實(shí)際效果是把語句列表劃分為不同的分支部分。
編程好習(xí)慣
在最后一個 case 語句的后面加上一條 break語句。(之所以這么寫是可以避免出現(xiàn)在以前的最后一個 case 語句后面忘了添加 break語句)。
2.2.2default子句
當(dāng)所有case條件都不滿足時就會執(zhí)行default語句
3、循環(huán)語句
3.1、while循環(huán)
while 語法結(jié)構(gòu)
while(表達(dá)式) 循環(huán)語句;
while語句執(zhí)行的流程:
在屏幕上打印0-10的數(shù)字。
#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
:跳出整個循環(huán)
continue
:跳過一次循環(huán)
3.2、for循環(huán)
3.2.1、語法
for(表達(dá)式1; 表達(dá)式2; 表達(dá)式3) 循環(huán)語句;
表達(dá)式1
表達(dá)式1為初始化部分,用于初始化循環(huán)變量的。
表達(dá)式2
表達(dá)式2為條件判斷部分,用于判斷循環(huán)時候終止。
表達(dá)式3
表達(dá)式3為調(diào)整部分,用于循環(huán)條件的調(diào)整。
for循環(huán)的執(zhí)行流程
3.2.2、break和continue在for循環(huán)中
與while循環(huán)相同
3.2.3、for語句的循環(huán)控制變量
1、不要在循環(huán)體內(nèi)修改循環(huán)變量防止死循環(huán)
2、采用前閉后開區(qū)間寫法
for(i=0;i<10;i++) {}
3.2.4、for循環(huán)的變種
#include <stdio.h> int main() { for(;;) { printf("hehe\n"); } //for循環(huán)中的初始化部分,判斷部分,調(diào)整部分是可以省略的,但是不建議初學(xué)時省略,容易導(dǎo)致問 題。 return 0; }
3.3do…while()循環(huán)
3.3.1、語法
do 循環(huán)語句; while(表達(dá)式);
3.3.2、執(zhí)行流程
3.3.3、 do語句的特點(diǎn)
先執(zhí)行一次循環(huán)體
3.3.4、break和continue
同for循環(huán)
4、goto語句
語法格式:
again: goto again;
使用場景:
跳出多層循環(huán)
總結(jié)
本篇文章就到這里了,希望能夠給你帶來幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!
相關(guān)文章
Qt圖形圖像開發(fā)之QT滾動區(qū)控件(滾動條)QScrollArea的詳細(xì)方法用法圖解與實(shí)例
這篇文章主要介紹了Qt圖形圖像開發(fā),QT滾動區(qū)控件(滾動條)QScrollArea的詳細(xì)方法用法圖解與實(shí)例,需要的朋友可以參考下2020-03-03C語言strlen和sizeof在數(shù)組中的使用詳解
對于 strlen 和 sizeof,相信不少程序員會混淆其功能。雖然從表面上看它們都可以求字符串的長度,但二者卻存在著許多不同之處及本質(zhì)區(qū)別2021-10-10詳解Qt中的雙緩沖機(jī)制與實(shí)例應(yīng)用
所謂雙緩沖機(jī)制,是指在繪制控件時,首先將要繪制的內(nèi)容繪制在一個圖片中,再將圖片一次性地繪制到控件上。本文主要為大家介紹了Qt中的雙緩沖機(jī)制與實(shí)例應(yīng)用,希望對大家有所幫助2023-03-03使用C/C++讀取matlab中.mat格式數(shù)據(jù)的操作
這篇文章給大家介紹了使用C/C++讀取matlab中.mat格式數(shù)據(jù)的操作,文中通過圖文結(jié)合的方式介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作有一定的幫助,需要的朋友可以參考下2023-12-12