vc6.0 ,舊了。 codeblack,還可以。 cfree破解版,貌似不更新了。 vs2010。有點大。 linux下c語言編程(適應平臺有點困難) ,建議選哪個都行。都能練習c語言。
本文我們將從以下幾個部分來詳細介紹如何學習C語言編程:準備工作、變量的使用、使用條件語句、學習循環語句、使用函數、不斷學習、參考
誕生于上世紀70年代的C語言是一門古老的語言了, 但作為一門底層語言,時至今日它仍然非常強大。學習C語言能夠為學習其他更復雜的語言打下良好的基礎,因為你在C語言中學習到的知識對幾乎所有的編程語言都適用。下面就來看看如何開始用C語言編程吧。部分 1準備工作
學習方法是: 1、課前預習,課后復習,認真做課堂、課后的作業,理解理論知識。 2、記住語法規則。 3、加強邏輯思維。 4、多動手,通過練習上機了解它的運行過程。 5、實踐—>理論—>再實踐,剛開始學習C語言時,按示例練習,并推動理論的學習,然
第1步:下載和安裝編譯器。
剛開始可以學譚浩強的《C語言程序設計》是清華大學的老教授寫的一本大學教程,確實比較適合中國學生,特別是初學者的學習!(不要怕網上的一些對此書的負面的評論,畢竟這本書剛成書的中國國情決定的,但畢竟這本書成就了現在的很多C語言大咖,
C語言需要通過編譯器解釋為計算機可以理解的機器碼。 編譯器通常是免費的, 不同的操作系統上一般使用不同的編譯器。
現在都是信息化的時代,沒有一門好的技術是難以在社會之中立足的, 現在的電腦技術飛速增長,每家公司都需要電腦人才,你可以去學習電腦專業, 在這個領域中還是有很大的發展空間的,只要自己好好學習,以后的前景不可限量。
對于Windows系統, 可以嘗試 Microsoft Visual Studio Express,其是Windows平臺上最流行的多語言IDE(集成開發環境),其集成了Microsoft開發的C語言編譯器。
首先你需要找一本書,無論是大學里的程序課本,還是充斥市場的“**天從入門到精通”,你需要一個課本來給自己打基矗 然后,對應著這本書,你需要找一些教學視頻。當然如果你的學習能力特別強,可以靠自學,不過大多數人對著視頻來學習,會比自己啃
對于OS X系統, Xcode是一款優秀的多語言IDE,其集成了C語言的編譯器。
我也是軟件學校的,正在學編程,為了我們的前途,還是給你說說吧 談及C語言,我想凡是學過它的朋友都有這樣一種感覺,那就是“讓我歡喜讓我憂。”歡喜的是,C語言功能非常強大、應用廣泛,一旦掌握了后,再自學其他語言就顯得輕而易舉了。憂慮的是
對于Linux, gcc是一個不錯的也是最流行的選擇。
一、C語言是最值得學習的語言 學習C語言,首先要明確地告訴自己:C語言是世界上最值得學習的語言。 如今決定學習任何一門其他語言之前,都要先考察這個語言有什么成功項目嗎?唯獨C語言沒有必要問,因為世界上所有最最重要的的系統中,都必然有
第2步:理解基本概念。
首先學習C語言和VB,這是兩種不同風格的基礎知識。然后可以根據自身的興趣和發展方向來選擇各種編程語言。如C++,C#,JAVA等等。當你學習的時候你自然會發現算法和數據結構的重要性,這是必須要努力學習的方面與此同時必須要學習一下數據庫的相關
C語言是一門古老的語言, 但卻十分強大。它最初是為Unix操作系統設計的, 但后來被移植到了幾乎所有的操作系統上,并得到了很多擴展。C語言的現代版本是C++。
其實吧,學習C語言是以后從事軟件設計的一個基矗 任何領域都需要長時間的投入才有結果,你現在學習了C語言,再學習其他語言的時候就比較上手了。 在軟件設計中: 學習一門語言僅僅是第一階段:如果你基本掌握了一門語言,那么再想深入學習的話就
C語言本質上是由函數構成的,在函數體中你可以使用變量,條件語句,循環等語句來存儲和處理數據。
學習C語言不是一朝一夕的事情,但也不需要花費十年時間才能精通。如何以最小的代價學習并精通C語言是本文的主題。請注意,即使是“最小的代價”,也絕不是什么捷徑,而是以最短的時間取得最多的收獲,同時也意味著你需要經歷艱苦的過程。 一、要讀
第3步:查看一些基本的代碼。
C語言是很好的,如果你學并決定要學好,恭喜你。你的選擇是對的。 C的優點就不用多說了,一大堆。 我想給你推薦兩個工具: 1,有學有練輕松簡單學C語言---苦丁香C語言速成 有關頁面 http://www.verycd.com/topics/20209/ 學習篇 講解C語言基礎用
下面是用C語言寫的一段非常基本的代碼, 閱讀這些代碼,嘗試理解這種語言的不同部分是如何工作的, 并對程序的運作原理有初步的認識。
這個怎么說呢 自我感覺首先是興趣問題 再就是一個思想 也就是邏輯,在C中就那么幾個重點 if else;for;while,do while;swicth;數組;指針。 看你說的這個事來看 你對for,if else,while,do while這些理解的不夠,加強這些語句的理解,方法
#include
呵呵,c語言知識只是入門哦。 首先推薦你精進理論知識,數據結構和算法,不說精通,但絕對要了解。 其次,根據你的興趣和愛好,選擇方向。 c/c++主要針對底層系統,以及對速度和性能要求較高的軟件,比如3d繪圖,數據庫,操作系統,網絡服務端等
這里的#include 指令在程序開始之前就出現了, 它的功能是把包含有你需要的函數的庫加載進來。 在這個例子中,引入stdio。h 使得我們能夠使用 printf() 和 getchar() 這兩個函數。
時常都有新手這樣問,我回答過很多,現在只復制答案給你: 1、現在的編程已經是外圍包裝打得很好,好到讓你寫幾行代碼就能看到成果:有名HELLO World!但如真正理解編程是怎么回事,可能3-5年,你未必得其然。 2、能用現有的編程工具寫出第一個
這里的 main() 指令會告訴編譯器,程序需要運行一個叫做“main”的函數,該函數運行完畢后返回一個整數值。所有的C語言都要運行一個“main”函數。
我就拿你要編寫“優化大師"這樣的軟件為例。 1、優化大師,顯然會有大部分不是用C寫的,使用C++或其他語言更多。 2、你在學校寫的C語言程序都還叫做”控制臺應用程序“,離有窗口有按鈕的WIN32應用程序還差得遠 3、如果你想寫出一個WIN32應用程序,
{} 符號表示括號內的所有內容都是函數的一部分。在本例中,他們標記了所有的內容都是“main”函數的一部分。
現在都是信息化的時代,沒有一門好的技術是難以在社會之中立足的, 現在的電腦技術飛速增長,每家公司都需要電腦人才,你可以去學習電腦專業, 在這個領域中還是有很大的發展空間的,只要自己好好學習,以后的前景不可限量。
printf() 函數能夠將小括號中的內容顯示在用戶的屏幕上。雙引號保證了這個字符完全按照字面的樣子輸出, n 組合告訴編譯器這串字符輸出完之后將光標移動到下一行 。
首先來回答您的問題 所有編程初始都要學習代碼中的語言,最基礎的就是C語言,當你稍微了解C語言,可以嘗試學一學當今就業比較好的Java語言。 接著考慮C++,相對于C語言比較高難度。我們面對新的編程語言時,只需簡單了解該語言的語法特點,就可
; 符號表示一行的結束。絕大部分C代碼都以分號結束。
1:工欲善其事,必先利其器 這里介紹幾個學習C語言必備的東東: 一個研發環境,例如turbo C 2.0,這個曾占據了DOS時代研發程式的大半個江山。但是現在windows時代,用turbo C有感覺不方面,編輯程式起來很吃力,并且拖放,更沒有函數變量自動感應
getchar()函數告訴編譯器這段程序要等待一個按鍵的輸入才能夠繼續。考慮到大部分編譯器在運行完程序之后會立刻關掉程序窗口,這個功能還是很有用的,因為這樣可以讓程序保持運行直到有鍵被按下才會結束。
一、多看代碼 在有一定基礎以后一定要多看別人的代碼,同時注意代碼中的算法和數據結構,因為數據結構和算法是程序的靈魂。提到數據結構,指針是其中重要的一環,絕大多數的數據結構是建立在指針之上的,如鏈表、隊列、樹、圖等等,所以只有學好
return 0 指令表示程序的結束。請注意”main”函數是一個int類型的函數,也就是說當函數結束時需要返回一個整數。如果返回0則表示程序正確的執行了,其他數字表示程序運行時發生了錯誤。
1:工欲善其事,必先利其器 這里介紹幾個學習C語言必備的東東: 一個開發環境,例如turbo C 2.0,這個曾經占據了DOS時代開發程序的大半個江山。但是現在windows時代,用turbo C有感覺不方面,編輯程序起來很吃力,并且拖放,更沒有函數變量自動感
第4步:嘗試編譯這段程序。
很多人對學習C語言感到無從下手,經常問我同一個問題:究竟怎樣學習C語言?我是一個教師,已經開發了很多年的程序,和很多剛剛起步的人一樣,學習的第一個計算機語言就是C語言。經過這些年的開發,我深深的體會到C語言對于一個程序設計人員多么
把上面的代碼輸入到你的代碼編輯器中,然后保存為”*。c”文件。 用你的編譯器編譯它, 一般來說點擊Build或Run按鈕即可。
1 多看書。這個是基矗沒人能夠憑空就會,只能多看書。 2 多上機。C語言是一門編程語言,最終的目的是為了編程。所以也只有在實戰中才能夠更快的理解知識點,達到快速上手的目的。 3 多想。不要死讀書,多想想為什么。理解了才能掌握的更扎實。 4
第5步:要養成寫注釋的習慣。
基礎的話什么都不用。往深學需要英語 主要為了看外文書籍和代碼注釋。還需要數據結構和操作系統的知識。當然要想寫出一段高效的代碼 還需要離散數學,計算機算法的知識。 看書就看下面文章吧 這是以前看到的一篇文章,感覺很好。不過里面很多說
注釋是代碼中的一部分,它不會被編譯, 但是卻可以告訴你代碼做了些什么。這對于提醒你自己你的代碼是干什么的以及讓其他開發者理解你的代碼都很有幫助。
1:工欲善其事,必先利其器 這里介紹幾個學習C語言必備的東東: 一個研發環境,例如turbo C 2.0,這個曾占據了DOS時代研發程式的大半個江山。但是現在windows時代,用turbo C有感覺不方面,編輯程式起來很吃力,并且拖放,更沒有函數變量自動感應
在C語言中添加注釋只需要把要注釋的部分的前面添加/*, 后面添加 */。
學習C語言可以為學習 C++、Java、C# 奠定基矗C++、Java、C# 都源自C語言,C語言大部分的語法、知識都被移植到 C++、Java 和 C# 中了。 所以學習C語言有助于 C++、Java 和 C# 的學習。對于學習編程的人來說,有深厚的C語言功底是極其重要的。 只
不要吝嗇你的注釋,除了特別簡單明了的地方都盡量加上注釋吧。
C程序設計》的內容很豐富,按照我們現在的教學大綱,教學的主要內容是基礎知識、四種結構的的程序設計、函數與數組的應用和一些簡單的算法。在學習時,同學們應該把主要精力放在這些部分,通過實踐(練習和上機調試等熟練掌握。當然,在初學C語
注釋功能也可以快速的屏蔽一部分代碼但不刪除它們。只需要給你想要排除的代碼用注釋標簽包起來它們就不會被編譯。如果你想要改回來,去掉注釋標簽即可。
開始學C語言時,你需要掌握其基本的結構,和了解相關的編程軟件; 你需要自己先去看看書,老師一般不會講的太詳細; 在上完課后,不要把書扔在一邊,而是及時在計算中去實現一些代碼 對于不懂得東西,自己主動去找老師解答,雖然那些老師可能很
部分 2變量的使用
c語言是計算機技術的基礎,是信息技術的基礎,是自動化技術的基礎,是很多電子設備能夠運行的基礎 學了C語言,你可以開發 1.操作系統 2.各種底層軟件 3.各種嵌入式系統開發 4.各種同硬件打交道的軟件開發
第1步:理解變量的功能。
變量是用來存儲數據的,不管是計算得出的還是用戶輸入的數據。變量在使用前要先定義,并且有不同的類型可以選擇。
有以下幾種常見的變量類型 int, char, 和 float。 每種變量類型都代表一種數據存儲的格式。
第2步:學習聲明變量。
變量在使用前要先被創建出來,或者叫”聲明”。 聲明一個變量只需要在變量類型的后面寫出變量的名字即可。比如,下面就是一些變量聲明的例子:
float x;char name;int a, b, c, d;
注意,你可以在一行中聲明多個變量,只要它們的類型是一樣的就行,你只需用逗號把變量名隔開即可。
和大多數的C代碼一樣,變量的聲明也要以分號結尾。
第3步:理解在何處聲明變量。
變量的聲明必須要放在每個代碼塊之前(代碼塊是指用大括號{}包起來的一段代碼)。如果你在代碼塊后邊聲明變量,程序就不能正確執行了。
第4步:用變量來存儲用戶的輸入。
現在你了解到了變量的一些基本原理, 你可以寫一段簡單的程序來存儲用戶的輸入。這次你需要用到另外一個叫scanf的函數, 它的功能是把用戶的輸入賦值給指定的變量。
#include 這里的"%d"符號告訴scanf函數在用戶的輸入中找出整數。 x前面的&符號告訴scanf在哪里找到要修改的變量,并把輸入的整數值存進去。 最后的printf命令讀出輸入的整數并返回給用戶。 第5步:處理變量。 你可以用數學表達式來處理之前存儲的變量。需要注意一個重要的差別:在數學表達式中單個=是賦值號,作用是把等號右邊的值賦給等號左邊的變量, 而==則是比較兩個變量是否相等。 x = 3 * 4; /* 把x設為3*4,也就是12 */x = x + 3; /* 把x的值增加3,然后把新的值賦值給x */x == 15; /* 檢查x是否等于15 */x < 10; /* 檢查x是否小于10 */ 部分 3使用條件語句 第1步:理解條件語句的基本概念。 大多數程序都是由條件語句驅動的, 這樣的語句可以判斷一個條件是TRUE(真)還是FALSE(假), 然后據此執行不同的動作。最基本的條件語句是if語句。 C語言中的TRUE和FALSE和你平常理解的有點不太一樣。TRUE和任何非0的數總是相等的。當你執行一個比較時,如果結果是TRUE,會返回一個”1”。如果結果是FALSE,會返回0。弄清楚這一點能幫助你更好的理解IF語句的執行過程。 第2步:學習基本的比較符號。 條件語句是以比較大小的數學表達式為核心的。下面列出了最常用的一些比較符號: > /* 大于 */< /* 小于 */>= /* 大于或等于 */<= /* 小于或等于 */== /* 等于 */!= /* 不等于 */ 10 > 5 TRUE6 < 15 TRUE8 >= 8 TRUE4 <= 8 TRUE3 == 3 TRUE4 != 5 TRUE 第3步:寫一個IF語句。 利用IF語句,你可以根據一個表達式計算的結果決定之后的程序如何運行。之后學習了其他條件語句后你可以把它們組合起來實現更強大的功能,不過現在寫一段簡單的代碼熟悉一下就行了。 #include 第4步:使用ELSE/ELSE IF語句來擴展你的條件判斷。 在IF語句中你可以添加ELSE 和ELSE IF語句來處理更多不同的結果。 ELSE后面的語句在IF中的判斷結果為FALSE時執行。 ELSE IF則可以讓你在一個代碼塊中使用多個IF語句來處理更多的情況。閱讀下面的代碼看一下他們是怎么工作的。 #include 這段代碼接收用戶輸入的一個數據然后傳遞給IF語句。如果這個數據滿足第一個條件,則第一個printf被執行。如果沒有滿足第一個條件,則后面的各個ELSE IF會逐個進行判斷直到有一個滿足條件的分支為止。如果沒有任何分支滿足條件,則ELSE語句被執行。。 部分 4學習循環語句 第1步:理解循環的原理。 循環是編程中很重要的一部分, 它們讓你可以重復執行一段代碼直到滿足特定條件為止。這個機制使你可以很容易的實現重復的動作,同時省去了每次做條件判斷的麻煩。 有3種類型的循環:FOR, WHILE, 和 DO…WHILE。 第2步:使用FOR循環。 這是最常見和好用的循環類型。它會不斷的運行循環內的函數直到循環條件不再成立。FOR循環需要包含3條語句:初始化變量,循環條件,和變量更新的方式。如果你不需要其中的某個語句,把該處空著打一個分號即可,否則的話循環會無限運行。 #include 在上面的程序中,y被設為0,循環繼續運行的條件是y小于15。每次循環中y的值被打印出來,并且被增加1。一旦y=15,循環就結束了。 第3步:使用WHILE循環。 WHILE循環比FOR循環要簡單的多。它們只有一個語句,只要該語句為TRUE循環就不斷執行。你不需要初始化或更新變量,不過你可以在循環體中做這些事。 #include 這個循環每執行一次,y++命令就把y的值增加1。一旦y達到16,循環就結束了。(記住只有在y小于等于15的條件下循環才會執行。) 第4步:使用DO…WHILE 循環。 這種循環在你想要確保一個循環至少要被執行一次時非常管用。在FOR和WHILE循環中,循環條件的檢測是在循環開始之前進行的,這也就意味著有可能第一次檢測就無法通過,那樣的話循環體一次都不會被執行。然而DO。。。WHILE循環會先執行一次循環體然后再做檢測,這就保證了循環體至少會被執行一次。 #include 在上面的循環中,即使循環條件檢測的結果為FALSE還是會展示一條信息。變量y的值被設為5而WHILE循環被設置為只有當y 不等于5時才運行,所以循環執行到條件檢測時就會終止。但信息還是被展示出來了,因為條件檢測是在輸出信息之后的。 DO…WHILE循環中的WHILE語句必須以;結尾。這是唯一一種循環體以分號結尾的情形。 部分 5使用函數 第1步:理解函數的基本原理。 函數是可以被程序的其他部分調用的自成一體的代碼塊。使用函數可使你更容易重復一段代碼,同時也讓程序變得簡單易讀、便于修改。函數中可以包含前面提到的所有技術,甚至可以包含其他函數。 前面的例子中的main()就是一個函數,同樣getchar()也是。 要想寫出高效且易讀的代碼,函數是至關重要的。用好函數可以使你的程序條理更清晰。 第2步:從函數原型開始。 在真正開始編寫一個函數之前,你最好先搞清楚你要完成什么功能,并從函數原型開始編寫。函數的基本語法格式為: “返回值類型 函數名 (參數1, 參數2, …);”。 比如下面是一個把兩個數相加的函數: int add ( int x, int y ); 上面的代碼創建了一個把輸入的x和y相加然后返回他們的和的函數。 第3步:把函數添加到程序中。 你可以用上面的函數原型實現一個把用戶輸入的兩個數相加的函數。下面的程序展示了"add"函數是如何處理輸入的數字的。 #include 請注意,函數的原型也需要放在程序的頂部,這樣能保證當這個函數被調用時編譯器已經知道存在這個函數,同時也知道它的返回類型。不過只有你想在函數調用處之后再實現這個函數時才有必要這么做。如果你直接把add()函數的實現放在main()函數之前,那么即使不聲明函數原型也是一樣的。 這個函數的實現代碼其實是放在程序的底部的。main() 函數獲取了用戶輸入的兩個整數并把他們傳給add()函數以便后者進行處理,然后add()函數把計算的結果返回給main() 。 當add()函數被定義之后,你就可以在程序中的任何地方調用它了。 部分 6不斷學習 第1步:找一些C語言編程相關的書來看。 這篇指南涵蓋了C語言中最基礎的部分,但對于完整的C語言只是體系來說這只是皮毛。如果能有一本好的參考書你在學習C語言的道路上能省去許多麻煩 第2步:加入一些社區。 不論是在線上還是線下,都有一些很棒的致力于學習和發展優秀編程語言的社區。如果能找到一些志同道合的C語言程序員,并和他們相互交流, 你一定能進步的很快。 如果可能的話還可以嘗試黑客馬拉松活動。在這項活動參賽的團體或個人需要在有限的時間里對給出的問題提出自己的程序和解決方案,因此很能培養人的創造力。你還可以籍此認識許多優秀的程序員。并且世界各地都有規律性舉辦的黑客馬拉松活動。 第3步:參加一些課程。 雖然你沒必要重新回到學校修得計算機科學的學位,但是適當的參加一些相關課程還是會讓你的學習過程有質的飛躍。沒有什么能比一位C語言專家的言傳身教更能幫助你了。通常你總能在網絡上找到一些培訓課程,也有一些專業的計算機培訓機構可供選擇。還有一些大學的優秀課程是免費對外開放的,你可以去旁聽。 第4步:考慮學習C++。 如果你已經掌握了C語言,了解一下C++將對你大有裨益。因為C++是C語言更現代的版本, 它更加的靈活和方便。C++是以面向對象的思想設計的,掌握C++之后你就可以在幾乎所有操作系統中編寫強大的程序了。 小提示 多給程序寫注釋。注釋不僅可以幫助其他可能看到你的代碼的人更好的理解代碼, 還能幫你會一起你寫的代碼是什么意思以及你為什么要這么寫。當你寫代碼的時候你可能很清楚你要干什么,但兩三個月之后呢?你很可能已經忘的差不多了。 如果你在編譯時遇到語法錯誤而被困擾,記得用谷歌或其他搜索引擎搜索一下你遇到的問題。有可能已經有人遇到了同樣的問題并貼出了解決辦法。 你的源代碼需要以。c擴展名做后綴,這樣編譯器才能夠知道這是一個C語言源碼文件。 參考 http://c.learncodethehardway.org/book/ex1.html http://www.cprogramming.com/tutorial/c/lesson1.html http://www。learn-c。org/en/For_loops 擴展閱讀,以下內容您可能還感興趣。 學習C語言有什么書適合新手看 學習C語言不是一朝一夕的事情,但也不需要花費十年時間才能精通。如何以最小的代價學習并精通C語言是本文的主題。請注意,即使是“最小的代價”,也絕不是什么捷徑,而是以最短的時間取得最多的收獲,同時也意味著你需要經歷艱苦的過程。 一、要讀就讀好書,否則不如不讀 所有初學者面臨的第一個問題便是:如何選擇教材。好的開始是成功的一半,選擇一本優秀的教材是事半功倍的關鍵因素。不幸的是,學校通常會幫你指定一本很差勁的C語言課本;而幸運的是,你還可以再次選擇。 大名鼎鼎的譚浩強教授出了一本《C語言程序設計》,據說發行量有超過400萬,據我所知,很多學校都會推薦這本書作為C語言課本。雖然本人的名字(譚浩宇)跟教授僅僅一字之差,但我是無比堅定地黑他這本書的。這本書不是寫給計算機專業的學生的,而是給那些需要考計算機等級考試的其它專業學生看的。這本書的主要缺點是:例子程序非常不專業,不能教給你程序設計應該掌握的思考方式;程序風格相當地不好,會讓你養成亂寫代碼的惡習;錯誤太多,曾經有人指出過這本書的上百個錯誤,其中不乏關鍵的概念性錯誤。好了,這本書我也不想說太多了,有興趣大家可以百度一下:) Kernighan和 Ritchie的《The C Programming Language》(中譯名《C程序設計語言》)堪稱經典中的經典,不過舊版的很多內容都已過時,和現在的標準C語言相去甚遠,大家一定要看最新的版本,否則不如不看。另外,即使是最經典最權威的書,也沒有辦法面面俱到,所以手邊常備一本《C語言參考手冊》是十分必要的。《C語言參考手冊》就是《C Reference Manual》,是C語言標準的詳細描述,包括絕大多數C標準庫函數的細節,算得上是最好的標準C語言的工具書。順便提一句,最新的《C程序設計語言》是根據C89標準修訂的,而《C語言參考手冊》描述的是C99標準,二者可能會有些出入,建議按照C99標準學習。還有一本《C和指針》,寫得也是相當地不錯,英文名是《Pointers on C》,特別地強調指針的重要性,算是本書的一個特點吧。不過這本書并不十分適合初學者,如果你曾經學過C語言,有那么一些C語言的基礎但又不是很扎實,那么你可以嘗試一下這本書。我相信,只要你理解了指針,C語言便不再神秘。 如果你已經啃完了一本C語言教材,想要更進一步,那么有兩本書你一定要看。首先是《C Traps and Pitfalls》(中譯名《C陷井與缺陷》),很薄的一本小冊子,內容非常非常地有趣。要注意一點,這本書是二十多年前寫成的,里面提到的很多C語言的缺陷都已被改進,不過能夠了解一些歷史也不是什么壞事。然后你可以挑戰一下《Expert C Programming》(中譯名《C專家編程》),書如其名,這本書頗具難度,一旦你仔細讀完并能透徹理解,你便可以放心大膽地在簡歷上寫“精通C語言”了。 切記一個原則,不要讀自己目前還看不懂的書,那是浪費生命。如果你看不懂,那你一定是缺失了某些必需基礎知識。此時,你要仔細分析自己需要補充哪些內容,然后再去書店尋找講述的這些內容的書籍。把基礎知識補充完畢再回頭來學習,才會真正的事半功倍。 二、Unix/Linux還是Windows,這是個很大的問題 不同的編程環境會造就出不同思維的程序員。Windows的程序員大多依賴集成開發環境,比如Visual Studio,而Unix程序員更加鐘愛Makefile與控制臺。顯而易見,集成開發環境更容易上手,在Windows上學習C語言,只需要會按幾個基本的Visutal C++工具欄按鈕就可以開始寫Hello, World!了,而在Unix下,你需要一些控制臺操作的基本知識。有人也許認為Unix的環境更簡潔,但習慣的力量是很大的,大家都很熟悉 Windows的基本操作,而為了學習C語言去專門裝一個Unix系統,似乎有點不劃算。 對于一個只懂得Windows基本操作、連 DOS是什么都不知道的新手而言,盡快做一些有趣而有意義的事情才是最重要的。用C語言寫一個小程序遠比學習ls、cat等命令有趣,況且我們要專注于C 語言本身,就不得不暫時忽略一些東西,比如編譯鏈接的過程、Makefile的寫法等等等等。 所以我建議初學者應該以Visual C++ 6.0(不是VisualC++ .NET)或者Dev C++作為主要的學習環境,而且千萬不要在IDE的使用技巧上過多糾纏,因為今后你一定要轉向Unix環境的。Visual C++ 6.0使用很方便,調試也很直觀,但其默認的編譯器對C標準的支持并不好,而Dev C++使用gcc編譯器,對C99的標準都支持良好。使用順帶提一下,很多大學的C語言課程還在使用Turbo C 2.0作為實驗環境,這是相當不可取的,原因其一是TC 2.0對C標準幾乎沒有支持,其二是TC 2.0編譯得到的程序是16位的,這對今后理解32位的程序會造成極大的困擾(當然,用djgpp之類的東西可以使TC 2.0編譯出32位程序,不過那過于復雜了)。 等你學完一本C語言的教材,你一定要轉向Unix平臺繼續學習,幾乎所有的C語言高級教程都是基于Unix平臺的(比如《C專家編程》)。轉變的過程是痛苦的,你需要面對的是各種紛繁復雜的命令,完全不同于Windows平臺的思考方式,但是這種痛苦是值得的。Unix與C是共生的,Unix的思考方式和習慣更加符合C語言的思考方式和習慣。在Unix下,你可以找到無數優秀的源代碼供你盡情閱讀,你可以方便地查看某個庫函數的聯機手冊,還可以看到最優秀的代碼風格(說到代碼風格,我會專門寫一篇文章詳細敘述)。 歸結起來就是一句話:初學C語言,建議使用Windows系統和集成開發環境,在準備向“高手”方向努力時,請先轉向Unix平臺。 三、萬事俱備,你就是東風 書已選定,環境配置完成,正所謂萬事俱備,只欠你自己的努力了。請從書的前言開始,仔細地閱讀手頭的教材,很多人看書喜歡直接從第一章開始看,這是錯誤的做法。前言是作者對整本書的大體介紹,作者一般會告訴你需要什么基礎才能夠順利閱讀本書,這可以幫助你檢驗自己的基礎知識是否已經具備。看完前言,還要瀏覽一下目錄,了解一下書的整體結構,順便給自己安排一下學習計劃。 學習C語言,必需注意每一個細節,書上的例子代碼一定要自己親自敲一遍,編譯執行輸出都跟書上說的一致才能算是學完了一個例子,如果不一致,就要仔細找原因。出了書本上有的例子,自己還要“創造”一些例子,比如學習運算符優先級的時候,可以寫幾個相同的表達式,在不同的位置加上括號,看看有哪些不同的行為,比如*p++和(*p)++,又比如a = b == c、(a = b) == c和a = (b == c)等等。自己抄的書上的例子以及改造之后的例子,還有自己“創造”的例子,都應該仔細地歸類保存,并且要在源代碼中寫上簡短的注釋,闡述這個例子的意圖。 例子之后就是習題了,我建議初學者把所有的習題都獨立做一遍,然后對照答案的代碼,看看自己的代碼有那些不足,再試著修改自己的代碼。很多人不重視習題,這是極大的錯誤,因為作者通常會在習題中說明一些重要的道理,而不是單純地檢驗前面的知識。 也許你認為這樣學習太慢,其實不然。學得細致就不用走回頭路,等你學到后面才發現自己前面沒搞清楚,那才是真的得不償失。一般說來,整本書讀完,你應該完成數千行乃至上萬行的代碼,無論是原封不動照抄書上的,還是自己心血來潮寫就的,都是今后繼續學習的一筆財富。以我自己舉例,閱讀《Windows核心編程》時(我只閱讀了3/4的內容),除了抄書上的代碼,還自己寫了很多例子,一共有5574行(用unix下的wc工具統計),時隔多日,我早已記不清 Windows的系統編程了,但只要花幾分鐘翻出以前的代碼看看,便會重新了然于胸。所謂好記性不如爛筆頭,就是這個道理。 仔細讀書、認真抄寫源代碼、獨立完成習題外加更進一步的實驗,最后將所有的代碼留下,成為自己的經驗和財富,絕對的辛苦,也絕對的事半功倍。當然,這種方式只適合學習需要精通的技術,如果不是學習C語言,你還要具體情況具體分析。 寫到最后,還有非常非常重要的一點沒有提及──代碼風格,從最開始學習就必須強迫自己模仿最優秀的代碼風格。因為代碼風格太重要內容也太多,我會用專門的一篇文章來詳細討論,請大家關注《程序員之路──關于代碼風格》。 怎樣在短時間內學好C語言? C語言是很好的,如果你學并決定要學好,恭喜你。你的選擇是對的。 C的優點就不用多說了,一大堆。 我想給你推薦兩個工具: 1,有學有練輕松簡單學C語言---苦丁香C語言速成 有關頁面 http://www.verycd.com/topics/20209/ 學習篇 講解C語言基礎用法,提供BC,VC入門的基礎知識,邊學邊練,由淺入深,帶你快速進入C語言殿堂 提高篇 手把手教你設計一個"五子棋"游戲程序 實戰篇 大量且典型的習題,幫你鞏固所學知識 源程序賞析篇 大量的源代碼,讓你更上一層樓 該張光盤特別適合剛學C的朋友,其祥細而生動的講解讓你快速理解C的語法,讓C變得比VB還好學。比市面上許多教編程的光盤好多了! 2,面對C語言初學者的編譯器---C與C++程序設計學習與實驗系統 下載頁面 http://24.duote.com/wintc.zip 原名《Turbo C/C++ for Windows 集成實驗與學習環境》,現已更名為《C/C++程序設計學習與實驗系統》,現在已全面支持最新操作系統VISTA,它由從事一線教學的大學教師根據C/C++初學者的特點,量身定制的一個簡單易用的 C/C++學習與實驗軟件。軟件集成了高校 C/C++語言教學中使用最多的三種編譯器 Visual C++ 6.0 、Turbo C++3.0和Turbo C 2.0 ,給高校 C/C++的實驗教學提供了簡單易用的軟件實驗環境(軟件沒有使用日期*,可以無限期使用)。與軟件配套的《 C/C++入門教程(每章配有同步實驗)》融入了作者多年的教學和學習經驗、編程建議、編程感悟等,同時,為了便于C語言學習,加入C語言流程控制語句演示動畫、C語言學習指導、入門程序實例、典型源程序、典型的函數算法,課程設計指導、課程設計源程序、 Visual C++6.0 常見編譯錯誤信息、Turbo C++3.0常見編譯錯誤信息、 Turbo C2.0 常見編譯錯誤信息、C語言專業詞匯的中英文對照、2004年到2006年全部二級 C 語言的真題筆試試卷及答案與分析和10套上機模擬試題和詳盡的答案與分析等大量的學習資源。另外 “編程日記” 功能可以讓你記錄你的 C 語言學習歷程, “資料管理” 功能讓你大量的下載資料不再難找 C語言要多練,多看些好的程序代碼,學的怎么樣完全看你自己了,C是絕對可以自學成材的~!! 樓主加油啊 C語言,如何增加編程能力? 這個怎么說呢 自我感覺首先是興趣問題 再就是一個思想 也就是邏輯,在C中就那么幾個重點 if else;for;while,do while;swicth;數組;指針。 看你說的這個事來看 你對for,if else,while,do while這些理解的不夠,加強這些語句的理解,方法就是你教材上的例題自己獨立的去做 不要看下面的解釋 自己去想 就這樣 ;比如說用上邊的5個這些語句編寫“考試分數為60分或者以上輸出及格,85分或者85分以上則輸出優,60分以下輸出不及格” 自己獨立做 做完了 找老師幫你看看 如果做出來了 你會有種成就感 培養興趣的方法就是讓自己有種成就感 呵呵 c語言編程學完后學什么? 呵呵,c語言知識只是入門哦。 首先推薦你精進理論知識,數據結構和算法,不說精通,但絕對要了解。 其次,根據你的興趣和愛好,選擇方向。 c/c++主要針對底層系統,以及對速度和性能要求較高的軟件,比如3d繪圖,數據庫,操作系統,網絡服務端等等。 JAVA針對手機平臺,以及網絡方面的應用開發。 python,php,javascript等腳本語言適合web開發。 也可以做DBA,學數據庫。 總之有很多種,你自己上網去查,這里就不累述了。 當然,掌握一門甚至多門語言,不代表就萬事ok了。比如你用c++開發圖形圖像類軟件,那么你必需對圖形圖像的相關理論知識有所了解,又如用java開發網絡類程序,你必須對計算機網絡,Tcp/ip協議有所了解,要開發文件系統,就必須對操作系統的有所了解。 如果需要參加實際的項目,那么你還要學一些框架類的知識,比如.NET框架,J2EE框架,MFC框架等等,從事圖形學,你得學習OPENGL,DirectX等等。只有掌握了相關框架的API這樣才能夠構架大的系統。 總之呢,給你的建議就是:數據結構+算法+你感興趣的方向 其中,你感興趣的方向=相關理論知識+具體的實踐語言+對應的框架API 怎樣才能把c語言學好,成為編程大牛 時常都有新手這樣問,我回答過很多,現在只復制答案給你: 1、現在的編程已經是外圍包裝打得很好,好到讓你寫幾行代碼就能看到成果:有名HELLO World!但如真正理解編程是怎么回事,可能3-5年,你未必得其然。 2、能用現有的編程工具寫出第一個程序HELLO World!就是你想學編程而不怕編程的最好動力。 3、編程已經被包裝很嚴實,所以你先熟悉外表包裝:windows你會用沒有?當然你會Linux更好,但會Linux的不會問這個問題的;你會在windows安裝程序沒有?你用過一般的軟件沒有?office也算;這些都很普通,但得會;因為這是你會用編程工具的基礎;其實我想說的是你能安裝現有的編程工具沒有,你會用編程工具沒有?會了,就買個入門書,學語法,對著書一字符一字符的輸入樣板代碼;寫完后一字符一字符校對代碼,確保沒有抄錯。然后用工具編譯你的代碼,得到代碼的目標文件,用工具運行目標文件:基本都是HELLO World!啦。完成第2點,點燃你的興趣,加強你的信心,因為編程路漫漫,沒興趣和信心,你立刻就倒下。 4、*完第一個入門書,這樣你會對編程有個概念。 5、有了概念,學著去理解程序的各種理念。 6、把各種理念變成你的代碼。 7、運行各種程序理念去完成一些任務。 8、選擇好你的方向走下去,你就可能到達光明頂。