【C語言】C語言成長之路之入門級(jí)C語言思維導(dǎo)圖的建立???-創(chuàng)新互聯(lián)

今日小詩:

創(chuàng)新互聯(lián)公司的客戶來自各行各業(yè),為了共同目標(biāo),我們?cè)诠ぷ魃厦芮信浜希瑥膭?chuàng)業(yè)型小企業(yè)到企事業(yè)單位,感謝他們對(duì)我們的要求,感謝他們從不同領(lǐng)域給我們帶來的挑戰(zhàn),讓我們激情的團(tuán)隊(duì)有機(jī)會(huì)用頭腦與智慧不斷的給客戶帶來驚喜。專業(yè)領(lǐng)域包括成都網(wǎng)站制作、成都網(wǎng)站建設(shè)、電商網(wǎng)站開發(fā)、微信營銷、系統(tǒng)平臺(tái)開發(fā)。

? ? ? ? 🍀?《我曾七次鄙視自己的靈魂》🍀

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?作者:?紀(jì)伯倫

第一次,當(dāng)它本可進(jìn)取時(shí),卻故作謙卑;

第二次,當(dāng)它在空虛時(shí),用愛欲來填充;

第三次,在困難和容易之間,它選擇了容易;

第四次,它犯了錯(cuò),卻借由別人也會(huì)犯錯(cuò)來寬慰自己;

第五次,它因?yàn)檐浫醵套專瑓s堅(jiān)稱為自己的堅(jiān)韌時(shí);

第六次,當(dāng)它鄙夷一張丑惡的嘴臉時(shí),卻不知那正是自己面具中的一副;

第七次,當(dāng)它側(cè)身于生活的污泥中,雖不甘心,卻又畏首畏尾。

?從這篇文章開始,小獅子會(huì)不定地在今后的文章中加入一些分享小詩的模塊,分享最近小獅子讀過的一些小詩,希望大家在學(xué)習(xí)編程的同時(shí)也不要失去對(duì)自己品格的修養(yǎng)和對(duì)生活的熱愛,謝謝大家能看我的文章!💕

???大家好!今天小獅子為大家?guī)砹艘黄P(guān)于我最近完成的C語言基礎(chǔ)知識(shí)梳理的文章。經(jīng)過兩個(gè)月的初階C語言學(xué)習(xí),小獅子終于擺脫了看C語言代碼就兩眼一黑的狀態(tài),也算是小有所成,所以在這篇博客中記錄我的成長的同時(shí),也算為大家梳理一下初階C語言的知識(shí)點(diǎn),希望大家能夠喜歡。

? 小獅子這里將初階的C語言學(xué)習(xí)分為這六個(gè)模塊:數(shù)據(jù)類型、分支與循環(huán)、函數(shù)、初級(jí)指針、表達(dá)式相關(guān)、編碼及調(diào)試。

7f36d7f8487d4d1b9ddc531ed29db9cf.png

一、數(shù)據(jù)類型

思維導(dǎo)圖:

1c2cf48a100249ff8d62f2f9cd276f9f.png

?我將C語言中的數(shù)據(jù)類型模塊分為這幾個(gè)部分,接下來我們一個(gè)個(gè)來聊初階C語言中的數(shù)據(jù)類型相關(guān)知識(shí)。

1. C語言中的基礎(chǔ)數(shù)據(jù)類型

254789cc58e14c64af4d3376630b557a.png

?基礎(chǔ)的數(shù)據(jù)類型大致有這些分類,其中主要分為整型,浮點(diǎn)型,字符型三大類數(shù)據(jù)類型。

?1)整型數(shù)據(jù)以 int 類型為本,可以在 int 類型前加上 long short unsigned 這些前綴作為修飾,改變整型數(shù)據(jù)表示數(shù)的范圍。這些用于修飾整型的前綴被稱為類型說明符,分別說明整型的長度和符號(hào)。

整型符號(hào)相關(guān):

0e55f20a336a48cb95e0627bf54092c6.png

?2)浮點(diǎn)數(shù)與整型數(shù)據(jù)的存儲(chǔ)方式不太相同,它用于表示小數(shù)(浮點(diǎn)數(shù))。

2. 自定義數(shù)據(jù)類型

cf4e96eb9b0b428aa4dbd4d4b8cf7d2a.png

?C語言中的自定義數(shù)據(jù)類型共有以上的幾種,這里初階C語言主要是介紹前兩種自定義數(shù)據(jù)類型:數(shù)組、結(jié)構(gòu)體。

1)數(shù)組?

思維導(dǎo)圖:

723aa90f6d6040cc8413ff3653823952.png

?數(shù)組就是一種由許多同類型元素從低地址到高地址排列產(chǎn)生的集合類型,可以固定它的大小也可以在初始化的時(shí)候輸入所有元素以確定數(shù)組大小。

數(shù)組名本質(zhì)上是一個(gè)指向數(shù)組首元素的指針,通過數(shù)組名,我們可以訪問數(shù)組中的各個(gè)元素。

int arr1[50] = { 1,2,3,4,5 };
	//這種初始化確定了數(shù)組的元素個(gè)數(shù)為50個(gè),初始化了前五個(gè)元素
	int arr2[] = { 1,2,3,4,5 };
	//這種初始化數(shù)組的方式使數(shù)組元素?cái)?shù)量固定為輸入時(shí)的元素個(gè)數(shù)
	char str1[100] = "Hello world!";
	//字符串?dāng)?shù)組的初始化,會(huì)直接在后方加上'\0',數(shù)組大小的固定方式與上述相同
	char str2[] = "Hello world!";

2)結(jié)構(gòu)體

思維導(dǎo)圖:0e3a25897f634c9d993f327424f575af.png

? 初階C語言中我們對(duì)于結(jié)構(gòu)體的研究較少,我們只需要知道一些初級(jí)的知識(shí)就ok,例如結(jié)構(gòu)體聲明的關(guān)鍵字 struct,結(jié)構(gòu)體的定義與初始化及對(duì)結(jié)構(gòu)體成員的訪問。

3)枚舉類型和聯(lián)合體類型

?這兩種類型在初階C語言中比較少見,在后續(xù)的進(jìn)階C語言中將會(huì)與大家一起學(xué)習(xí)這兩種自定義類型的相關(guān)知識(shí)。

2.與打印函數(shù)printf有關(guān)的知識(shí)

思維導(dǎo)圖:

061be9b4ca3c4775a3ae48f4a6f5abca.png

C語言中常用的轉(zhuǎn)換說明有以下這些:

cbcf7f238ec340b8a2d7e5bdfedcacfc.png

轉(zhuǎn)義序列:

5bc53ece9cfa4557a0df97095b8d5627.png

3.進(jìn)制前后綴

5fed449c6d7542549679b1145ae3b714.png

4.內(nèi)存存儲(chǔ)的有關(guān)知識(shí)

1)數(shù)據(jù)的存儲(chǔ)形式

a0409356107941ceb88b2b10cceb481a.png

?整數(shù)在內(nèi)存中的存儲(chǔ)形式都為二進(jìn)制補(bǔ)碼。,原、反、補(bǔ)碼的相關(guān)知識(shí):

9ea8f7560187485daef4cb522b898a0e.png

?內(nèi)存大小的單位轉(zhuǎn)化如下:

217e440d67704dfeb017b949d9fda9c4.png

2)數(shù)據(jù)被存儲(chǔ)于被編號(hào)的內(nèi)存單元中

?我們對(duì)每個(gè)最小內(nèi)存單元(一個(gè)字節(jié))進(jìn)行編號(hào),這些編號(hào)即為地址,那么每個(gè)地址就管理一個(gè)字節(jié)大小的內(nèi)存空間。

?在32位平臺(tái)上地址由32位的二進(jìn)制數(shù)表示,對(duì)應(yīng)著32根分別表現(xiàn)高低電平兩種狀態(tài)的電線,這些電線整合表現(xiàn)出的電信號(hào)可以讓我們尋址對(duì)應(yīng)的內(nèi)存單元,并訪問其中的數(shù)據(jù)。

二、分支和循環(huán)結(jié)構(gòu)

1.分支結(jié)構(gòu)

分支結(jié)構(gòu)有兩種,分別為 if else 結(jié)構(gòu)和switch結(jié)構(gòu),思維導(dǎo)圖:

a85813d62ffa4d21a7b977c62976611f.png

1)if else結(jié)構(gòu)

c031ba67bf9c41e09e02a902078ca291.png

?if else結(jié)構(gòu)適用于少分支的分支結(jié)構(gòu),且分支內(nèi)的操作可以很精細(xì),它的大致語法結(jié)構(gòu)為:

c1a30c7a16ac4f8c91968fc6002595b3.png

2)switch?結(jié)構(gòu)

bd03bcd61369467e9c5a2fdb3516c217.png

switch?語句的大致結(jié)構(gòu)(參考):

5b6271d83e314c8d9481ccdadbc3a930.png

switch語句中的關(guān)鍵字:

9a2f3e2194394f6a98a204069dfe9963.png

switch語句的基本運(yùn)行機(jī)制:

? 以在臨近switch的括號(hào)中的表達(dá)式的值作為分支條件,找到關(guān)鍵字case或者default之后的與表達(dá)式的值相等的整型數(shù)值后,一直向下運(yùn)行語句直到遇到關(guān)鍵字break才停止。

注意事項(xiàng),良好的代碼風(fēng)格:

?由于switch結(jié)構(gòu)的運(yùn)行方式,在我們的每個(gè)分支對(duì)應(yīng)的結(jié)果后應(yīng)該記得加上 break 關(guān)鍵字以結(jié)束switch結(jié)構(gòu),這樣不僅可以減少程序錯(cuò)誤,也能使我們的程序更加美觀,提升我們程序的可讀性。

2.循環(huán)結(jié)構(gòu)

思維導(dǎo)圖:

9ab5af6344744158855a49bd78399c5d.png

1)while循環(huán)

ceb6218c978344d795f7c23973aaeb81.png

while循環(huán)的語法結(jié)構(gòu):

69c0aac9a2354207a7e76a08e1b91cd1.png

2)for循環(huán)

?for循環(huán)將while循環(huán)中的初始化語句、判斷語句和循環(huán)表達(dá)式的自增自減部分單獨(dú)挑出來,使得循環(huán)結(jié)構(gòu)更加清晰分明。

語法結(jié)構(gòu):

4e188c439385490f99fba424f2b9f35a.png

運(yùn)行流程圖:

1d0f28ec110346cd8305facc529243fe.png

?for循環(huán)的特點(diǎn):比while語句更加簡潔靈活,即把循環(huán)的主體與判斷部分分離開,使代碼更加清晰可觀。

3)do……while循環(huán)

語法結(jié)構(gòu):

3093e7242e7e4a51b79eb9d334f8339e.png

do……while語句和while語句類似,但是先執(zhí)行循環(huán)語句再判斷循環(huán)的條件。

三、C語言中的函數(shù)

? 函數(shù)又被稱為子程序,子程序是一個(gè)大型程序中的某部分代碼,由一個(gè)或者多個(gè)語句塊組成,用于完成特定的功能,具有一定的獨(dú)立性。

a2102f4948a34cc79e3a9f97e8d2a06a.png

1.C語言中的庫函數(shù)

?C語言的基礎(chǔ)庫中提供了一些功能常用的庫函數(shù)來提高可移植性和程序效率,使用這些庫函數(shù)需要在代碼的開頭引入相應(yīng)的頭文件。

2.自定義函數(shù)

cea634e292724ab19082b45b2d06b238.png

1)自定義函數(shù)的定義和組成:

b38c36af012a45c5af0c58cf128d2ead.png

2)函數(shù)的定義與聲明

ae922ccc448e4a678c70941246334b43.png

3)函數(shù)的嵌套調(diào)用和鏈?zhǔn)皆L問

dce52702a91c476ebc57c9f7aa43d323.png

4)自定義函數(shù)的傳參

實(shí)參與形參:

59317fd7a6a0446c9bf83e3aacc05f23.png

傳值調(diào)用和傳址調(diào)用:

668df8047fc649eb976c2099007bdda3.png

5)函數(shù)的遞歸

a141e2b4ddb040cc8bc53160afc223fc.png

?經(jīng)典的可用函數(shù)遞歸解決的問題:漢諾塔問題、斐波那契數(shù)列……,可以把函數(shù)的遞歸也看作循環(huán),它們十分相似。

四、表達(dá)式相關(guān)知識(shí)

思維導(dǎo)圖:

4adce670ebe54fb194a3cf4000bcad3c.png

1.運(yùn)算符

?運(yùn)算符在我之前的博客中詳細(xì)講過,這邊是傳送門哦:

(7條消息) 【C語言】C語言成長之路之關(guān)于C語言的操作符以及一些表達(dá)式的講解(?? ??)._MO_lion的博客-博客

2.運(yùn)算符的性質(zhì)

?運(yùn)算符的性質(zhì)大概有這三種:優(yōu)先級(jí)、結(jié)合方向、是否控制求值順序。

?優(yōu)先級(jí)表以及結(jié)合方向:操作符屬性,???,

?是否控制求值順序:總共有三個(gè)操作符控制求值順序,分別是:邏輯或?||,邏輯與 &&,逗號(hào)表達(dá)式。

3.隱式類型轉(zhuǎn)換

?隱式類型轉(zhuǎn)換分為整型提升和算術(shù)轉(zhuǎn)換。

1)整型提升

?C語言的整型算數(shù)運(yùn)算總是以缺省整形類型的精度進(jìn)行的,所以大小低于int的數(shù)據(jù)類型在進(jìn)行算數(shù)運(yùn)算或者更高位的打印時(shí)都會(huì)發(fā)生截?cái)嗪驼吞嵘?/p>

?截?cái)啵哼\(yùn)算完成或原補(bǔ)碼轉(zhuǎn)換后保留該數(shù)據(jù)類型對(duì)應(yīng)的位數(shù)

?整型提升:將類型大小小于int的變量對(duì)應(yīng)的二進(jìn)制補(bǔ)碼的位數(shù)提升至32位;提升方式:無符號(hào)類型直接在前面全部補(bǔ)零,有符號(hào)類型按照該變量的補(bǔ)碼最高位是零補(bǔ)零,是一補(bǔ)一。

2)算術(shù)轉(zhuǎn)換

?在進(jìn)行表達(dá)式運(yùn)算時(shí)操作符兩邊的數(shù)據(jù)類型不相同時(shí)就會(huì)發(fā)生算術(shù)轉(zhuǎn)換,算術(shù)轉(zhuǎn)換的優(yōu)先級(jí)為以下排名,低排位的會(huì)轉(zhuǎn)化為高排位的類型進(jìn)行運(yùn)算。

2f1453c554634cc29a8857f0e41d7862.png

五、初級(jí)指針

思維導(dǎo)圖:

f44af910dcab41208bc1547759b33924.png

?初階指針的內(nèi)容在我之前的博客中也有提到,感興趣的小伙伴可以在這里看哦~:(9條消息) 【C語言】C語言成長之路之指針初階 .( ?)_MO_lion的博客-博客

六、編碼及調(diào)試

思維導(dǎo)圖:

0bca944926c4427086db92ff75d1f722.png

一些編碼問題:

2ea06dc8d5924a04a96761ea59810032.png

調(diào)試相關(guān):

4ca0e90a0bad494faa8420118cf874f1.png

?編碼和調(diào)試是我們?cè)诔蹼AC語言中非常重要的基礎(chǔ)訓(xùn)練,鍛煉我們的代碼能力,提升我們對(duì)于知識(shí)的理解,希望大家在學(xué)習(xí)C語言的時(shí)候都能多練習(xí)代碼,在學(xué)習(xí)理論知識(shí)的同時(shí),代碼能力也不能落下哦(?????)。

?溫馨提示(給剛學(xué)習(xí)C語言知識(shí)的朋友):在剛開始學(xué)習(xí)C語言時(shí),大家都是一樣的,只要堅(jiān)持不懈不放棄地去學(xué),去練,你的水平一定會(huì)得到提高的!

🍀結(jié)語

?最后,是小獅子每篇文章都會(huì)有的結(jié)語部分,基礎(chǔ)C語言的模塊我和大家一起學(xué)習(xí),攻克了許多難關(guān),希望在將來我們也能有初學(xué)這些知識(shí)的初心,無論是什么艱難險(xiǎn)阻,我們都有勇氣去面對(duì),去克服。

?生活中也是一樣,總有許多不好的事試圖將我們的生活染上灰色,但是幸好我們的生活中也有許多閃閃發(fā)光的東西,給我們勇氣和力量,也許是心中的理想,又或者是令人溫暖的人性之美……

?相信陽光,我們終將翻越漫長的陰霾,到達(dá)那美好的彼岸,謝謝大家*?( ??? )?*

你是否還在尋找穩(wěn)定的海外服務(wù)器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機(jī)房具備T級(jí)流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確流量調(diào)度確保服務(wù)器高可用性,企業(yè)級(jí)服務(wù)器適合批量采購,新人活動(dòng)首月15元起,快前往官網(wǎng)查看詳情吧

當(dāng)前名稱:【C語言】C語言成長之路之入門級(jí)C語言思維導(dǎo)圖的建立???-創(chuàng)新互聯(lián)
轉(zhuǎn)載源于:http://bm7419.com/article42/gdoec.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供企業(yè)網(wǎng)站制作、靜態(tài)網(wǎng)站、定制開發(fā)、虛擬主機(jī)營銷型網(wǎng)站建設(shè)、電子商務(wù)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

商城網(wǎng)站建設(shè)