C語言編程學(xué)習(xí)程序解析:控制語句之while循環(huán)語句詳解

C語言是面向過程的,而C++是面向?qū)ο蟮?/p>

C和C++的區(qū)別:

C是一個(gè)結(jié)構(gòu)化語言,它的重點(diǎn)在于算法和數(shù)據(jù)結(jié)構(gòu)。C程序的設(shè)計(jì)首要考慮的是如何通過一個(gè)過程,對(duì)輸入(或環(huán)境條件)進(jìn)行運(yùn)算處理得到輸出(或?qū)崿F(xiàn)過程(事務(wù))控制)。

C++,首要考慮的是如何構(gòu)造一個(gè)對(duì)象模型,讓這個(gè)模型能夠契合與之對(duì)應(yīng)的問題域,這樣就可以通過獲取對(duì)象的狀態(tài)信息得到輸出或?qū)崿F(xiàn)過程(事務(wù))控制。 所以C與C++的最大區(qū)別在于它們的用于解決問題的思想方法不一樣。之所以說C++比C更先進(jìn),是因?yàn)椤?設(shè)計(jì)這個(gè)概念已經(jīng)被融入到C++之中 ”。

C與C++的最大區(qū)別:在于它們的用于解決問題的思想方法不一樣。之所以說C++比C更先進(jìn),是因?yàn)椤?設(shè)計(jì)這個(gè)概念已經(jīng)被融入到C++之中 ”,而就語言本身而言,在C中更多的是算法的概念。那么是不是C就不重要了,錯(cuò)!算法是程序設(shè)計(jì)的基礎(chǔ),好的設(shè)計(jì)如果沒有好的算法,一樣不行。而且,“C加上好的設(shè)計(jì)”也能寫出非常好的東西。

在上一篇C語言編程學(xué)習(xí)程序解析:控制語句之if/else語句詳解文章中講解了for循環(huán)語句,其中提到for語句與while語句只是表達(dá)方式的不同,二者可以相互轉(zhuǎn)換。

while語句嚴(yán)格來講包括while語句和do-while語句。二者有細(xì)微的差別。

先來看while語句,其語法格式是:

while(循環(huán)條件){

//代碼塊

}

如果循環(huán)條件為真,則執(zhí)行代碼塊中的代碼;否則結(jié)束while循環(huán)。流程圖如下:

小編推薦一個(gè)學(xué)C語言/C++的學(xué)習(xí)裙【 七三零,一三零,二二一 】,無論你是大牛還是小白,是想轉(zhuǎn)行還是想入行都可以來了解一起進(jìn)步一起學(xué)習(xí)!裙內(nèi)有開發(fā)工具,很多干貨和技術(shù)資料分享!

我們還以上一篇文章C語言編程學(xué)習(xí)程序解析:控制語句之if/else語句詳解中計(jì)算1~100之間整數(shù)值的和為例,現(xiàn)在用while語句實(shí)現(xiàn)這一功能:

#include

int main(){

int sum = 0;

int i = 1; //循環(huán)變量賦初值

while (i <= 100){ //循環(huán)條件

sum = sum + i;

i = i + 1; //改變循環(huán)變量值

}

printf("the sum of 1 to 100 is : %d ", sum);

return 0;

}

發(fā)現(xiàn)了吧,while語句也是包含類似for語句的三個(gè)表達(dá)式:循環(huán)變量賦初值,循環(huán)條件,改變循環(huán)變量。正因?yàn)榇?,我才說while語句與for語句只是表達(dá)方式不同,二者可以相互轉(zhuǎn)換。

上述代碼放入visualstudio中運(yùn)行,會(huì)得到與for語句相同的結(jié)果。

那么,do-while語句有什么不同之處呢?

先來看一看do-while語句的語法:

do{

//代碼

}while(循環(huán)條件);

與while語句唯一不同就是:do-while語句會(huì)先執(zhí)行代碼塊,再判斷循環(huán)條件。也就是說while語句如果一開始循環(huán)條件為假,就會(huì)直接結(jié)束while循環(huán),不會(huì)執(zhí)行代碼塊中的代碼,而do-while語句不論什么條件都會(huì)至少執(zhí)行一次代碼塊中的代碼。

用do-while實(shí)現(xiàn)1~100之間整數(shù)值的和:

#include

int main(){

int sum = 0;int i = 1;

do{

sum = sum + i;

i = i + 1;

} while (i <= 100);

printf("the sum of 1 to 100 is : %d ", sum);

return 0;

}

小編推薦一個(gè)學(xué)C語言/C++的學(xué)習(xí)裙【 七三零,一三零,二二一 】,無論你是大牛還是小白,是想轉(zhuǎn)行還是想入行都可以來了解一起進(jìn)步一起學(xué)習(xí)!裙內(nèi)有開發(fā)工具,很多干貨和技術(shù)資料分享!

C語言的三種循環(huán)語句for,while和do-while,三者沒有本質(zhì)的區(qū)別,大家可以根據(jù)個(gè)人習(xí)慣和待解決問題的實(shí)際情況靈活選擇。

最后,能正確解決問題的代碼就是好代碼!

這些是C/C++能做的

服務(wù)器開發(fā)工程師、人工智能、云計(jì)算工程師、信息安全(黑客反黑客)、大數(shù)據(jù) 、數(shù)據(jù)平臺(tái)、嵌入式工程師、流媒體服務(wù)器、數(shù)據(jù)控解、圖像處理、音頻視頻開發(fā)工程師、游戲服務(wù)器、分布式系統(tǒng)、游戲輔助等

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 第1章 第一個(gè)C程序第2章 C語言基礎(chǔ)第3章 變量和數(shù)據(jù)類型第4章 順序結(jié)構(gòu)程序設(shè)計(jì)第5章 條件結(jié)構(gòu)程序設(shè)計(jì)第6章...
    小獅子365閱讀 10,869評(píng)論 3 71
  • 循環(huán)結(jié)構(gòu):在給定條件成立時(shí),反復(fù)執(zhí)行某程序段,直到條件不成立為止。給定的條件稱為循環(huán)條件, 反復(fù)執(zhí)行的程序段稱為循...
    Eric_Hunter閱讀 1,304評(píng)論 0 1
  • [ ] 自信 [ ] 一個(gè)健美的體魄和一顆堅(jiān)強(qiáng)的心 [ ] 有主見 [ ] 一本有效私人護(hù)照和一張不會(huì)被拒簽的臉 ...
    孤月瑾心閱讀 303評(píng)論 0 1
  • 最期待的事,往往不會(huì)在期待中發(fā)生———深夜食堂 最近看了看深夜食堂,也許很多人都在吐槽,但是我還是很喜歡看,也許是...
    第八族閱讀 317評(píng)論 0 0
  • 有一天約我去跑步,但是當(dāng)時(shí)和姐姐看電影,就放了他鴿子。他好像有點(diǎn)生氣,電影快結(jié)束的時(shí)候,他問我還在看?我說是,他說...
    小鹿砰砰閱讀 325評(píng)論 0 0

友情鏈接更多精彩內(nèi)容