C語言入門學習和書籍推薦
1、C語言適合當第一門程式語言學習
①、C語言語法相對簡單,但又比較完整和嚴謹,包含該有的各種元素。學完C語言語法,要學習其它程式語言就很容易了。
②、C語言接近底層,可以瞭解記憶體和計算機的基本原理。
③、許多基礎課程比如演算法與資料結構教材都是以C語言為例子的,特別是中國版的書籍。
如果你是大一剛開始學習程式設計,建議選擇C語言做入門。
2、C語言學習的步驟
學習語法和基礎演算法 —> 瞭解C語言應用領域 —> 確定是否從事C語言相關工作 —> 深入學習基礎課程 —> 學習領域相關的課程
3、C語言語法學習
①、書籍推薦:
推薦《C程式設計語言》和 習題解答
如果上面書籍看不懂,可以選擇下面兩本之一。
②、學習建議
視訊結合書籍,把書籍上的程式碼都一個個自己敲出來執行,做到每段小程式都熟悉記憶。
不要一直在那邊背語法,多寫程式碼,多演化程式碼,驗證語法。
建議以Linux為學習環境,掌握Linux下的相關工具,比如GCC
③、驗證結果
《C程式設計語言:習題解答》裡面的題目不用看書可以自己敲打實現出來就差不多了。
可以用計算機等級考試二級(C語言)的歷年試題驗證學習結果。也可以自己報名考看看,以95分做目標。
④、進階學習
可以先跳過這個,看看是否從事C語言相關工作,如果是的話,再來看這個。
語法進階書籍推薦:
邏輯思維進階
南開大學C語言100題,自己實現程式碼並驗證。繼續進階,可以刷OJ
4、C語言應用領域
是不是有些同學學完C語法後都不知道做什麼專案。因為單純學會C語法開發不了什麼專案,你需要掌握C語言應用領域,然後學習周邊相關知識。
相對於PHP、Java,C語言的開發效率較低,沒有框架甚至沒有庫。資料結構要自己寫,對作業系統底層要很熟悉,程式碼很容易出現記憶體相關的錯誤。
C語言主要用於驅動開發、作業系統、核心開發,嵌入式(微控制器)、交換機、路由器等網路裝置的開發。
如果你想要會用C語言開發專案,就需要掌握相關領域知識。
5、方向選擇
學完語法和了解C語言應用領域後,就要面臨著選擇。三個方向:①、選擇從事C語言相關的工作;②、選擇繼續學習C++,C++主要應用領域遊戲服務端開發、圖形影象、C/S客戶端介面開發、中介軟體;③、選擇其它方向的學習,比如Java
6、深入學習基礎課程
選擇從事C語言相關的工作,就需要深入學習基礎課程。因為從事C語言相關工作,往往對效能有要求,需要理解作業系統和計算機組成原理。
以下課程在從事C語言相關工作是應該要掌握的:
《演算法與資料結構》
《計算機組織與體系結構》
《編譯原理》
《作業系統原理》
有能力的可以學習《Linux核心結構》
具體每個基礎課程的學習就不展開了,以後談。學習書籍建議,可以參考清華北大計算機系相關課程指定的教程。
7、學習領域相關的課程
這個就比較廣泛,根據希望從事的領域有選擇性學習。比如,你想從事嵌入式開發,那你就要學習 嵌入式作業系統等
8、專案實踐
學完理論,找專案嘗試練習。
哪裡找專案呢?
①、找培訓教程,別人培訓班的實踐題目或者看網上培訓教程的實踐題目
②、找高年級或老師幫忙佈置實踐題目
③、通過Google、GitHub等程式猿社群,去找找實踐題目
…
找到題目後,看看自己一個人或者組織幾個人能不能搞定。如果搞不定,再根據所缺的知識去補充知識。