C語言是面向過程的, 而C++是物件導向的
C和C++的區別:
C是一個結構化語言, 它的重點在於演算法和資料結構。 C程式的設計首要考慮的是如何通過一個過程, 對輸入(或環境條件)進行運算處理得到輸出(或實現過程(事務)控制)。
C++, 首要考慮的是如何構造一個物件模型, 讓這個模型能夠契合與之對應的問題域, 這樣就可以通過獲取物件的狀態資訊得到輸出或實現過程(事務)控制。 所以C與C++的最大區別在於它們的用於解決問題的思想方法不一樣。 之所以說C++比C更先進, 是因為“ 設計這個概念已經被融入到C++之中 ”。
C與C++的最大區別:在於它們的用於解決問題的思想方法不一樣。 之所以說C++比C更先進, 是因為“ 設計這個概念已經被融入到C++之中 ”, 而就語言本身而言, 在C中更多的是演算法的概念。 那麼是不是C就不重要了, 錯!演算法是程式設計的基礎, 好的設計如果沒有好的演算法, 一樣不行。 而且, “C加上好的設計”也能寫出非常好的東西。
如今考慮一個問題, 若是我們想列印一千次”Hello,World!”, 我們該怎樣辦呢?我們是不是得拷貝一千次 printf(“Hello,World!”) 計較機本來就是為體味決那些冗雜的運算而存在的, 程式設計的設計也是如斯。 這節我們來熟悉除了分支構造外的另一個很是重要的構造——輪回構造, 把握了這些語法, 能替我們節約良多的繁瑣工作。
我不是目錄!
1. while輪回構造
2. do_while輪回構造
3. for輪回構造
4. break與continue
5. 輪回的嵌套使用
while輪回構造
我們來熟悉第一個輪回語法——while, 它的構造是如許的。
while(運算式) { 語句體; }
while後面的運算式成效為真的時辰, 就實行語句體, 直到運算式為假的時辰, 才竣事輪回。 我們直接來看實例。
當i不便是10的時辰, 則實行while構造裡面的語句體, 直到i == 10的時辰才退出輪回。
例題:把持while構造反向的列印1~10的數。
do_while輪回
do_while輪回跟while輪回是有血緣關係的, 我們先來體味一下它的語法。
do { 語句體; }while(運算式);
其實跟while也差不多是吧, 那麼它們的區別是什麼?do_while輪回是先實行一次語句體, 再來對運算式停止斷定, 當運算式成效為假的時辰就退出輪回。 我曉得文字很難看得懂, 我們仍是直接上栗子。
while與do-while的區別, do-while在斷定運算式之前, 會先實行一次語句體。
再給一個例子:
for輪回
for輪回構造的特點是——直不雅觀不雅觀。構造如下:
for(運算式1;運算式2;運算式3) { 語句體; }
它等價於下麵的while輪回。
運算式1; while(運算式2) { 語句; 運算式3; }
運算式1和運算式3一樣平常都是賦值運算式,運算式2是斷定的運算式,仍是直接來個例子。
比力一下之前while和do-while的版本,可見for加倍直不雅觀不雅觀、緊湊。
固然你可以把上面的for改成如下的版本 int i = 0; for(;i < 10;i++) { printf("%d ",i); }
到這裡我們已經可以看出來,無論是while、do-while仍是for,它們只是語法構造上的不合,實際上都能實現統一種需求。
break與continue
在進修輪回構造的時辰,經常會有人碰著“死輪回”,死輪回就是永久沒有推出輪回的前提。
近似這些例子就會不竭的列印出”Hello,World!”,第一個可能必要詮釋一下,在C說話中,非零表示真,零表示假。在我們編寫軌範把持到輪回構造的時辰,我們就應該多多注意輪回停止的前提。
上面只是個細節的擴展,我們繼續談重點。如今假設我們碰著這種情形,我們想機關一個死輪回,讓使用者輸入密碼,直到輸入精確才跳出輪回構造,該怎樣實現?
break的浸染,之前我們已經在分支構造中的swtich構造熟悉了。若是放在輪回構造中,它就是直接跳出本身所處的輪回構造。而continue,就是跳到下一次輪回,我們直接來看個例子:把持輪回構造列印1~10的數字,可是不列印其中的數字5。
當實行到if語句裡面的continue時,就直接跳過了下面的printf語句,直接跳過這一次的輪回實行下一次的輪回。
輪回的嵌套
就像上一節說到的,if和else if、swtich平分支構造都是可以嵌套使用的,在輪回構造中也是如許,while、do-while和for都可以按照需求停止嵌套。不外輪回嵌套得越多,軌範的服從就越低。
之前看到C說話經典例題:1、2、3、4個數位能構成若干好多個互不不異且無頻頻數位的三位元數都是若干好多。
關於輪回構造,且則就先寫到這裡,往後若是有必要再繼續填補。若是有什麼錯誤的地方接待匡正,若是有什麼寫得不太好的地方也請多多包容。
這些是C/C++能做的
伺服器開發工程師、人工智慧、雲計算工程師、資訊安全(駭客反駭客)、大資料 、資料平臺、嵌入式工程師、流媒體伺服器、資料控解、影像處理、音訊視頻開發工程師、遊戲伺服器、分散式系統、遊戲輔助等
for輪回
for輪回構造的特點是——直不雅觀不雅觀。構造如下:
for(運算式1;運算式2;運算式3) { 語句體; }
它等價於下麵的while輪回。
運算式1; while(運算式2) { 語句; 運算式3; }
運算式1和運算式3一樣平常都是賦值運算式,運算式2是斷定的運算式,仍是直接來個例子。
比力一下之前while和do-while的版本,可見for加倍直不雅觀不雅觀、緊湊。
固然你可以把上面的for改成如下的版本 int i = 0; for(;i < 10;i++) { printf("%d ",i); }
到這裡我們已經可以看出來,無論是while、do-while仍是for,它們只是語法構造上的不合,實際上都能實現統一種需求。
break與continue
在進修輪回構造的時辰,經常會有人碰著“死輪回”,死輪回就是永久沒有推出輪回的前提。
近似這些例子就會不竭的列印出”Hello,World!”,第一個可能必要詮釋一下,在C說話中,非零表示真,零表示假。在我們編寫軌範把持到輪回構造的時辰,我們就應該多多注意輪回停止的前提。
上面只是個細節的擴展,我們繼續談重點。如今假設我們碰著這種情形,我們想機關一個死輪回,讓使用者輸入密碼,直到輸入精確才跳出輪回構造,該怎樣實現?
break的浸染,之前我們已經在分支構造中的swtich構造熟悉了。若是放在輪回構造中,它就是直接跳出本身所處的輪回構造。而continue,就是跳到下一次輪回,我們直接來看個例子:把持輪回構造列印1~10的數字,可是不列印其中的數字5。
當實行到if語句裡面的continue時,就直接跳過了下面的printf語句,直接跳過這一次的輪回實行下一次的輪回。
輪回的嵌套
就像上一節說到的,if和else if、swtich平分支構造都是可以嵌套使用的,在輪回構造中也是如許,while、do-while和for都可以按照需求停止嵌套。不外輪回嵌套得越多,軌範的服從就越低。
之前看到C說話經典例題:1、2、3、4個數位能構成若干好多個互不不異且無頻頻數位的三位元數都是若干好多。
關於輪回構造,且則就先寫到這裡,往後若是有必要再繼續填補。若是有什麼錯誤的地方接待匡正,若是有什麼寫得不太好的地方也請多多包容。
這些是C/C++能做的
伺服器開發工程師、人工智慧、雲計算工程師、資訊安全(駭客反駭客)、大資料 、資料平臺、嵌入式工程師、流媒體伺服器、資料控解、影像處理、音訊視頻開發工程師、遊戲伺服器、分散式系統、遊戲輔助等