C語言學什麼?c 學什麼

2022-09-14 13:00:06 字數 1366 閱讀 2691

計算機語言學習的唯一目的是編寫程式,執行得到結果,以解決實際問題。

c語言課程包含的要點有:c語言語法、演算法設計、演算法的計算機表達。

1.演算法是核心

90%的老師都只講授了c語言的語法,99%的初學者只注重c語言語法的學習。實際上c語言的語法是為了實現演算法而設計的。

比如:為了實現數值運算,c規定了數值型別及加減乘除運算法則…

再比如:為了實現非數值處理,c規定了字元型別及運算法則…

再比如:為了批量處理相同型別資料,c定義了陣列型別,迴圈…

再比如:為了把複雜問題簡單化,實現問題的分解,c規定了函式…

結論1:學習計算機語言要從實現演算法的角度理解語法,而不能從語法的角度理解演算法!前者事半功倍,後者事倍功半!

2.語法是工具

語法是工具,語法是說明書。學習c語言應側重語法的使用而不是語法本身。比如:鋤頭、耙頭、揪都是工具,什麼時候使用什麼工具是根據實際問題和經驗來選擇的。

結論2:解決實際問題必須根據演算法選擇語法,單純學習、背誦語法毫無意義!

學習計算機語言必須進行實際問題表達為數學問題的訓練、常見數學問題的演算法訓練、常用演算法表達為程式的訓練。積累什麼時候用迴圈、什麼時候用分支,什麼時候用指標,什麼時候用結構……的經驗。

3.面向過程是特點

什麼是面向過程?面向過程就是面對要解決的實際問題,從問題出發,設計解決問題的步驟(稱為設計演算法),而任何演算法有可以通過3種結構(順序結構、分支機構、迴圈結構)來實現。因此面向過程的程式有稱為結構化程式。

舉例:非線性方程f(x)=0的求根x^3-2x+1=0

1)、搜素法

2)、二分法

3)、牛頓迭代法

1、面向過程與物件導向

面向過程是面對要解決的實際問題,根據問題設計演算法,進一步用程式來實現,這是一種簡單的思維模式,即:就事論事。

物件導向是另一種思維模式,即:注重參與問題解決的物件。

面向過程用鋤頭平地、用耙頭翻土、用揪開溝。面向問題-具體化。

物件導向先不考慮問題細節,先考慮參與問題的物件即:人、工具、土地。人能使用工具,工具能耕作土地,土地能種植莊稼。物件導向-抽象化。

問題:a.光考慮物件能解決實際問題嗎?可以!把具體的實際問題作為該物件的一種能力來處理。

b.是不是把問題搞複雜了?如果只是乙個程式,是增加了**量,但類一旦設計好,其他程式可以使用,如果還需特殊的具體功能,可以在原有基礎上增加(派生)。實現**重用。

2、設計演算法與設計類

面向過程的重點是設計演算法

物件導向的重點是設計類,當然在類的某些功能上要設計演算法。

3、c++的主要內容

物件導向的重點是設計類,所以c++是圍繞類的而設計語法的,當然在類的某些功能上要演算法的實現仍使用c的語法規則。

要站在設計類的高度來學習,積累體驗和經驗。

C語言學習

前言 兩個原因促使我寫下這篇文章,第一就是作為過來人根據我自己的經驗我知道程式設計的初學者一般都很興奮也都有種困惑,一方面對執行在計算機 注 不特別指明都指個人微型計算機 的五花八門如精彩的遊戲程式,多姿多彩的 等等漂亮的視窗程式所著迷,另一方面大部分的初學者 如計算機專業的低年級學生 都是從簡單命...

C語言和C 有什麼區別

c語言是結構化和模組化的面向過程的語言,c 語言是物件導向的程式語言。c 語言是c語言的超集,也就是說學會了c 你其實已經把c語言學會了。至於說有什麼區別,應該說是程式設計思想的區別吧,c是基於過程的,強調的是程式的功能,以函式 功能 為中心。c 是物件導向的,強調程式的分層 分類,以抽象為基礎,進...

學C語言者必看

學c 語言者必看,看了還不過的你砸我。c語言總複習 總體上必須清楚的 1 程式結構是三種 順序結構,迴圈結構 三個迴圈結構 選擇結構 if 和 switch 2 讀程式都要從main 入口,然後從最上面順序往下讀 碰到迴圈做迴圈,碰到選擇做選擇 3 計算機的資料在電腦中儲存是以二進位制的形式.資料存...