當前位置:首頁 » 編程語言 » c語言資料書哪種好
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

c語言資料書哪種好

發布時間: 2022-07-08 11:59:09

㈠ 初學c語言用什麼教材好,求推薦

想看國內的還是國外的?
國內的看譚浩強的《c語言程序設計》,雖然褒貶不一,不過依然是本很好的教材。國外的就選《C Primer Plus》,C語言的入門經典,很厚的一本書(初學者千萬別被嚇到……),課後習題一定要都自己做了,這本書會讓你打下很牢的基礎。
綜合來說,畢竟是國人,先看看譚浩強的吧,《C Primer Plus》對初學者來說啃起來很難,看完譚的再看《C Primer Plus》會好很多。
註:另外也可以看《Head First C》,雖然我沒看過,但Head First 系列評價一直不錯,我看的是這系列中的Python教程,編書的風格很好,如果不喜歡教科書式的枯燥內容,Head First系列就是不錯的選擇,讓你的學習不那麼枯燥並且快速入門。看完後再看《C Primer Plus》(當然其他c語言基礎教程書也行),絕對可以事半功倍。
看到別的評論說到指針,雖說對初學者來說有點早,不過我也補充一下(不知道指針的話可以先略過下面這段話):對於指針,記住一句話:「指針中存的是地址。」這也是指針的定義,永遠不要忘了這句話,萬變不離其宗,指針函數、函數指針、數組指針、指針數組、常量指針、指針常量、指向常量的常量指針……很頭疼的東西,但不要覺得它難,覺得難只會讓它越來越難,第一次學學不透不要緊,知道基本概念即可。學完了c再回頭來看指針,抓住它定義的那句話,無非就是一個存地址的。以前我也混亂過,然後清晰了,然後又混亂……周而復始,混亂的時候無一例外都是被指針指來指去搞暈了,而忘記了它的定義——一個存地址的。後來看了一本書,名字我忘了,好像是C和指針,很薄的一本書,很經典的教材,這才算徹底理清了指針,也把指針中存的是地址這句話真正記在了心上,然後任何復雜的例子都是一眼明了,當同學還在為指針困惑時,我也在為他困惑:這么簡單的例子有什麼好睏惑的?(哈哈,當時確實被同學們奉為大神了,允許我裝一下)。所以對於指針不要怕,記住它的本意,再復雜的例子也可以由里到外慢慢肢解,第一遍看不透不要急眼,過後再看,有了基礎可以再找一找c和指針這本書,它會讓你豁然開朗。

㈡ 誰可以推薦幾本學習c語言的書(c語言也就是代碼,)

基礎部分看譚浩強的c語言程序設計,譚浩強書還是不錯的,就是版本老了點,編譯器還是vc6.0,建議你用vs2010或者vs2008,不建議用vs2010以上版本。指針很多人學不明白,主要是因為內存地址這方面的東西是計算機組成原理的內容,直接選c語言相當於你已經了解了內存原理。但是想學好c一定要努力搞懂指針,指針是c語言最大的優勢和特點。之所以不建議用2010以上版本是因為vs2010以上版本完全支持c11標准,多了很多類似越界異常的報錯,雖然有助於規范編程和保證程序健壯性,但對於初學者,這並不友好,而且多數人C語言入門只是為了培養編程思想,最後工作或者深入學習很少有一直用C的,學得很深完全沒有必要。
看完c隨便找本c++看一下或者去看python或java,c++和c幾乎一樣,就是多了一些函數和功能,以及模塊化編程的思想,本質還是一樣的。java和c++編程思想類似,但是java對內存的管理是自動的,而且沒有指針。而python則更加強調對函數的應用,有大量封裝好的結構和函數,以及非常豐富的庫。比如列表是python的基本數據結構,內部甚至已經實現了堆棧功能的pop、push,而c++的隊列和堆棧用到高級庫<vector>和<stack>,列表內置快排函數,僅需一行代碼就能快速排序,而c++的快排在高級函數庫里。就是python讓編程過程簡化,簡化了數據結構,才能降低編程門檻,讓機器學習變得這么火爆。弊病就是用python入門的人一般數據結構學的都不咋地。我身邊一些本科通信、自動化考研轉到計算機的人,都有這個問題,他們C基礎很薄弱,上了研究生就直接學python搞起機器學習來,等找工作的時候,數據結構基本不會,刷題面試都很費勁。用python學習數據結構,實際就相當於用計算器列豎式。老師讓你列豎式、筆算,是為了提高你的算數能力,理解算數原理,列豎式是手段,不是目的。而你豎式寫好了,算卻是用計算器算,然後把豎式填滿,完全本末倒置。
看完譚浩強可以去看清華大學出版社的數據結構,數據結構不只是演算法,更是一種解決問題的思路,是如何把現實的具體問題抽象成為數學模型,再由計算機解決的過程的全過程。數據結構想學好主要是對於數據空間的理解,如果你指針學得好,數據結構也不會差。

㈢ 自學C語言用什麼書好

譚浩強的《c語言程序設計》講的內容比較適合考試,所以老師會推薦用它來做教材。但如果你純粹是要自學的話,我很推薦《21天學通c語言》,人民郵電出版社的,它的紙張很好,讓你覺得有種專業的感覺。從內容上說,它設計了21天的課程,由淺入深,很適合初學者拿來自學。在下當時就是對這本書愛不釋手,在老師正式上課之前,就已經基本學完了書上的課程了。

㈣ 自學C語言程序設計有沒有好的資料推薦

The
C
Programming
Language,很好的教材,是C語言的創始人編寫的,你能把這本書吃透就已經很厲害了。另外《C和指針》也是本很好的書,尤其是對於C語言的難點指針描述得很清晰。如果你僅僅想要通過考試,那麼譚浩強的書是個不錯的選擇。

㈤ 學習c語言看什麼書好

最近很多人都在問如何學習編程。我覺得學習編程最重要的是入門,如果你入門的時候有一個好的方法和思路,打下比較扎實的基礎,對今後的編程工作是很有益處的。即使在學習新的編程語言也無所謂,因為它們有很多相通之處,可以相互借鑒。
我認為可以先學習一下pascal,這個語言比較嚴謹,適合初學者。pascal它被稱為教學語言,結構嚴謹,不像C語言那麼靈活,易於理解和學習。
然後可以繼續學習C語言,這個語言比較靈活。有了pascal的基礎,在進行C語言編程就不會因為C語言的靈活而有問題
。後面的就可以學習VC什麼的了。
C語言的書推薦譚浩強的,比較好。
我當時學習pascal和C語言的時候是將書後的習題都做了一遍,感覺效果很好。
當然了,學習什麼語言也要看你具體准備從事什麼行業。例如你要進行嵌入式開發,C就是很好的選擇,如果是Windows開發,那麼VC就不錯。還有資料庫方面的開發、網路開發等等。不同的語言適合不同的方面。要看自己的選擇的,呵呵

還有很多人說自己的基礎很差,甚至中學畢業什麼的。其實這個並不重要,比較說英語,在計算機語言里所用到的單詞量很少,而且都是常用詞,經常使用就記住了。當然,如果你要看原文資料或者幫助的話,專業詞彙比較多,不過在金山詞霸的幫助下,經常看,也是沒什麼大的問題的。至於數學什麼的,其實數學只是培養你一個邏輯思維能力,在初學編程的時候影響不是很大。況且,作為一個基礎編程人員來說,上面還有系統分析師、項目經理,他們會把需求分析、概要設計和詳細設計做好的,你只要按照文檔寫代碼就OK了。不過,要上更上一步的話,其他基礎知識就非常重要了,畢竟你不能寫一輩子代碼。
在你學習好C語言以後,個人建議好好學習一下數據結構和軟體工程。這兩門對你的水平提高都是很有幫助的。特別是軟體工程,它能夠使你按照科學的工程方法進行軟體開發,對今後的發展很有好處。
只是一家之言,有不到之處,還望見諒

㈥ 學習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語言程序設計:現代方法》(第2版)(C
Programming: A Modern Approach, 2nd Edition, K.N.King)

《深入理解計算機系統》(修訂版或第2版)(Computer Systems: A Programmer's Perspective,
Randal E. Bryant et al),閱讀建議

《C語言程序設計》(第2版)(The
C Programming Language, Brian W. Kernighan & Dennis M.
Ritchie)

《程序員修煉之道》(The
Pragmatic Programmer: From Journeyman to master, Andy
Hunt & Dave Thomas)

2、內核/驅動

《Linux內核設計與實現》(第3版)(Linux
Kernel Development, 3rd Edition, Robert Love)

《Linux設備驅動程序》(第3版)(Linux
Device Driver, 3rd Edition, Jonathan Corbet et al)

《深入Linux內核架構》(Professional
Linux Kernel Architecture, Wolfgang Mauerer)

3、應用

《UNIX網路編程》(Unix
Network Programming, W. Richard Stevens)

《UNIX環境高級編程》(Advanced
Programming in the UNIX Environment, W. Richard Stevens)

4、進階

《C陷阱與缺陷》(C Traps and Pitfalls, Andrew Koenig)

《C專家編程》(Expert C Programming, Peter
van der Linden)

《ARM嵌入式系統開發:軟體設計與優化》(ARM
System Developer's Guide: Designing and Optimizing System Software,
Andrew Sloss et al)

      ㈨ C語言哪本書最好

      潭浩強
      清華大學出版社
      學C語言的99%都用他的書
      以下在網路上看到對他的書的評價
      按∶
      譚浩強
      教授編寫的
      《C程序設計
      》一書受到廣泛的歡迎和高度評價。下面刊登幾所大學講授C語言
      課程
      的老師對《C程序設計》一書的評價意見。
      清華大學計算機與信息管理中心
      承擔著清華大學非
      計算機專業
      的「計算機軟體技術基礎」課,自1994年起選用清華大學出版的譚浩強教授編寫的《C程序設計》一書作為本課程教材,取得了很好的教學效果,深受師生們的歡迎,現正使用第二版作為
      教材
      。此書的特點及對教學的
      促進作用
      主要表現在以下幾方面:
      1.內容全面,實用性強
      此書涵蓋了程序設計
      基礎知識
      及C語言程序設計的全部內容,並介紹了大量常用
      演算法
      。通過學習此教材,初學程序設計的學生可以達到熟練運用C語言進行小規模應用開發的能力。
      2.講解透徹,深入淺出
      此書對
      概念
      講解透徹,使初學
      計算機程序設計
      的學生不僅學習了一種
      高級語言
      ,而且能夠對相關基礎知識有準確深入的理解,例如在介紹
      變數
      存儲類型時、介紹指針時都對
      計算機

      存儲管理
      做了清楚的論述,使讀者知其然也知期所以然。廣大非計算機專業的學生學習
      計算機課程
      的學時很少,沒有足夠的
      時間系統
      地學習計算機專業基礎知識。因此像這樣將必要的基礎知識融會貫通到程序設計課程中,對學生的
      知識結構
      建設以及今後的深造和提高都大有裨益。
      3.通俗易懂,易於自學
      此書的一個突出優點就是,語言優美、舉例生動、
      淺顯易懂
      。學生在學習C語言之前,普遍有些畏難情緒,因為聽說C語言比較難學。的確C語言最初是面向專業
      開發人員
      的。但是讀了
      這本書
      之後,學生們不再懼怕C語言。很多學生說,讀這本書不僅
      學會
      了C語言,而且讀的
      過程
      本身就是一種享受,不像有些專業書籍,堆砌大量技術
      名詞
      ,艱澀難懂。由於這本書易於自學,給我們的教學工作帶來很大幫助,使我們可以達到精講多練,逐步實現教師指導下的學生自主式
      學習模式

      4.結構清晰,循序漸進
      由於本書結構清晰,
      知識點
      明確,循序漸進的內容組織方式非常符合
      初學者
      的認知
      規律
      ,因此給教師組織
      課堂教學
      提供了很好的指導。我們按照這本書的內容結構組織教學,取得了學生和
      教務處
      的一致好評。
      5.習題豐富,利於復習
      計算機程序設計是一門實踐性很強的課程,因此僅僅通過閱讀教科書或聽課是不可能掌握的,學習程序設計的最重要環節就是實踐。本書每章都附有大量習題,並且有配套的習題解答,非常有利於學生復習鞏固課上所學的知識。也便於教師設計
      實驗課

      教學內容

      ㈩ 自學、初學c語言,買哪本書好最好是國內的。

      推薦書籍:譚浩強《c程序設計》,凱尼格《c陷阱與缺陷》

      以下是學c快速入門,本人原創。
      常用c語言基礎總結(60%以上代碼),但是不寫程序是永遠入不了門的
      基礎概念:
      數據類型--int,char
      運算符--加減乘除,賦值,判斷
      表達式--數據類型

      運算符的幾種典型組合
      基礎程序結構:
      順序--普通程序
      選擇--if/switch語句(可先熟悉if)
      循環--for/while/do
      while語句(可先熟悉for)
      (前面都會了之後)
      數組,函數,指針,結構體,位運算

      那些新手入門什麼的沒有太大用,譚浩強那本《c程序設計》已經不錯了,有的書講的東西太多新手接收不了反而不好,更有甚者知識體系不連貫或者不全面,那就麻煩了。《c程序設計》我以前在學校是一直拿來當工具書用的,當時寫過的c代碼量大概在1w行左右,我覺得初學完全夠用了