C語(yǔ)言之循環(huán)語(yǔ)句詳細(xì)介紹
前言
C語(yǔ)言中的循環(huán)結(jié)構(gòu)是程序中的一個(gè)基本結(jié)構(gòu)。
循環(huán)結(jié)構(gòu)可以使我們寫(xiě)很少的語(yǔ)句,讓計(jì)算機(jī)反復(fù)執(zhí)行某一過(guò)程。
C語(yǔ)言提供了while語(yǔ)句,do......while語(yǔ)句和for語(yǔ)句,可以組成各種不同形式的循環(huán)結(jié)構(gòu)。
while語(yǔ)句
while語(yǔ)句又稱(chēng)當(dāng)型循環(huán)控制語(yǔ)句
while(表達(dá)式) 語(yǔ)句
表達(dá)式式循環(huán)條件 ,語(yǔ)句是循環(huán)體
當(dāng)表達(dá)式的值為真(非0)時(shí),執(zhí)行循環(huán)體語(yǔ)句,否則終止循環(huán)。其特點(diǎn)是先判斷,再執(zhí)行。
例如:計(jì)算1+2+3+...+100的值
#include<stdio.> int main() { int i,m; i=1; m=0; while(i<=100) { m=m+i; i++; } printf("%d",m); }
表達(dá)式為i<=100,判斷結(jié)果為真(非0),則執(zhí)行循環(huán)?m=m+i;i++;
上述while語(yǔ)句便能輕松實(shí)現(xiàn)多次加法運(yùn)算。
do...while語(yǔ)句
do
語(yǔ)句;
while(表達(dá)式);
其中語(yǔ)句是循環(huán)體,表達(dá)式是循環(huán)條件
先執(zhí)行循環(huán)體語(yǔ)句一次,在判斷表達(dá)式的值,當(dāng)表達(dá)式的值為真(非0),繼續(xù)循環(huán),否則終止循環(huán)。特點(diǎn)先執(zhí)行,再判斷。
例如:計(jì)算1+2+3+...+100的值
#include<stdio.h> int main() { int i,m; i=1; do { m=m+1; i++; }while(i<=100); printf("%d",m); }
do...while語(yǔ)句同樣可以簡(jiǎn)化運(yùn)算。
for語(yǔ)句
for語(yǔ)句相比前面兩個(gè)語(yǔ)句更加使用廣泛,功能更加強(qiáng)大。
for(表達(dá)式1;表達(dá)式2;表達(dá)式3)
語(yǔ)句;
表達(dá)式1一般是賦值表達(dá)式。
表達(dá)式2是循環(huán)條件。
表達(dá)式3是賦值語(yǔ)句。
先執(zhí)行表達(dá)式1,再執(zhí)行表達(dá)式2,若為真(非0),執(zhí)行循環(huán)體,否則終止循環(huán),再執(zhí)行表達(dá)式3,轉(zhuǎn)回表達(dá)式2重復(fù)執(zhí)行。
例如:計(jì)算1+2+3+...+100的值
#include<stdio.h> int main() { int i,m=0; for(i=0;i<=100;i++) { m=m+i; } printf("%d",m); }
相比其他,兩種語(yǔ)言,for語(yǔ)言的簡(jiǎn)練,功能強(qiáng)大讓它廣為使用。
三種語(yǔ)言都有它們的優(yōu)缺點(diǎn),在使用前要思考清楚采用哪種循環(huán)語(yǔ)言,尤其是在使用多重循環(huán)語(yǔ)言時(shí),或者使用鑲嵌結(jié)構(gòu)時(shí),設(shè)定好它們各自的循環(huán)條件,否則可能出現(xiàn)死循環(huán)等異常情況。
結(jié)語(yǔ)
到此這篇關(guān)于C語(yǔ)言之循環(huán)語(yǔ)句詳細(xì)介紹的文章就介紹到這了,更多相關(guān)C語(yǔ)言循環(huán)語(yǔ)句內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
淺析C/C++中的可變參數(shù)與默認(rèn)參數(shù)
C支持可變參數(shù)的函數(shù),這里的意思是C支持函數(shù)帶有可變數(shù)量的參數(shù),最常見(jiàn)的例子就是我們十分熟悉的printf()系列函數(shù)。我們還知道在函數(shù)調(diào)用時(shí)參數(shù)是自右向左壓棧的2013-09-09基于malloc與free函數(shù)的實(shí)現(xiàn)代碼及分析
本篇文章介紹了malloc與free函數(shù)的實(shí)現(xiàn)代碼及分析。需要的朋友參考下2013-05-05Qt中QtWebEngine加載本地網(wǎng)頁(yè)跨域問(wèn)題的總結(jié)
本文主要介紹了Qt中QtWebEngine加載本地網(wǎng)頁(yè)跨域問(wèn)題的總結(jié),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2022-04-04Qt實(shí)戰(zhàn)案例之如何利用QProcess類(lèi)實(shí)現(xiàn)啟動(dòng)進(jìn)程
這篇文章主要介紹了Qt實(shí)戰(zhàn)案例之如何利用QProcess類(lèi)實(shí)現(xiàn)啟動(dòng)進(jìn)程,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-02-02深入linux下遍歷目錄樹(shù)的方法總結(jié)分析
本篇文章是對(duì)linux下遍歷目錄樹(shù)的方法進(jìn)行了詳細(xì)的總結(jié)與分析,需要的朋友參考下2013-05-05select函數(shù)實(shí)現(xiàn)高性能IO多路訪(fǎng)問(wèn)的關(guān)鍵示例深入解析
這篇文章主要為大家介紹了select函數(shù)實(shí)現(xiàn)高性能IO多路訪(fǎng)問(wèn)的關(guān)鍵示例深入解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-09-09