C語言的分支和循環(huán)語句你了解嗎
1、什么是語句?
C語句可分為以下五類:
- 表達式語句
- 函數(shù)調(diào)用語句
- 控制語句
- 復合語句
- 空語句
控制語句用于控制程序的執(zhí)行流程,以實現(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(表達式) 語句; 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才能實現(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; }
當需要:
1. 輸入1-5,輸出的是“weekday”;
2. 輸入6-7,輸出“weekend”
所以我們的代碼就應該這樣實現(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語句 的實際效果是把語句列表劃分為不同的分支部分。
編程好習慣
在最后一個 case 語句的后面加上一條 break語句。(之所以這么寫是可以避免出現(xiàn)在以前的最后一個 case 語句后面忘了添加 break語句)。
2.2.2default子句
當所有case條件都不滿足時就會執(zhí)行default語句
3、循環(huán)語句
3.1、while循環(huán)
while 語法結(jié)構(gòu)
while(表達式) 循環(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(表達式1; 表達式2; 表達式3) 循環(huán)語句;
表達式1
表達式1為初始化部分,用于初始化循環(huán)變量的。
表達式2
表達式2為條件判斷部分,用于判斷循環(huán)時候終止。
表達式3
表達式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)整部分是可以省略的,但是不建議初學時省略,容易導致問 題。 return 0; }
3.3do…while()循環(huán)
3.3.1、語法
do 循環(huán)語句; while(表達式);
3.3.2、執(zhí)行流程
3.3.3、 do語句的特點
先執(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的詳細方法用法圖解與實例
這篇文章主要介紹了Qt圖形圖像開發(fā),QT滾動區(qū)控件(滾動條)QScrollArea的詳細方法用法圖解與實例,需要的朋友可以參考下2020-03-03C語言strlen和sizeof在數(shù)組中的使用詳解
對于 strlen 和 sizeof,相信不少程序員會混淆其功能。雖然從表面上看它們都可以求字符串的長度,但二者卻存在著許多不同之處及本質(zhì)區(qū)別2021-10-10使用C/C++讀取matlab中.mat格式數(shù)據(jù)的操作
這篇文章給大家介紹了使用C/C++讀取matlab中.mat格式數(shù)據(jù)的操作,文中通過圖文結(jié)合的方式介紹的非常詳細,對大家的學習或工作有一定的幫助,需要的朋友可以參考下2023-12-12