A. 求《c語言開發手冊》全文免費下載百度網盤資源,謝謝~
《c語言開發手冊》網路網盤pdf最新全集下載:
鏈接:https://pan..com/s/1x73yFxA3h3-GLQ_eJ_kAFQ
簡介:本書對現代c語言程序的介面和高級技術進行了全面講解,對具有一定開發經驗的設計人員也有非常好的參考價值。本書可以作為c語言初學者的入門教材,也可作為c語言程序員的參考手冊,還可作為大中專院校學生及電腦培訓班的參考書。
B. C語言學習手冊的本書特色
通易俗懂
為了讓初學者易於學習,本書力求內容通俗易懂,講解寓教於樂。對於初學者難以理解的專業術語,本書都進行了形象的解釋,有些還提供了例圖。書後附錄中又單獨將術語解釋提煉出來,供讀者學習時參考。初學人員學習編程的另一個障礙是對難點技術的理解,如多分支判斷語句、指針和調用函數等。書中在講解這些難於理解的技術時,結合生活中的示例給出了形象的解釋。例如,多分支判斷語句滿足不同條件,執行不同操作,通過現實生活中汽車要去不同地點,選擇不同路線來做鮮明的對照,還配有圖形,如下圖所示。
語音視頻講座
為了方便讀者學習,本書附贈光碟中提供了19小時視頻講座。其講解細膩、層次清楚、互動性強,不但可以加深對書中內容的理解,還可以引導學習者掌握「是什麼」、「為什麼」、「怎麼辦」、「應注意些什麼」的編程思維能力。所講視頻不僅對書中的內容進行了詳細介紹,還對相關技術進行了有效擴展,對開發中易犯的各種錯誤給出了解決方案。
注重實用性
初學者經常會遇到這樣的情況,書中講解的技術能夠理解,但不知道如何應用。例如,在學習抽象類時,讀者能夠自己定義抽象類,並且能夠從抽象類派生子類,但是不知道抽象類能夠做什麼、在哪裡應用抽象類。本書在介紹技術時,注意強調技術的實用性,並且通過實例突出技術的應用價值。對於一些典型的應用,書中通過「情景應用」欄目進行重點介紹。
實戰互動練習
要掌握一項技術,最佳的方式就是多練習、多實踐。本書每章都提供了多個供讀者實踐的實例任務,讀者可以對照檢驗對知識的掌握情況。每個實例任務都分為「題目描述」、「技術指導」和「緊急救援」三部分。其中,「題目描述」給出了實例功能的詳細描述和效果圖,「技術指導」給出了開發思路和關鍵技術,「緊急救援」提供了下載實例源碼和開發文檔的地址鏈接。
C. C語言學習手冊的內 容 簡 介
本書從初學者的角度出發,全面介紹了使用C語言進行程序開發的各種技術。在內容布局上由淺入深,讓讀者循序漸進地掌握編程技術;在內容講解上結合豐富的圖解和形象的比喻,幫助讀者理解「晦澀難懂」的技術;在內容形式上附有大量的提示、技巧、說明、情景應用、實戰練習等,夯實讀者編程技術,豐富編程經驗。全書共分18章,主要講述了Turbo C 2.0和Visual C++ 6.0編譯器的使用、C語言的基礎知識、常量和變數的使用、數據類型、表達式的寫法、運算符的使用、輸入、輸出函數的用法、選擇結構程序的設計、使用數組的方法、函數的用法、指針的使用、如何掌握結構體與公用體、數組的排序法、鏈表的使用、位運算的演算法、儲存管理、函數類型、預處理和文件的讀、寫,最後,通過一個實戰項目——學生管理系統,使讀者將所學知識更好地應用到實際開發當中。
本書附有配套光碟。光碟中包含本書所有程序的源代碼、重點難點的實例視頻錄像。其中,所有源代碼都經過了精心的測試,能夠在Windows 2000、Windows XP、Windows 2003、Windows 7系統中編譯和運行。
本書適用於C語言的愛好者、初學者和中級開發人員,也可以作為大中專院校和培訓機構的教材。
D. C語言參考手冊的內容簡介
本書是關於C語言的詳盡的參考手冊。最新的第5版增加了對C99標準的介紹,更加符合當前讀者學習C語言的需要。
全書分為兩大部分,共24章。第一部分討論了C語言的所有語言特徵,包括詞法、預處理機制、聲明、類型、表達式、語句以及函數等基本語言特性。第二部分討論了C語言的標准庫,根據它們不同的功能分別詳細介紹。為幫助讀者理解相關概念,本書在討論C語言及其標准庫的各方面問題時,提供了許多實例和解釋。在第一部分的各章中還提供了練習題,書後則給出了主要練習的解答。這些練習的主要目的是幫助讀者理解C語言的基本機制及其重要細節,其中並不涉及復雜的程序設計技術與問題。
本書可以作為高等院校計算機專業C語言課程的教材和參考書,對於一般的C程序員也有重要的參考價值。
E. 《c語言參考手冊原書第五版》pdf下載在線閱讀全文,求百度網盤雲資源
《c語言參考手冊原書第五版》網路網盤pdf最新全集下載:
鏈接:https://pan..com/s/1PhXbkkQU-mOG5XHWgX-X9A
簡介:c語言參考手冊第五版涵蓋了傳統C語言、C89,C95.C99等所有C語言版本的實現,同時討論了C++與C語言兼容的部分。全書自上而下介紹了C語言的詞法結構、預處理器、聲明、類型表達式、語句、函數和運行庫,是所有C語言編程人員必備的參考書。
F. C語言學習手冊的前 言
讓想要學習編程的人員都能夠學會編程!
我可以學會編程嗎?
當然可以!即使你沒有基礎,即使你是非計算機專業畢業,即使你已過而立之年,甚至是只有初中畢業。我國最早的計算機反病毒專家、江民殺毒軟體創始人王江民,初中畢業,38歲開始學習計算機,因為英語基礎不好,很多人認為他根本沒有學會編程的可能。但王江民沒有感覺自己不行,硬是克服各種困難,成為我國最成功的程序開發人員之一。
王江民學習編程的訣竅是什麼?
是實踐。王江民說:「計算機是實踐性非常強的學科。我搞計算機是用計算機,不是學計算機。」 王江民首先學的是BASIC語言。當時,為了輔導上小學的孩子,對軟體一片空白的王江民竟然決定編寫程序代替家長輔導。短短3個月,王江民就邊學邊實踐,編好了一套數學語文教學軟體,試過後效果奇佳,參加電腦報軟體交流,被評為第二名,譽為「教育軟體第一」。因為這次成功,極大激發了王江民對編程的興趣,使他從此把精力轉到了軟體領域。
所以說:實踐,是學習編程的最好方法,也是培養編程樂趣、捕獲發展機遇的最佳途徑。值得注意的是,不要等學完全部知識才去實踐,要隨時學習,隨時實踐,哪怕只學了一點點。
這本書適合我嗎?
非常適合!本書是學習C語言編程的最佳選擇。所講內容通俗易懂,易於學習,貼近實踐。對於學習中的難點、重點,注意結合實際開發,採用情景應用的方式進行介紹和練習。本書光碟提供了完整的視頻講座,可以對照本書內容循序漸進進行學習。利用本書,不但可以學會編程,更能激發學習者理論聯系實際的熱情,開發出符合市場需求的軟體和項目。
G. C語言入門
學習任何知識,循序漸進總是最好的方式。不幸的是,很多人明知這個道理,卻總是想走所謂的捷徑。如果你是一個剛剛開始學習編程的中學生,或者你是一個剛剛進入計算機學院的本科生,又或者你是一個決心在計算機領域有所建樹的初學者,你一定迫切地想知道,學習計算機技術,究竟應該從哪裡下手。
我的建議是:數學、英語、C語言。
數學和英語的重要性已經不需要我來強調,大家也許從幼兒園就開始學習它們了,請時刻把它們放在最重要的位置,無論你是否學習計算機。
為什麼C語言如此重要?我們從學習方法開始說起。書本上描述的東西,倘若不經過我們的親自實踐,是難以被徹底消化吸收的。計算機組成原理講解了浮點數的格式,如果我們能看到並分析內存或寄存器中某個浮點數的表示,那比單純的紙上談兵要強一千倍;數據結構與演算法似乎很難,如果你能把書上的例子實現出來,然後把習題做完,只需啃完一本好書,你也可以是演算法高手;操作系統原理其實不僅僅是原理,只有做一些內核方面的實驗才能真正有深刻理解;還有許多新潮的技術,比如JavaEE、PHP、Ajax、.NET等等等等,很多高手學習這些技術只需要很短的時間,不必說,他們肯定是C語言的高手。C語言幾乎是一切計算機技術的通用工具,包括計算機的各種基本理論。沒有精通C語言的決心,就不要涉足計算機領域。
為什麼是C語言而不是C++不是Java不是其它?因為C語言最簡單。你需要掌握一個語言工具,但也許並不需要「面向對象」、「模板」、「函數重載」等等一大堆概念。C語言足夠低級,非常非常地貼近計算機的底層結構,不會讓你迷失在概念的汪洋大海。除了「指針」,C語言沒有真正意義上的難點,而「指針」,恰恰是理解計算機底層結構精髓的關鍵所在。
所以,初學者們不必思考應該學什麼,等把C語言精通了,你自己便會知道下一步如何去走。如果你對操作系統內部感興趣,你便可以試著研究一下Unix的內核,除了C語言,你還需要一些匯編語言和保護模式的知識;如果你對演算法感興趣,那麼恭喜你,C語言足夠使用了;如果你對Windows編程感興趣,去看看《Windows程序設計》吧,作者清楚的告訴你「只需要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語言,你還要具體情況具體分析。
寫到最後,還有非常非常重要的一點沒有提及——代碼風格,從最開始學習就必須強迫自己模仿最優秀的代碼風格。因為代碼風格太重要內容也太多,我會用專門的一篇文章來詳細討論,請大家關注《程序員之路——關於代碼風格》。
H. C語言學習手冊的本書適用人群
本書是一部零基礎編程圖書,非常適合以下人員閱讀:
零基礎的初學編程人員 初、中級程序開發人員
編程愛好者 想學編程的各企事業單位在職人員
大中專院校的教師和學生 相關培訓機構的教師和學員
I. 單片機C語言程序設計完全自學手冊的介紹
《單片機C語言程序設計完全自學手冊》是2008年電子工業出版社出版的圖書,作者是郭惠,吳迅。本書以「基礎、實用」為原則,通過基礎知識與大量實例結合的形式,詳細介紹了單片機C語言應用開發的各種方法和技巧。全書分為12章,前6章講述單片機概述硬體結構、指令系統、C語言程序設計基礎、常用開發工具、C語言與匯編混合編程等知識;後6章重點介紹單片機軟硬體開發流程、常用單元模塊設計、應用系統設計實例、擴展設計、系統設計經驗總結以及RTX51實時操作系統等內容。讀者通過學習,可以快速入門和提高。本書語言簡潔,內容安排從零開始、由淺入深、循序漸進。實例典型豐富,代表性和指導性強,涵蓋了單片機C語言開發的大多數應用領域和開發技術。同時本書對程序開發的關鍵細節做了深入解釋,程序代碼進行詳細注釋,利於讀者掌握牢固、學懂學透,達到舉一反三的效果。本書附有光碟,其中包括豐富的硬體原理圖和程序源代碼,方便讀者學習和參考。本書適合從事單片機系統開發的初級設計人員,以及計算機、電子信息及相關專業的在校大學生使用。
J. C語言學習手冊的目 錄
第1篇 基礎篇
第1章 初識C語言 16
1.1 C語言介紹 17
1.1.1 簡述編程語言 17
1.1.2 C語言的產生 18
1.1.3 C語言的特點 19
1.2 選擇C語言的理由 21
1.2.1 C語言的發展趨勢 21
1.2.2 C語言的成功案例 23
1.2.3 C語言的應用領域 25
1.3 如何學好C語言 25
1.3.1 確立學習態度 26
1.3.2 打好基礎 26
1.3.3 多請教、多交流 26
1.3.4 養成良好的編程習慣 27
1.3.5 多動手、勤思考 27
1.3.6 掌握學習方法 27
1.4 本章小結 28
第2章 C語言編程准備 29
2.1 編寫程序的格式 30
2.1.1 一個簡單的C程序 31
2.1.2 標識符與關鍵字 34
2.2 開發環境 37
2.2.1 Turbo C 2.0 38
2.2.2 Visual C++ 6.0 42
2.3 一個完整的C程序 48
2.4 實戰練習 52
2.4.1 編寫一個簡單的C程序 52
2.4.2 熟悉開發工具 53
2.5 本章小結 53
第3章 C語言的靈魂——演算法 54
3.1 演算法的基本概念 55
3.1.1 演算法的特徵 55
3.1.2 演算法的優劣 57
3.2 描述演算法 57
3.2.1 自然語言 58
3.2.2 描繪流程圖 58
3.2.3 繪制N-S流程圖 64
3.2.4 偽代碼 68
3.3 本章小結 69
第4章 常量和變數 70
4.1 了解數據類型 71
4.2 解讀常量 72
4.2.1 整型常量 72
4.2.2 實型常量 75
4.2.3 字元型常量 76
4.2.4 轉義字元 80
4.2.5 符號常量 81
4.2.6 情景應用一:用putchar函數輸出「I LOVE C」 82
4.2.7 情景應用二:printf函數結合轉義字元 83
4.3 變數 83
4.3.1 整型變數 84
4.3.2 情景應用:求出買水果一共花的錢數 86
4.3.3 實型變數 87
4.3.4 字元型變數 89
4.4 掌握混合運算 91
4.5 實戰練習 93
4.5.1 使用printf語句輸出變數 93
4.5.2 使用字元型變數輸出字元串 94
4.6 本章小結 94
第5章 表達式與運算符 95
5.1 解讀表達式 96
5.2 賦值運算符與賦值表達式 98
5.2.1 變數賦初值 98
5.2.2 自動類型轉換 100
5.2.3 強制類型轉換 100
5.3 掌握算術運算符與表達式 102
5.3.1 算術運算符 102
5.3.2 算術表達式 102
5.3.3 優先順序與結合性 104
5.3.4 自增自減運算符 105
5.3.5 情景應用:求運算後的4個變數的值 107
5.4 了解關系運算符與表達式 108
5.4.1 關系運算符 108
5.4.2 關系表達式 109
5.4.3 優先順序與結合性 110
5.5 解讀邏輯運算符與表達式 111
5.5.1 邏輯運算符 111
5.5.2 邏輯表達式 112
5.5.3 優先順序與結合性 112
5.6 運用位邏輯運算符與表達式 113
5.6.1 位邏輯運算符 114
5.6.2 位邏輯表達式 114
5.7 介紹逗號運算符與表達式 114
5.8 使用復合賦值運算符 116
5.9 判斷條件運算符 117
5.10 了解運算符的優先順序和結合性 118
5.11 實戰練習 119
5.11.1 使用復合賦值運算符求出計算結果 119
5.11.2 用自增、自減運算符求出計算結果 120
5.11.3 編寫簡單的計算加班工資程序 121
5.12 本章小結 122
第6章 輸入、輸出函數 123
6.1 解讀語句 124
6.1.1 表達式語句 124
6.1.2 空語句 124
6.1.3 復合語句 124
6.2 輸入、輸出字元數據 125
6.2.1 輸出字元數據 125
6.2.2 輸入字元數據 126
6.2.3 情景應用:使用getchar函數取消獲取Entet鍵 127
6.3 輸入、輸出字元串 128
6.3.1 使用字元串輸出函數 128
6.3.2 掌握字元串輸入函數 130
6.4 介紹格式輸出函數 131
6.5 講解格式輸入函數 134
6.6 應用順序程序設計 138
6.7 實戰練習 141
6.7.1 將輸入的小寫字元轉換為大寫字元 141
6.7.2 模擬工資計算器 142
6.7.3 輸入、輸出古人名言 142
6.8 本章小結 143
第7章 選擇結構程序設計 144
7.1 if選擇語句 145
7.2 if語句的不同形式 145
7.2.1 單條件單分支的if語句 146
7.2.2 單條件雙分支的if語句 149
7.2.3 多條件多分支的if語句 153
7.2.4 情景應用:輸入數值檢查字元類型 156
7.3 掌握if語句的嵌套形式 157
7.4 注意if語句的常見錯誤 160
7.4.1 使用分號的注意事項 161
7.4.2 條件放置注意事項 161
7.4.3 if和else的配對注意事項 162
7.4.4 大括弧的重要性 162
7.5 判斷分支選擇switch語句 163
7.5.1 switch語句的基本形式 163
7.5.2 多路開關模式的switch語句 167
7.6 區分if…else語句和switch語句 169
7.7 應用選擇結構程序 171
7.8 實戰練習 173
7.8.1 計算函數,求出Y值 173
7.8.2 輸出三個變數中最大的數 174
7.8.3 計算增加後的工資 175
7.9 本章小結 175
第8章 循環語句 176
8.1 編寫循環語句 177
8.2 實現while型循環 177
8.2.1 while循環語句的一般形式 178
8.2.2 情景應用:求出數值內的所有正整數的和 180
8.2.3 避免while循環語句的死循環 182
8.2.4 了解while循環語句的空循環體 183
8.2.5 注意while循環語句常見錯誤 183
8.3 解讀for型循環語句 185
8.3.1 for循環語句的一般形式 185
8.3.2 靈活多變的for循環語句 189
8.3.3 應用for語句中的逗號 192
8.4 介紹do-while語句 193
8.5 比較三種循環 195
8.6 運用循環嵌套 195
8.6.1 各種結構的循環嵌套 195
8.6.2 循環嵌套實例 197
8.7 轉移語句 199
8.7.1 goto語句 200
8.7.2 break語句 202
8.7.3 continue語句 203
8.8 區別三種跳轉語句 205
8.9 實踐練習 205
8.9.1 列印出大寫字母的ASCII碼對照表 205
8.9.2 列印出小寫字母的ASCII碼對照表 206
8.9.3 輸出0~100之間不能被3整除的數 207
8.10 本章小結 209
第2篇 核心篇
第9章 數組 212
9.1 介紹數組的概念 213
9.1.1 數組的分類 213
9.1.2 數組的維數 213
9.2 應用一維數組 214
9.2.1 一維數組的定義 214
9.2.2 一維數組的引用 215
9.2.3 一維數組的初始化 217
9.2.4 一維數組的應用 220
9.3 掌握二維數組 222
9.3.1 二維數組的定義 222
9.3.2 二維數組的引用 223
9.3.3 二維數組的初始化 223
9.3.4 二維數組的應用 227
9.4 解讀多維數組 228
9.5 使用字元數組 229
9.5.1 字元數組的定義 229
9.5.2 字元數組的引用 229
9.5.3 字元數組的初始化 229
9.5.4 字元數組的結束標志 231
9.5.5 字元數組的輸出 232
9.5.6 字元數組的輸入 233
9.5.7 輸出完整的帶有空格的字元串 234
9.5.8 字元數組的應用 235
9.6 字元串處理函數 236
9.6.1 字元串的復制 237
9.6.2 字元串的連接 238
9.6.3 字元串的比較 240
9.6.4 字元串大小寫轉換 241
9.6.5 獲得字元串長度 243
9.7 熟練應用數組 245
9.7.1 反轉輸出字元串 245
9.7.2 使用數組統計學生成績 246
9.7.3 情景應用:字元串的加密和解密 248
9.8 實踐練習 250
9.8.1 實現strcpy函數的功能 250
9.8.2 統計字元中各元素的個數 251
9.8.3 重新排列字元串 251
9.9 本章小結 252
第10章 函數 253
10.1 函數概述 254
10.2 定義函數 256
10.2.1 函數定義的形式 256
10.2.2 定義與聲明 259
10.3 了解返回語句 262
10.3.1 從函數返回 262
10.3.2 返回值 266
10.4 傳遞函數參數 269
10.4.1 形式參數與實際參數 269
10.4.2 數組作為函數參數 271
10.4.3 了解main的參數 276
10.5 調用函數 276
10.5.1 函數調用方式 277
10.5.2 嵌套調用 280
10.5.3 遞歸調用 282
10.6 靈活應用函數 285
10.6.1 函數的應用 285
10.6.2 情景應用:使用字元函數判斷輸入字元 290
10.7 實踐與練習 292
10.7.1 輸出較大的整數 292
10.7.2 求出10個學生的平均成績 292
10.7.3 驗證6174 293
10.8 本章小結 294
第11章 指針 296
11.1 了解指針相關概念 297
11.1.1 介紹地址與指針 297
11.1.2 解讀變數與指針 298
11.1.3 使用指針變數 299
11.1.4 指針自加自減運算 303
11.1.5 情景應用:輸出整型變數地址 304
11.2 掌握數組與指針 305
11.2.1 一維數組與指針 306
11.2.2 情景應用一:輸出數組元素 309
11.2.3 二維數組與指針 310
11.2.4 情景應用二:將一個3行5列的二維數組的
第二行元素輸出 313
11.2.5 字元串與指針 314
11.2.6 字元串數組 316
11.3 指向指針的指針 318
11.3.1 應用介紹指向指針的指針 318
11.3.2 情景應用:輸出偶數 320
11.4 作為函數參數的指針變數 321
11.5 返回指針值的函數 331
11.5.1 介紹返回指針值的函數 331
11.5.2 情景應用:求長方形的周長 332
11.6 指針數組作為main函數的參數 333
11.7 實戰練習 335
11.7.1 將數組中的元素值按照相反順序存放 335
11.7.2 將兩個字元串連接後輸出 336
11.7.3 使用指針實現字元串的復制 336
11.8 本章小結 337
第12章 結構體和共用體 338
12.1 應用結構體 339
12.1.1 結構體類型的概念 339
12.1.2 結構體變數的定義 340
12.1.3 結構體變數的引用 342
12.1.4 結構體類型的初始化 344
12.1.5 情景應用:輸出學生的信息 345
12.2 掌握結構體數組 348
12.2.1 定義結構體數組 348
12.2.2 初始化結構體數組 349
12.2.3 情景應用:輸出學生信息 351
12.3 解讀結構體指針 353
12.3.1 指向結構體變數的指針 353
12.3.2 指向結構體數組的指針 356
12.3.3 結構體作為函數參數 358
12.4 介紹包含結構的結構 360
12.5 應用共用體 362
12.5.1 共用體的概念 362
12.5.2 共用體變數的引用 363
12.5.3 共用體變數的初始化 364
12.5.4 共用體類型的數據特點 365
12.6 解讀枚舉類型 365
12.7 實戰練習 366
12.7.1 統計候選人的得票 366
12.7.2 師生信息存儲系統 367
12.7.3 計算學生的綜合成績 368
12.8 本章小結 368
第13章 鏈表與演算法 369
13.1 介紹鏈表 370
13.1.1 鏈表概述 370
13.1.2 創建動態鏈表 371
13.1.3 輸出鏈表 374
13.2 進行鏈表的相關操作 376
13.2.1 鏈表的插入操作 377
13.2.2 鏈表的刪除操作 380
13.3 運用數組排序演算法 384
13.3.1 選擇法排序 385
13.3.2 冒泡法排序 387
13.3.3 交換法排序 389
13.3.4 插入法排序 391
13.3.5 折半法排序 394
13.3.6 比較數組排序演算法 396
13.4 實戰練習 397
13.4.1 鏈表的刪除操作 397
13.4.2 使用選擇法排序 398
13.4.3 使用冒泡、交換、插入、折半等演算法進行排序 399
13.5 本章小節 399
第3篇 高級篇
第14章 位運算 402
14.1 解讀位與位元組 403
14.2 掌握位運算操作符 403
14.2.1 「與」運算符 404
14.2.2 「或」運算符 405
14.2.3 「取反」運算符 407
14.2.4 「異或」運算符 409
14.2.5 「左移」運算符 412
14.2.6 「右移」運算符 413
14.2.7 位運算復合賦值運算符 415
14.2.8 長度不同的數據進行位運算 415
14.3 循環移位 416
14.4 什麼是位域 418
14.4.1 位域的概念與定義 419
14.4.2 位域相關說明 420
14.5 實戰練習 421
14.5.1 求兩個數進行「與」和「或」運算後的結果 421
14.5.2 求出一個數「左移」和「右移」後的結果 422
14.5.3 求一個數「循環左移」和「循環右移」後的結果 422
14.6 本章小結 423
第15章 存儲管理 424
15.1 內存組織方式 425
15.1.1 了解內存組織方式 425
15.1.2 解讀堆與棧 425
15.2 動態管理 428
15.2.1 動態分配一段內存空間——malloc函數 428
15.2.2 動態分配連續內存空間數組——calloc函數 429
15.2.3 改變ptr指針指向空間大小——realloc函數 431
15.2.4 情景應用:使用realloc函數重新分配內存 432
15.2.5 釋放分配整型變數內存空間——free函數 432
15.3 內存丟失 433
15.4 變數的存儲類別 434
15.4.1 動態存儲與靜態存儲 435
15.4.2 修飾一個局部變數為自動的auto變數 435
15.4.3 聲明位置不同、意義不同的static變數 436
15.4.4 寄存器存儲類的register變數 437
15.4.5 外部存儲的extern變數 437
15.5 實戰練習 438
15.5.1 為數組動態分配內存 438
15.5.2 為數組動態分配並釋放內存 439
15.5.3 用靜態局部整型變數計算3的平方和立方 440
15.6 本章小結 440
第16章 函數類型和預處理 441
16.1 內部函數和外部函數 442
16.1.1 介紹內部函數 442
16.1.2 解讀外部函數 443
16.2 靈活使用宏定義 444
16.2.1 不帶參數的宏定義 445
16.2.2 帶參數的宏定義 446
16.3 編寫#include指令 448
16.4 掌握條件編譯 450
16.4.1 #if命令 450
16.4.2 #ifdef及#ifndef命令 453
16.4.3 #undef命令 455
16.4.4 #line命令 455
16.4.5 #pragma命令 456
16.5 實踐練習 457
16.5.1 求兩個數相乘的積 457
16.5.2 從3個數中找出最小數 457
16.5.3 從3個數中找出最大數 458
16.6 本章小結 459
第17章 讀寫文件 460
17.1 文件概述 461
17.2 掌握文件基本操作 462
17.3 運用文件指針 463
17.4 打開和關閉文件 464
17.4.1 文件的打開 464
17.4.2 文件的關閉 465
17.5 讀 寫 文 件 466
17.5.1 寫字元函數——fputc函數 466
17.5.2 讀字元函數——fgetc函數 468
17.5.3 寫字元串函數——fputs函數 469
17.5.4 讀字元串函數——fgets函數 470
17.5.5 格式化寫入函數——fprintf函數 472
17.5.6 格式化讀取函數——fscanf函數 474
17.5.7 數據塊讀寫函數——fread函數和fwrite函數 475
17.6 定位文件 478
17.6.1 隨機讀寫操作——fseek函數 479
17.6.2 返回位置指針——rewind函數 481
17.6.3 ftell函數 483
17.7 實踐練習 485
17.7.1 復制文件內容 485
17.7.2 保存學生信息 486
17.8 本章小結 487
第4篇 實戰篇
第18章 學生管理系統 490
18.1 分析需求 491
18.2 設計系統 491
18.3 功能模塊設計 492
18.3.1 功能選擇界面 492
18.3.2 錄入學生成績信息 494
18.3.3 查詢學生成績信息 496
18.3.4 刪除學生成績信息 497
18.3.5 修改學生成績信息 499
18.3.6 插入學生成績信息 501
18.3.7 統計學生人數 504
18.4 本章小結 505
附錄A 專業術語表 506