⑴ 初學者怎樣看懂c語言
初學者看懂c語言可以分三步進行,首先看懂程序的流程,然後看懂每個語句的功能,最後進行試數。第一步:看懂程序的流程,要知道一個程序是如何一步步執行的,知道程序先執行哪一塊或哪一行後再執行哪一塊或哪一行(順序選擇循環);
第二步:看懂每個語句的功能、含義和它的作用;
第三步:試數(看不懂某一語句的功能,含義是什麼,可以試著用所學知識去單獨測試這個語句,嘗試寫分析過程,把自己當計算機一步步執行)。
總結
初學者看懂c語言可以分三步進行,首先看懂程序的流程,然後看懂每個語句的功能,最後進行試數。
⑵ 零基礎如何學習C語言
學習C語言不是一朝一夕的事情,但也不需要花費十年時間才能精通。如何以最小的代價學習並精通C語言是本文的主題。請注意,即使是「最小的代價」,也絕不是什麼捷徑,而是以最短的時間取得最多的收獲,同時也意味著你需要經歷艱苦的過程。
一、要讀就讀好書,否則不如不讀。所有初學者面臨的第一個問題便是:如何選擇教材。好的開始是成功的一半,選擇一本優秀的教材是事半功倍的關鍵因素。不幸的是,學校通常會幫你指定一本很差勁的C語言課本;而幸運的是,你還可以再次選擇。
切記一個原則,不要讀自己目前還看不懂的書,那是浪費生命。如果你看不懂,那你一定是缺失了某些必需基礎知識。此時,你要仔細分析自己需要補充哪些內容,然後再去書店尋找講述的這些內容的書籍。把基礎知識補充完畢再回頭來學習,才會真正的事半功倍。
二、Unix/Linux還是Windows,這是個很大的問題。不同的編程環境會造就出不同思維的程序員。Windows的程序員大多依賴集成開發環境,比如Visual Studio,而Unix程序員更加鍾愛Makefile與控制台。顯而易見,集成開發環境更容易上手,在Windows上學習C語言,只需要會按幾個基本的Visutal C++工具欄按鈕就可以開始寫Hello, World!了,而在Unix下,你需要一些控制台操作的基本知識。
建議初學者應該以Visual C++ 6.0(不是VisualC++ .NET)或者Dev C++作為主要的學習環境,而且千萬不要在IDE的使用技巧上過多糾纏,因為今後你一定要轉向Unix環境的。Visual C++ 6.0使用很方便,調試也很直觀,但其默認的編譯器對C標準的支持並不好,而Dev C++使用gcc編譯器,對C99的標准都支持良好。
⑶ 如何系統的學習C語言(我是一個初學者,什麼都不懂)
下面是本人自己總結的方法。本人感覺只要你肯花時間。學好應該沒問題。
《C程序設計》的內容很豐富,一般選譚浩強老師編寫的教材,按照我們現在的教學大綱,教學的主要內容是基礎知識、四種結構的的程序設計、函數與數組的應用和一些簡單的演算法。在學習時,同學們應該把主要精力放在這些部分,通過實踐(練習和上機調試等熟練掌握。當然,在初學C語言時,可能會遇到有些問題理解不透,或者表達方式與以往數學學習中不同(如運算符等),這就要求不氣餒,不明白的地方多問多想,鼓足勇氣進行學習,待學完後面的章節知識,前面的問題也就迎刃而解了,這一方面我感覺是我們同學最欠缺,大多學不好的就是因為一開始遇到困難就放棄,曾經和好多同學談他的問題,回答是聽不懂、不想聽、放棄這樣三個過程,我反問,這節課你聽過課嗎?回答又是沒有,根本就沒聽過課,怎麼說自己聽不懂呢?相應的根本就沒學習,又談何學的好?
不要說在家裡自己學看著書這種方法.個人覺得完全是自欺欺人.而且你沒有基礎根本就學不到什麼東西.不管你多用功!這種東西必須先入門!這才是最快的方法.起電腦學校培訓去吧,他們教不到你什麼東西,就是教你最快的入門跟編程基礎,真真的你想靠IT致富的話,起碼要有3年以上的工作經驗再說!出了學校門,找個IT公司進去當」苦力」.跟著老師傅做幾年項目,培養點工作經驗!能獨立完成業務了!你就離有房有車的日子不遠了!前提是你必須好好在單位搞幾年.
但是我沒有銀子,也沒有關系怎麼快速入門。建議大家可以看著書加上詳細的視頻教程學習是目前最好的方法,主要省錢還高效。可以從網路裡面搜索「理想視頻教程網」,自我感覺這個網的內容學習起來還可以,講的比較系統。
最後,學習C語言始終要記住「曙光在前頭」和「千金難買回頭看」,「千金難買回頭看」是學習知識的重要方法,就是說,學習後面的知識,不要忘了回頭弄清遺留下的問題和加深理解前面的知識,這是我們學生最不易做到的,然而卻又是最重要的。比如:在C語言中最典型的是關於結構化程序設計構思,不管是那種教材,一開始就強調這種方法,這時也許你不能充分體會,但是學到函數時,再回頭來仔細體會,溫故知新,理解它就沒有那麼難了。學習C語言就是要經過幾個反復,才能前後貫穿,積累應該掌握的C知識。
以下幾點是我的總結:
1、學好C語言,你可以很好地應付任何一種編程工具。
2、一定要多上機練習,通過程式了解相關知識。幾經反復方得正果。
3、不要把學習C語言當成一種任務,更不要把它看成很難完成的任務。要充滿自信,只要是一個智力正常的人都能學好C語言。始終保持游戲的心態,多發現其中的樂趣。當感到編程趣味無窮,那你在電腦方面將前程無量。
4、如果一個程式一時無法弄清楚最後暫時放在一邊,過一段時間你可能會從其他的程式中悟出道理。
5、C語言是一個整體,各個方面是有機聯系的,要從總體上把握它,不要把它割裂成互不關聯的部件。
6、不要完全相信教材(包括本講義),所有結論最好都上機驗證。
怎樣學好C語言
1. 工欲善其事,必先利其器
准備工作:一個開發環境,如Turbo C 2.0、Visual C++等開發工具;一本好教材,如譚浩強主編的《C語言程序設計》(第二版)。我當時看的是他的第一版,就為它的簡潔、完美所吸引,簡直愛不釋手,用了兩個星期一口氣看完。
2. 秘密武器
初學者學習計算機語言要會「讀程序」,要對小型的應用型、游戲型程序感興趣,並模仿去加深對C語言程序設計的理解和操作,只有不斷地寫程序、調試程序才能得到編寫程序的經驗和加深對程序的理解,這也是學習編寫優秀高級程序的秘密武器。
3. 發揚探索精神
學習C語言程序設計有點像做數學難題,只要我們善於思考,善於探索,發揚探索精神去尋找好的設計思想和方法,才能把C語言的精髓真正地掌握。
備戰C語言考試要訣
1. 了解大綱,臨陣不亂
各類筆試中,大多數考題是與大綱要求的基本內容一致的,難度不高,但內容十分廣泛,應牢固掌握C語言考試大綱要求的基礎部分。只有熟悉題型,理解語法、句法,做到心中有數,才能臨陣不亂。
2. 善於歸納,強化記憶
對於需要記憶的計算機基礎知識和基本概念,如果考試時因此失分就十分可惜。如:C語言中有幾種不同的數據類型?運算的優先順序別是怎樣的?因此我們需要善於歸納這些計算機基礎知識,並在理解的基礎上強化記憶。
3. 重視實踐,善於調試
計算機科學是一門理論性、實踐性都很強的學科,對C語言考試的參加者來說,基礎理論方面要求不高,而上機試題往往是很多考生不能通過考試的重要原因,因此要勤於實踐。
4. 多做練習,查漏補缺
在認真地學完指定用書後,最好再找些試題,認真地測試一下,一則可以檢查自己的復習情況;二則可以查漏補缺;三則可以調節心理狀況,以備正式考試時沉著冷靜、萬無一失。
⑷ 怎麼去學習編程c語言,我沒有一點數學基礎 還有就是看不懂裡面的代碼 需要怎樣去學 謝謝!
一、C語言是最值得學習的語言
學習C語言,首先要明確地告訴自己:C語言是世界上最值得學習的語言。
如今決定學習任何一門其他語言之前,都要先考察這個語言有什麼成功項目嗎?唯獨C語言沒有必要問,因為世界上所有最最重要的的系統中,都必然有C語言的身影。比如操作系統內核、高級語言底層等等。
為什麼C最適合擔任系統核心?主要原因可能是C語言具有和匯編語言的對應性,一條C語言代碼,對有經驗的人來說,可以轉換為一條或多條匯編代碼,也就是說編譯結果具有可預測性。C代碼不會在被編譯時被加上奇奇怪怪的修飾,也不會在二進制兼容性方面帶來大問題。這種穩穩當當的語言,一切都在掌握之中,一切榮耀歸屬於coder,一切錯誤也歸罪於coder。
學習C語言的同時,就自然而然的理解了硬體與操作系統的淺表一層。比如int有幾個位元組的問題,已經是QQ加群驗證是否是程序員的一個標准了(笑),這從側面說明了學習C語言時確實會關心底層軟硬體的實現。C語言簡單的基於值類型的數據類型體系(引用靠指針,指針本身也是值類型),保持了和硬體底層的一致性(即內存、緩存、寄存器只能保存值),不會出現其他語言比如C#那樣既有值又有引用反而對理解底層實現製造了障礙。
從某些角度上講,C語言從設計上來說並不是為了讓我們更好的寫邏輯代碼而設計的,它真的是「只能是這樣」,沒有對錯好壞之分。因為計算機體系結構就是這樣的、匯編就是這樣的,所以C語言大致也只能是這樣的,誰也不能隨意捏造它。它足夠簡單,評論它的設計優劣意義不大。
廢了這么多口舌,是為了堅定思想,端正態度,只有抱著「最好」的態度,才能排除雜念,勇往直前。時代在進步,某些東西易逝,而另一些東西持久。很多編程大師都用親身經歷告訴你,C語言永遠值得用最純粹的態度去學習。
二、學習C語言的初步路線
我們說學習任何東西,都有先把書讀厚,再把書讀薄的過程。也就是說,先學習大量知識和細節,然後總結歸納、提綱挈領,就徹底掌握了這門知識。
而學習C語言,一開始就不那麼厚 : ) 。大道至簡,只需一本:
<img src="https://pic2.mg.com/50/v2-_hd.jpg" data-rawwidth="286" data-rawheight="337" class="content_image" width="286">
賞析一下書中前幾個問題:
第1章 正則表達式匹配器
第2章 Subversion中的增量編輯器:像本體一樣的介面
第3章 我編寫過的最漂亮代碼
第4章 查找
可能是知識結構不足,本書後面的例子我讀起來有點不清晰。對C語言學習者來說,前幾個例子非常值得一讀,可以迅速意識到自己的不足並迅速成長。本書建議先找電子版試讀。
PS:關於C語言開發環境
1、Windows平台,請使用Dev-C++。不要用Visual Studio,對C語言支持不完整。
2、安裝Linux虛擬機,桌面版本的,比如Ubuntu,現在貌似「深度Linux」挺火,沒試過。
三、關於進階
C語言的進階會遇到兩個主要問題:
1、明白基礎以後,缺少大量練習。而大量練習本身會非常費時間,因為在顧及語法的同時要顧及邏輯問題,捉襟見肘。這時候的初學者,邏輯抽象能力和語法使用都是半吊子,非常難受。
2、閱讀代碼方面,C語言的成熟工程代碼一般會比較冗長,函數中間夾雜著很多宏和指針操作,我閱讀的感覺是讀後面忘前面,非常難入手。如果不明白某個函數的功能,強行將其讀懂非常費時費力,容易放棄。
這樣一來,學完基本知識之後的進階之路真的非常陡峭。
我個人大膽給出C語言進階的一個相對緩和的路線:
1、實現鏈表、可變長數組、哈希表等基本數據結構,實現方便的string結構體。然後大膽的用在自己寫的程序中。不要怕寫的有BUG,也不要怕效率不高。現代編程中容器是非常關鍵的武器,沒有容器寸步難行。而編寫容器時會練到封裝、指針、內存分配,都是C語言進階時極其重要的方面。
2、如果工作學習中用到C語言就再好不過,比如現在很多本科、碩士畢業論文都要用C語言實現,那麼這時候抓住機會多練練,是最好的。
3、嘗試ACM競賽題,ACM競賽和OnLineJudge平台,比如
http://tyvj.cn/
類似有很多,北大、北郵這種大學都有類似的網站,上面不僅有題目,還有演算法、有答案、有提示,還能直接在網頁上做題。刷題可以獲得及時反饋,一旦你AC了3道題,那種成就感可以讓你繼續下去,哈哈。不過除非你興趣就是演算法本身,那麼刷30道題基本就可以了,畢竟這種刷題會猛烈地提高演算法能力,但是對架構能力的提升幾乎沒有任何作用,對大多數人來說不建議刷太多。
4、非常重要的私貨:如果除了做練習題以外沒有練習機會,那麼請把C語言放一下,快速學習Python(首選)、Lua(次選)、JavaScript(或TypeScript更好)等能夠立即實現功能效果的語言。學習好的動態語言有兩方面好處:
第一:表層來說,能迅速提高邏輯代碼的編寫能力。用C語言構思半天才能寫一點的功能,用動態語言會快速的多,動態語言將我們從內存分配、容器等基本問題中解脫出來,直接實現我們想要的效果。用動態語言實現之後,可以用C語言仿寫這些邏輯代碼,相當於按圖索驥,直達目的。
第二:深層來說,較高級的語言對底層的語言編寫有強烈的指導意義。我個人在工作中使用C++用了很長時間,但是總感覺遇到瓶頸無法突破。直到我學習了Python,寫了一兩個比較復雜的工具,從另一個角度突破了邏輯設計的屏障,才感覺到編程水平有了明顯提高。
第三:在掌握了Lua或Python後,再找資料一邊學習一邊看Lua和Python的C源碼,對提高C語言水平有實質性的幫助。
這里舉一個簡單的例題:一個文件中有很多對ID和欄位,這些ID和欄位對分別代表另一個文件。而另一個文件內容可能會鏈接到更深一級的文件。怎樣讀取這些文件組成一棵樹呢?
這個問題對能力達到一定水平的人是基礎問題,而對於初學者來說可能是一個門檻。這種問題我的建議是用Python或Lua的表、字典來解決,然後理清思路之後,改寫為C代碼。
⑸ C語言看不懂
對於第一個的一大堆的if條件語句,只能逐個的使用play_state的值去與後面的比較,當然要遵守&&運算符的短路規則,也就是對於a&&b,如果a的值為0,那麼就不用去判斷b是多少了,因為不管b是多少,對於&&運算符來說與0的運算其結果都為0。
至於你說的找不到play_state的值,play_state這個值,如果是在其他函數中或者if語句中定義的,那麼這個值可以不用看,因為這個值是局部變數,局部變數一但離開定義他的語句塊或者函數,其值將不會存在,而且在語句塊或函數外的程序是看不到局部變數的。因此對於play_state的值,你應該查找,是不是定義了一個全局變數,應找到全局變數的值才是有效的值。
至於邏輯預處理指令#if,其實這個語句就與C中的if語句是一樣的,如果#if後面的條件成立,則執行後面的語句,否則就跳出。並不是像你所說#ifdef語句,是否後面沒有定義就不用看了,應該判斷後面的條件是否成立。一般#if語句是與#define連合使用的,下面給你介紹一下#if語句。
邏輯預處理器指令:
1、邏輯#if指令:該指令原理與條件語句if相同,如果測試為真就執行後面的語句,如果為假則跳過後面的語句。該指令有兩種用法,其一可以用#if指令測試某個符號以前是否用#define指令定義過,這是最常用的用法,其二可以用來測試某個條件表達式是否為真。
2、#if指令用法一:測試某個符號是否以前用#define定義過,該用法的指令如下#if
defined
標識符
….
#endif
其縮寫形式為#ifdef
標識符….#endif表示如果,指定的標識符已被#define定義,則中間的語句就包含在源文件中,如果該標識符還未被#define定義,則跳過#if和#endif之間的語句,該語句以#endif結束,還要注意的是標識符前的關見字是defined比define多一個字母d。
3、測試標識符是否不存在:其語法為#if
!defined
標識符…..#endif縮寫形式為#ifnedf
標識符…..#endif表示如果指定的標識符沒有定義,則把#if和#endif之間的語句包含在源文件中,如果標識符已定義則跳過#if和#endif之間的代碼,實標上#ifndef語句比#ifdef語句使用得更頻繁,因為系統使用該語句防止頭文件被多次包含,
4、防止頭文件被包含多次的方:其方法為#ifndef
HY
#define
HY語句#endif程序在開始遇到標識符HY時沒有被定義,這時執行後面的語句,再第二次被使用時則標識符HY已經被定義,這時不會執行後面的語句,從而防止了同一頭文件被包含多次的情況。這里要注意使用#define後面定義的標識符不需要值。
5、#if語句還可以使用邏輯運算符以測試多個值,比如#if
defined
HY1&&HY2….#endif當HY1與HY2都為真時才執行,同樣還可以使用其他邏輯運算符。
6、#if指令用法二:測試某個表達式的值是否為真,其語法格式為:#if
常量表達式….#endif,注意常量表達式的求值結果應是整數常量表達式,比如#if
a=2
….
#endif測試a的值是否為2,如果為2則執行#if與#endif之間的語句。
4.7、多個#if選擇塊:和常規的if語句一樣#if也有對應的#else和#elif語句,比如#if
a=3
….
#else
….
#endif表示如果a=3則執行if後面且在#else前面的語句,如果為假則執行#else與#endif間的語句。#elif用來實現多個選擇,該語句和常規語句的else
if相似,比如#if
a=1
….
#elif
a=2
….
#elif
a=3….
#else
….
#endif表示,如果a=1則執行#if後的語句,如果a=2則執行該條件後的語句。
執行開始後,按順序先執行x=0;,因為它不在循環體內,所以只執行1次,
接下來是個循環嵌套,外層循環的for(i=1;i<n;i++)語句要執行n次,(因為要進行n次判斷),內層循環要執行n+(n-1)+(n-2)+...+1次,用等差數列求和公式表示這個和,就是n(n+1)/2次
⑹ 學習c語言需要什麼基礎嗎 我現在買了本c語言的書,但是一點都看不懂,就像看天書一樣的,
首先:C語言入門相對比較簡單,但如果想成為一個優秀的C程序員,需要很艱苦的訓練,多讀代碼,多練習,多上機操作,多思考,學習是一件辛苦的事情,要放棄很多東西,要堅持下來才可以,可以說C語言是基礎,將來想學其他的C++,JAVA等,如果有C的基礎,還是比較好入門的.
C語言的用處比較廣泛,可以說任何精通計算機的人都掌握C語言了,我是本科計算機專業的,C被作為許多課程的先行課,沒有了C語言基礎,就不能學習數據結構,操作系統,編譯原理,計算機網路等核心課程,所以說,想學習計算機的話無論想在哪個方向發展(軟體,硬體,網路,應用,開發,設計等方向)都必須掌握C語言.
C Traps And Pitfalls 推薦讀,不過要有一定基礎。
如果你剛開始的話推薦C Primer Plus或者C In A Nutshell。
去書店買那種翻譯版的書,紅色皮的那種. 原著國外的.
如果可以直接看那種英文原版的(畢竟翻譯過來的有些詫異).
<21天學通C語言>(第六版)
Bradley L. Jones, Peler Aitken 著.
信達工作室 譯.
人民郵電出版社
這本書對初學者很好, 如果有點基礎那就更好了.
建議選擇譚浩強譚老師的書,簡單易學,理論與實踐結合的很好,而且如果能認真學的話,你會發現你的C語言基礎非常的實。
也不是說其他的書不好,但是有些書只是為了讓讀者入門,沒有前途呀。
先讀譚浩強的《C語言程序設計》,這是公認的中文入門級教材。但是書中的代碼風格不敢恭維。看完這本,推薦《21天學通C語言》,這本書比較好,個人感覺。看完這兩本,你就可以進階C++了。
C語言只要把基礎打好就好,你要是想精通的話,最好是精通C++,這樣比較有前途。但不要操之過急。
以下一段話是我給另一位初學編程的朋友建議的學習軌跡,你可以參考以下:
學習編程語言貴精不貴多,而且要循序漸進、有張有馳。
初學語言時,基本上都是從C語言入手。
一本譚浩強老師的《C語言程序設計》足夠。
不過在學習過程中請注意不要學習他老人家的編程風格!我不知道現在改版了沒有,反正我當年學這本書的時候,上面的代碼風格讓我極其崩潰。
良好的C語言代碼風格,可以參閱《21天學通C語言》等。
學C最多也就半年,感覺差不多了,做一個像樣的小項目,檢驗一下自己即可。然後就應該步入C++中。C++是一門值得深入研究的語言,仔細學進去你會發現它嗷嗷強大。其中也有許多經典的設計思想。入門級書籍推薦《C++大學自學教程》講的比較透徹,但很厚。進階級推薦《C++語言深入研究》等,就比較深奧了。高手級推薦《C++大師的沉思》等國外名著,講的很暈,呵呵。
Java是一定要學的,但如果不想在這方面發展,可以不學得那麼累。Java是發展最迅猛的語言之一,其技術更新之快,遠勝於我們學習的速度。學習Java的重點要放在學習她的思想上。學習面向對象思想,以及建築在其上的各種框架和架構的思想。學精C++之後再學Java,語法部分10天足夠,但思想部分就看你的悟性了。
追加建議:學過C++、Java之後,再回頭重溫C語言,研究一下用C語言如何實現面向對象的四大特性(抽象、封裝、繼承和多態)。這時你就會發現,哦,之前顯得如此神秘的東西原來是這樣的啊……
當以上三門語言你都經歷了一遍之後,就可以選擇自己所要進一步深造的方向了。那時候你已經心裡有數。而且這時的你學習任何一門其他程序設計語言都是手到擒來易如反掌。這就是基礎的作用。
<編程珠璣>-中國電力出版社
<程序設計實踐>-機械工程出版社
<實用c語言編程>-O'Rerly出版
<演算法導論>
⑺ 為什麼C語言我看不明白
老是看到有些朋友發帖子:
感覺對於學習c語言無從下手,特別是剛入門的朋友.看到那些奇怪的,不合常理的符號,感覺完全是摸不著路一樣.
然後寫這篇帖子,談一下個人的學習方法和學習效率,希望對大家有幫助,特別是新手,
書的選擇
首先選擇一本或者兩本,開始學習的時候,書不要過多,多了自己看不完,而且每一本書,作者都有自己的思路和寫法習慣,然後現在市面上的書很多編寫都不是很好,紕漏百出.看的多了反而感覺思維太混.一些印刷的錯誤或者其作者本來就寫的不正確的程序,對於初學者或者是不懂的朋友,要花許多的時間把錯誤找出來.很是麻煩.我以前發的教材是北郵出版的,c語言程序設計.基本上教材上面的例子,就算照抄的話,3個就有2個要出現錯誤.上機課的時候,大家都不怎麼會,就把例子抄下來.出了錯,不能夠通過編譯,就不停的問老師.白白浪費了許多時間.
我感覺現在編寫書的許多作者,在編寫的時候,遇到些簡單的程序,隨手一寫,然後就印刷上了書,也沒經過調試得到正確的結果.最後出現了些許錯誤.也不管三七二十一,只要書能賣的好,就行了.這是相當不負責任的.誤導讀者.
開始學習,可以看看潭浩強的c程序設計,老潭的書賣得好,還是有他的理由的,錯誤比較少,然後講的也比較通俗易懂,清華出的書我感覺都還可以.
習慣和方法
貴在堅持,每天看.一天不要搞懂很多的問題,但求把看過的一部分的每一個環節搞清楚,實在搞不清楚的,先跳過去,學習逐漸深入,看了後面在看前面,前後的知識是相通相連的.
我一般都會把書上的例子一個一個的敲到計算機上面,然後調試,運行.不要看過了就以為自己懂了,那是不好的,就算讓你看100編,你輸入到機器裡面,還是可能會出錯,一個簡單的
main()
{ printf("hello world.") }
你就算這樣背了下來,還是出錯,因為你沒有注意到語句少了分號,為什麼這里有一個分號.只有自己把代碼輸入,機器編譯通順了,你才明白自己錯在那裡.當敲的代碼越來越多,熟練度越高,編譯再次出現錯誤,就知道錯在那裡.如何更正.還有一個好處就是可以發現一些錯誤,這些錯誤涉及到當前沒有學習過的知識.然後通過逐漸深入的學習,在回想以前出錯的,就知道當時為什麼會出錯.把這里改成
main()
{ print("hello world");}編譯系統會報出不同的錯誤結果
比如這個函數沒有寫頭文件,在某寫c++的編譯器中也不能通過,當你學習過c++的一些相關知識以後,你就會逐漸明白其中的道理.為什麼要使用頭文件等等.
錯誤是相當重要的,書上只會告訴你怎麼寫一個對的程序,程序的格式,程序怎麼寫.不會告訴你出了錯誤怎麼修正,如何處理,靠自己不斷的摸索,才會有新的心得和體會.
把課後的習題做完,做好,基本上都弄懂,習題是檢驗你這一章學習怎麼樣的一個標准.自己想,自己做,寫出簡單的演算法,不懂的,上論壇,上c吧,發帖子,會有人告訴你的,
不要拿著書上的練習跑到論壇來求代碼,這是不好的,也沒有人願意告訴你.誰都願意幫助那些自己思考的朋友,不願意幫助像乞丐一樣不勞動就指望人家給你代碼寫好了把作業交差了事或者是只為了應付考試矇混過關的人.那樣的人不是真正的喜歡編程,不指望提高自己的水平,也不需要我們幫助.
學習後面的知識的時候,如果遇到以前的問題,再把掌握的代碼敲一遍,敲兩遍,敲n遍提高熟練度,更加可以發現新的問題.
mian()
{
int a = 5;
printf("%d",a);
}
誰都知道輸出5,把程序改從一小處
mian()
{
int a = 5;
printf("%d");
}
程序是通不過編譯呢,還是輸出奇怪的字元或者地址.相信有部分朋友不知道.(我也不知道)
3不斷深入
有如許多朋友發帖子說的,經常把一些時髦的語言掛到嘴邊,比如說我要學c#好,還是,java好,不如把基礎的東西弄懂弄通.在我看來,在沒有學習好c 之前最好不要學習其他任何的語言,不要想到c#,java裡面沒有指針,沒有復雜的東西,可以避難就易,基礎的東西不學好,就像做的很華麗的豆腐渣工程,再漂亮,也是會倒的.學完了c ,學習數據結構,學完了,學習計算機編譯原理,當你把這三門課都掌握的時候,再開始學習c++,c#,或者是java就很容易,也快得多,
把平時用的多的演算法寫下來,記住,把基礎的學好以後,不斷往後的學習,你會發現,知道的東西越多,不知道的東西越多,軟體行業的博大精深,任何一個小的領域,比如c ,也許窮盡我門畢生的精力才發現自己錯學只不過是邊陲一角.
因為我自己的學習也在初學階段徘徊,所以也不知道應該更加深入的學習的方法,但是相信知識積累到一定的程度.你自然就知道自己往哪方面發展.
⑻ c語言什麼都不懂,如何入門
說一點個人的經驗。我是開始看的最簡單的輸入輸出函數,純新看教材個人推薦譚浩強的。然後看基礎知識,看簡單的代碼,理解下每個部分的作用。指針部分還有演算法部分可以暫時放一下,等到後面又看不懂的地方再看。編程環境不推薦VC++,不好用。Cfree什麼的都可以。純手打,望採納。