看了就知道为什么别人C语言学习效率那么高了
談及C語言,我想C語言功能強(qiáng)大都應(yīng)該知道、應(yīng)用廣泛,一旦掌握了后,你就可以理直氣壯地對他人說“我是電腦高手!”,而且以后若是再自學(xué)其他語言就顯得輕而易舉了。憂慮的是,C語言般博大精深,太難學(xué)了。其實就筆者認(rèn)為C語言并非是“difficult(困難)”的,只要你能理清思路,掌握它的精髓,配合一套教材。那么學(xué)C語言是一件非常容易且又其樂無窮的事。今天本人就與大家一起談?wù)勅绾螌W(xué)習(xí)C語言或者說學(xué)習(xí)C語言應(yīng)從哪幾方面著手。
了解一些基本知識
一.C語言的背景
就個人感觸,無論學(xué)習(xí)哪門語言首先應(yīng)該了解一下自己所學(xué)語言的背景,也可以說它的發(fā)展史。
C語言屬于高級程序語言的一種,它的前身是“ALGOL”。其創(chuàng)始人是布朗·W·卡尼漢和丹尼斯·M·利奇。C語言問世時是帶有很大的局限性,因為它只能用于UNIX系統(tǒng)上。然而隨著科學(xué)技術(shù)的進(jìn)步,計算機(jī)工業(yè)的發(fā)展,C語言逐漸脫離UNIX。1987年美國標(biāo)準(zhǔn)化協(xié)會制定了C語言的國際標(biāo)準(zhǔn),簡稱“ANSI C”,從此以后它便成為一種廣泛使用的程序語言。C語言的優(yōu)點很多,主要的有如下四點:
1.兼?zhèn)涓呒壵Z言與低級語言的優(yōu)點,屬于一種中間語言。
2.它是一種結(jié)構(gòu)化程序設(shè)計語言,非常適合結(jié)構(gòu)化程序設(shè)計。
3.有較豐富的數(shù)據(jù)類型、運算符以及函數(shù)供以選用。
4.直接與內(nèi)存打交道,使修改、編輯其他程序與文檔變得輕松,簡單。
二.二大語系二種不同的學(xué)習(xí)方法
筆者學(xué)習(xí)過很多程序語言,例如:C,C++(C語言的擴(kuò)展),QBASIC,VB(BASIC的可視化),javascript,JSCRIPT ,VBSCRIPT,JAVA,ASP,FOXPRO,PERL等等,就本人實踐所得,其實高級程序語言分為兩大語系。一路是以C為主的程序語言,例如:javascript,JAVA等,這類語言在函數(shù)的調(diào)用,程序語句的書寫,循環(huán)的控制都極為相似。另一路是以BASIC為首的程序語言,例如:FOXPRO,VBSCRIPT等,此類語言同樣具有相似的函數(shù)調(diào)用,程序語句書寫以及循環(huán)控制,但與C語系是不同的。因此若是您以前是從QBASIC起家的,那么在學(xué)習(xí)C語言前最好是先洗洗腦,千萬不要把學(xué)習(xí)BASIC的方法以及思路用在C身上。
講到這里,我想大家對C語言一定有了感性認(rèn)識吧!下面讓我們再升華一下,全方位親密接觸它。學(xué)習(xí)C語言必須從以下四點入手,也就是說,只要你能掌握這四點的內(nèi)容,那么基本上就大功告成了。
1、入門后多看代碼
在有一定基礎(chǔ)以后一定要多看別人的代碼。 注意代碼中的算法和數(shù)據(jù)結(jié)構(gòu)。 畢竟學(xué)C之后的關(guān)口就是算法和數(shù)據(jù)結(jié)構(gòu)。提到數(shù)據(jù)結(jié)構(gòu),指針是其中重要的一環(huán),絕大多數(shù)的數(shù)據(jù)結(jié)構(gòu)是建立在指針之上的,如鏈表、隊列、樹、圖等等,所以只有學(xué)好指針才能真正學(xué)好C。別的方面也要關(guān)注一下,諸如變量的命名、庫函數(shù)的用法等等。有些庫函數(shù)是經(jīng)常用到的。對于這些函數(shù)的用法就要牢牢記住。
2、要自己動手
編程序是個實干的活,光說不練不行。剛開始學(xué)的時候可以多練習(xí)書上的習(xí)題。 對于自己不明白的地方,自己編個小程序?qū)嶒炓幌率亲詈玫姆椒?#xff0c;能給自己留下深刻的印象。 自己動手的過程中要不斷糾正自己不好的編程習(xí)慣和認(rèn)識錯誤。有一定的基礎(chǔ)以后可以嘗試編一點小游戲,照著編作為練習(xí)。基礎(chǔ)很扎實的時候,可以編一些關(guān)于數(shù)據(jù)結(jié)構(gòu)方面的東西。之后.....學(xué)匯編、硬件知識。
3、選擇一個好的編譯器
GCC或者VS都是一個號的選擇
想要一起學(xué)習(xí)C++的可以加群815393895,群內(nèi)有各種資料滿足大家
4、關(guān)于養(yǎng)成良好的編程習(xí)慣
(1) 在比較復(fù)雜的
談及C語言,我想C語言功能強(qiáng)大都應(yīng)該知道、應(yīng)用廣泛,一旦掌握了后,你就可以理直氣壯地對他人說“我是電腦高手!”,而且以后若是再自學(xué)其他語言就顯得輕而易舉了。憂慮的是,C語言般博大精深,太難學(xué)了。其實就筆者認(rèn)為C語言并非是“difficult(困難)”的,只要你能理清思路,掌握它的精髓,配合一套教材。那么學(xué)C語言是一件非常容易且又其樂無窮的事。今天本人就與大家一起談?wù)勅绾螌W(xué)習(xí)C語言或者說學(xué)習(xí)C語言應(yīng)從哪幾方面著手。
了解一些基本知識
一.C語言的背景
就個人感觸,無論學(xué)習(xí)哪門語言首先應(yīng)該了解一下自己所學(xué)語言的背景,也可以說它的發(fā)展史。
C語言屬于高級程序語言的一種,它的前身是“ALGOL”。其創(chuàng)始人是布朗·W·卡尼漢和丹尼斯·M·利奇。C語言問世時是帶有很大的局限性,因為它只能用于UNIX系統(tǒng)上。然而隨著科學(xué)技術(shù)的進(jìn)步,計算機(jī)工業(yè)的發(fā)展,C語言逐漸脫離UNIX。1987年美國標(biāo)準(zhǔn)化協(xié)會制定了C語言的國際標(biāo)準(zhǔn),簡稱“ANSI C”,從此以后它便成為一種廣泛使用的程序語言。C語言的優(yōu)點很多,主要的有如下四點:
1.兼?zhèn)涓呒壵Z言與低級語言的優(yōu)點,屬于一種中間語言。
2.它是一種結(jié)構(gòu)化程序設(shè)計語言,非常適合結(jié)構(gòu)化程序設(shè)計。
3.有較豐富的數(shù)據(jù)類型、運算符以及函數(shù)供以選用。
4.直接與內(nèi)存打交道,使修改、編輯其他程序與文檔變得輕松,簡單。
二.二大語系二種不同的學(xué)習(xí)方法
筆者學(xué)習(xí)過很多程序語言,例如:C,C++(C語言的擴(kuò)展),QBASIC,VB(BASIC的可視化),javascript,JSCRIPT ,VBSCRIPT,JAVA,ASP,FOXPRO,PERL等等,就本人實踐所得,其實高級程序語言分為兩大語系。一路是以C為主的程序語言,例如:javascript,JAVA等,這類語言在函數(shù)的調(diào)用,程序語句的書寫,循環(huán)的控制都極為相似。另一路是以BASIC為首的程序語言,例如:FOXPRO,VBSCRIPT等,此類語言同樣具有相似的函數(shù)調(diào)用,程序語句書寫以及循環(huán)控制,但與C語系是不同的。因此若是您以前是從QBASIC起家的,那么在學(xué)習(xí)C語言前最好是先洗洗腦,千萬不要把學(xué)習(xí)BASIC的方法以及思路用在C身上。
講到這里,我想大家對C語言一定有了感性認(rèn)識吧!下面讓我們再升華一下,全方位親密接觸它。學(xué)習(xí)C語言必須從以下四點入手,也就是說,只要你能掌握這四點的內(nèi)容,那么基本上就大功告成了。
想要一起學(xué)習(xí)C++的可以加群815393895,群內(nèi)有各種資料滿足大家
1、入門后多看代碼
在有一定基礎(chǔ)以后一定要多看別人的代碼。 注意代碼中的算法和數(shù)據(jù)結(jié)構(gòu)。 畢竟學(xué)C之后的關(guān)口就是算法和數(shù)據(jù)結(jié)構(gòu)。提到數(shù)據(jù)結(jié)構(gòu),指針是其中重要的一環(huán),絕大多數(shù)的數(shù)據(jù)結(jié)構(gòu)是建立在指針之上的,如鏈表、隊列、樹、圖等等,所以只有學(xué)好指針才能真正學(xué)好C。別的方面也要關(guān)注一下,諸如變量的命名、庫函數(shù)的用法等等。有些庫函數(shù)是經(jīng)常用到的。對于這些函數(shù)的用法就要牢牢記住。
2、要自己動手
編程序是個實干的活,光說不練不行。剛開始學(xué)的時候可以多練習(xí)書上的習(xí)題。 對于自己不明白的地方,自己編個小程序?qū)嶒炓幌率亲詈玫姆椒?#xff0c;能給自己留下深刻的印象。 自己動手的過程中要不斷糾正自己不好的編程習(xí)慣和認(rèn)識錯誤。有一定的基礎(chǔ)以后可以嘗試編一點小游戲,照著編作為練習(xí)。基礎(chǔ)很扎實的時候,可以編一些關(guān)于數(shù)據(jù)結(jié)構(gòu)方面的東西。之后.....學(xué)匯編、硬件知識。
3、選擇一個好的編譯器
GCC或者VS都是一個號的選擇
4、關(guān)于養(yǎng)成良好的編程習(xí)慣
(1) 在比較復(fù)雜的代碼后面要有注釋。 如果光溜溜一堆代碼,別人就不可能看懂你的代碼,而且也不利于查找錯誤。除非你一直編東西給自己看。能在代碼里說明白的就一定要在代碼里體現(xiàn)。比如變量名、函數(shù)名,在命名的時候盡量說明是干什么用的。
(2)注意語句的嵌套不能過長,一般來說,一段代碼里Tab要少于8個。 簡單說就是語句最多8個嵌套。 對于新手來說,這個標(biāo)準(zhǔn)還要下降。有一個好習(xí)慣是,把主函數(shù)盡量寫簡短。經(jīng)常看到別人的代碼是主函數(shù)只有幾行,幾個函數(shù)調(diào)用,而定義全在主函數(shù)外部。這樣一是減少了主函數(shù)內(nèi)部的嵌套,二是比較精簡,容易讀懂。
(3)注意語句的選擇。并不是分支語句就用if循環(huán)就用while、for。在適當(dāng)?shù)那闆r下switch和do while語句也是要用的。在某些時候,switch語句比if語句更加精練明了,而do while比while少一個循環(huán)。
很多人對學(xué)習(xí)C語言感到無從下手,經(jīng)常問我同一個問題:究竟怎樣學(xué)習(xí)C語言?我是一個教師,已經(jīng)開發(fā)了很多年的程序,和很多剛剛起步的人一樣,學(xué)習(xí)的第一個計算機(jī)語言就是C語言。經(jīng)過這些年的開發(fā),我深深的體會到C語言對于一個程序設(shè)計人員多么的重要,如果不懂C語言,你想寫底層程序這幾乎聽起來很可笑,不懂C語言,你想寫出優(yōu)秀高效的程序,這簡直就是天方夜譚。為什么C語言如此重要呢?
第一:C語言語法結(jié)構(gòu)很簡潔精妙,寫出的程序也很高效,很便于描述算法,大多數(shù)的程序員愿意使用C語言去描述算法本身,所以,如果你想在程序設(shè)計方面有所建樹,就必須去學(xué)它。
第二:C語言能夠讓你深入系統(tǒng)底層,你知道的操作系統(tǒng),哪一個不是C語言寫的?所有的windows,Unix,Linux,Mac,os/2,沒有一個里外的,如果你不懂C語言,怎么可能深入到這些操作系統(tǒng)當(dāng)中去呢?更不要說你去寫它們的內(nèi)核程序了。
第三:很多新型的語言都是衍生自C語言,C++,Java,C#,J#,perl...哪個不是呢?掌握了C語言,可以說你就掌握了很多門語言,經(jīng)過簡單的學(xué)習(xí),你就可以用這些新型的語言去開發(fā)了,這個再一次驗證了C語言是程序設(shè)計的重要基礎(chǔ)。還有啊,多說一點:即使現(xiàn)在招聘程序員,很多考試都是考C語言,你想加入it行業(yè),那么就一定要掌握好C語言。
想要一起學(xué)習(xí)C++的可以加群815393895,群內(nèi)有各種資料滿足大家
代碼后面要有注釋。 如果光溜溜一堆代碼,別人就不可能看懂你的代碼,而且也不利于查找錯誤。除非你一直編東西給自己看。能在代碼里說明白的就一定要在代碼里體現(xiàn)。比如變量名、函數(shù)名,在命名的時候盡量說明是干什么用的。
(2)注意語句的嵌套不能過長,一般來說,一段代碼里Tab要少于8個。 簡單說就是語句最多8個嵌套。 對于新手來說,這個標(biāo)準(zhǔn)還要下降。有一個好習(xí)慣是,把主函數(shù)盡量寫簡短。經(jīng)常看到別人的代碼是主函數(shù)只有幾行,幾個函數(shù)調(diào)用,而定義全在主函數(shù)外部。這樣一是減少了主函數(shù)內(nèi)部的嵌套,二是比較精簡,容易讀懂。
(3)注意語句的選擇。并不是分支語句就用if循環(huán)就用while、for。在適當(dāng)?shù)那闆r下switch和do while語句也是要用的。在某些時候,switch語句比if語句更加精練明了,而do while比while少一個循環(huán)。
很多人對學(xué)習(xí)C語言感到無從下手,經(jīng)常問我同一個問題:究竟怎樣學(xué)習(xí)C語言?我是一個教師,已經(jīng)開發(fā)了很多年的程序,和很多剛剛起步的人一樣,學(xué)習(xí)的第一個計算機(jī)語言就是C語言。經(jīng)過這些年的開發(fā),我深深的體會到C語言對于一個程序設(shè)計人員多么的重要,如果不懂C語言,你想寫底層程序這幾乎聽起來很可笑,不懂C語言,你想寫出優(yōu)秀高效的程序,這簡直就是天方夜譚。為什么C語言如此重要呢?
第一:C語言語法結(jié)構(gòu)很簡潔精妙,寫出的程序也很高效,很便于描述算法,大多數(shù)的程序員愿意使用C語言去描述算法本身,所以,如果你想在程序設(shè)計方面有所建樹,就必須去學(xué)它。
第二:C語言能夠讓你深入系統(tǒng)底層,你知道的操作系統(tǒng),哪一個不是C語言寫的?所有的windows,Unix,Linux,Mac,os/2,沒有一個里外的,如果你不懂C語言,怎么可能深入到這些操作系統(tǒng)當(dāng)中去呢?更不要說你去寫它們的內(nèi)核程序了。
第三:很多新型的語言都是衍生自C語言,C++,Java,C#,J#,perl...哪個不是呢?掌握了C語言,可以說你就掌握了很多門語言,經(jīng)過簡單的學(xué)習(xí),你就可以用這些新型的語言去開發(fā)了,這個再一次驗證了C語言是程序設(shè)計的重要基礎(chǔ)。還有啊,多說一點:即使現(xiàn)在招聘程序員,很多考試都是考C語言,你想加入it行業(yè),那么就一定要掌握好C語言。
想要一起學(xué)習(xí)C++的可以加群815393895,群內(nèi)有各種資料滿足大家
總結(jié)
以上是生活随笔為你收集整理的看了就知道为什么别人C语言学习效率那么高了的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 招商蛇口是央企吗
- 下一篇: 《团队激励与沟通》第 7 讲——团队合作