內容簡介
《計算機導論與C語言(第2版)》根據教育部計算機基礎教育教學指導委員會關於高等學校計算機基礎教學的基本要求編寫而成,全書共15章,分上、下篇。上篇為導論部分,包括計算機基礎知識、信息表示方法、計算機軟硬體系統的組成、Windows作業系統、多媒體技術和計算機網路等內容。下篇為C程式設計,包括C語言的常量、變數、表達式、程式控制語句等基礎知識,數組與指針、函式的基礎套用,並在此基礎上引入複雜數據類型、鍊表、檔案等高級套用,有利於學習者循序漸進地掌握程式設計方法。教材凝聚了作者多年的計算機教學經驗,體系完整,結構嚴謹,實用易學,注重套用,強調實踐,原理知識與套用技術緊密結合,教材中配有大量的例題、習題,連貫性強,因此特別適合作為高校理工類學生學習計算機導論與C語言課程的教材,亦可作為學習C語言的培訓教材或自學參考書。
圖書目錄
第1章 計算機基礎知識(1)
1.1 計算機的產生與分類(1)
1.2 計算機的發展趨勢(2)
1.3 計算機的套用(3)
習
題(4)
第2章 計算機中信息的表示(6)
2.1 數制(6)
2.1.1 數制的基本概念(6)
2.1.2 二進制及其運算(7)
2.2 不同數制間的轉換(9)
2.2.1 R進制數轉換為十進制數(9)
2.2.2 十進制數轉換為R進制數(9)
2.2.3 二進制數轉換為八進制數、十六進制數(11)
2.2.4 八進制數、十六進制數轉換為二進制數(12)
2.3 計算機中的數據及其編碼(12)
2.3.1 數據的單位(13)
2.3.2 常用的數據編碼(13)
2.3.3 計算機中數的表示(16)
習題(18)
第3章 計算機系統(20)
3.1 計算機硬體系統(20)
3.1.1 計算機硬體系統的基本組成(20)
3.1.2 計算機工作原理(21)
3.2 微型計算機硬體系統(21)
3.2.1 主機板(22)
3.2.2 中央處理器(23)
3.2.3 存儲器(24)
3.2.4 輸入/輸出設備(27)
3.2.5 I/O匯流排與I/O接口(31)
3.3 微型計算機的性能指標(33)
3.4 計算機軟體系統(34)
3.4.1 計算機軟體的概念(34)
3.4.2 計算機軟體的分類(35)
3.4.3 作業系統(36)
3.4.4 程式設計語言和語言處理程式(39)
3.4.5 數據管理(41)
習題(44)
第4章 Windows作業系統(48)
4.1 視窗基本操作(48)
4.2 Windows的檔案管理(49)
4.2.1 檔案的概念(49)
4.2.2 通過資源管理器管理檔案(50)
4.3 資源回收筒與剪貼簿(52)
4.3.1 資源回收筒(52)
4.3.2 剪貼簿(53)
4.4 漢字輸入(53)
4.4.1 輸入法的選用(53)
4.4.2 應該注意的問題(54)
習題(55)
第5章 多媒體技術(58)
5.1 多媒體技術概述(58)
5.2 數字媒體——聲音(59)
5.2.1 聲音的數位化(59)
5.2.2 音頻檔案格式(60)
5.2.3 聲音檔案的錄製和播放(61)
5.3 數字媒體——圖像(61)
5.3.1 有關色彩的基本常識(61)
5.3.2 圖像的數位化(62)
5.3.3 點陣圖與矢量圖(62)
5.3.4 數位化圖像的保存(64)
5.3.5 圖像檔案的查看和製作(64)
5.4 數字媒體——視頻(64)
5.4.1 視頻的數位化(64)
5.4.2 數位化視頻的保存(65)
5.4.3 視頻檔案的播放(65)
5.5 多媒體套用系統製作(66)
習題(67)
第6章 計算機網路技術(70)
6.1 計算機網路概述(70)
6.1.1 計算機網路的產生(70)
6.1.2 計算機網路分類(70)
6.2 計算機網路的組成(72)
6.2.1 計算機網路的硬體組成(72)
6.2.2 網路軟體構成(73)
6.3 Internet基礎(73)
6.3.1 TCP/IP協定(74)
6.3.2 Internet相關的地址(74)
6.3.3 Internet的服務(75)
6.3.4 常見的網路接入方法(79)
6.4 網路安全(79)
6.4.1 Internet網路面臨的攻擊(79)
6.4.2 網路控制安全機制(80)
6.4.3 計算機病毒(83)
6.4.4 計算機職業道德規範(84)
習題(85)
第7章 C語言概述(88)
7.1 程式與程式設計(88)
7.2 C語言的發展和特點(89)
7.2.1 C語言的發展(89)
7.2.2 C語言的特點(90)
7.3 C語言的程式結構及特點(91)
習題(93)
第8章 基本數據類型與運算(96)
8.1 數據類型的重要性(96)
8.2 C語言的基本數據類型(96)
8.3 標識符(98)
8.4 常量與變數(98)
8.4.1 常量(98)
8.4.2 符號常量(99)
8.4.3 變數(99)
8.4.4 變數的定義(100)
8.5 整型數據(100)
8.6 實型數據(102)
8.7 字元型數據(103)
8.8 變數賦值(106)
8.9 運算符和表達式(107)
8.9.1 算術運算符和算術表達式(107)
8.9.2 簡單賦值運算符和賦值表達式(110)
8.9.3 關係運算符和關係表達式(112)
8.9.4 邏輯運算符和邏輯表達式(113)
8.9.5 自增、自減運算符(115)
8.9.6 條件運算符和條件表達式(116)
8.9.7 逗號運算符和逗號表達式(118)
8.9.8 數據類型長度運算符(118)
8.9.9 算術自反賦值運算符(119)
8.10 運算符的結合性和優先權總結(120)
習題(121)
第9章 語句與流程控制(125)
9.1 三種基本的程式控制結構(125)
9.2 數據的輸入與輸出(125)
9.2.1 格式化輸出函式printf(126)
9.2.2 格式化輸入函式scanf(128)
9.3 字元輸入與輸出函式(131)
9.4 順序結構語句(132)
9.4.1 語句概述(132)
9.4.2 順序結構語句(132)
9.4.3 程式舉例(133)
9.5 選擇結構語句(135)
9.5.1 選擇性問題(135)
9.5.2 if條件語句的三種形式(136)
9.5.3 開關語句(switch)(141)
9.6 循環結構語句(143)
9.6.1 當型循環語句(while)(143)
9.6.2 步長型循環語句(for)(144)
9.6.3 do-while語句(146)
9.6.4 break和continue語句(148)
9.6.5 多重循環(149)
9.6.6 goto語句和標號(150)
9.7 程式設計方法(151)
9.7.1 枚舉原則(151)
9.7.2 歸納原則(153)
9.7.3 抽象原則(155)
9.8 上機練習(156)
習題(158)
第10章 數組與指針(164)
10.1 數組的引入與定義(164)
10.1.1 問題的引入(164)
10.1.2 一維數組的定義與存儲(165)
10.2 一維數組的使用(166)
10.2.1 一維數組初始化(166)
10.2.2 一維數組元素的引用(167)
10.2.3 一維數組套用舉例(168)
10.2.4 補充內容(173)
10.3 二維數組(177)
10.3.1 二維數組的定義及使用(177)
10.3.2 二維數組套用舉例(179)
10.4 字元串與字元數組(181)
10.4.1 引入字元串的原因(181)
10.4.2 字元串與字元數組的概念(181)
10.4.3 字元數組初始化(181)
10.4.4 字元串基本處理函式(183)
10.4.5 字元數組套用舉例(184)
10.5 指針(185)
10.5.1 指針的引入(186)
10.5.2 指針與指針變數(186)
10.5.3 指針的使用(187)
10.6 指針與一維數組(192)
10.7 指針與多維數組(193)
10.7.1 指針與二維數組(194)
10.7.2 通過指針訪問二維數組(195)
10.7.3 指向一維數組的指針變數(197)
10.8 指針數組與指針的指針(198)
10.8.1 指針數組(198)
10.8.2 指向指針的指針(200)
10.9 對指針的幾點說明(201)
習題(202)
第11章 函
數(211)
11.1 引入函式(211)
11.1.1 函式的概念(211)
11.1.2 使用函式的目的(212)
11.1.3 函式的分類(213)
11.2 函式的定義與說明(214)
11.2.1 自定義函式的定義(214)
11.2.2 自定義函式的說明(216)
11.2.3 關於函式的返回值(217)
11.3 函式調用(218)
11.3.1 函式調用的一般形式(218)
11.3.2 函式的調用方式(220)
11.3.3 函式參數傳遞(221)
11.3.4 返回運算結果(225)
11.3.5 指針作為函式的返回值(226)
11.4 函式指針(227)
11.4.1 函式指針變數定義(227)
11.4.2 函式指針變數的使用(228)
11.5 函式套用舉例(230)
習題(234)
第12章 複雜數據類型(240)
12.1 變數的存儲類別(240)
12.2 變數的生存期和作用域(240)
12.3 結構體與共用體(247)
12.3.1 結構體(247)
12.3.2 共用體(255)
12.4 枚舉類型(258)
12.5 用typedef定義類型(260)
12.6 位運算(261)
習題(266)
第13章 鍊表(270)
13.1 動態記憶體分配與回收(270)
13.1.1 空間的申請(270)
13.1.2 空間的釋放(271)
13.2 指針與鍊表(272)
13.2.1 鍊表的引入(272)
13.2.2 鍊表上的基本操作(273)
13.2.3 套用舉例(280)
習題(286)
第14章 編譯預處理與複雜函式(289)
14.1 編譯預處理(289)
14.1.1 宏替換(289)
14.1.2 檔案包含(292)
14.1.3 條件編譯(294)
14.2 命令行參數(296)
14.3 函式的遞歸調用(298)
14.3.1 遞歸的概念(298)
14.3.2 遞歸調用(298)
14.4 指針型函式(302)
14.4.1 指針型函式的定義(302)
14.4.2 指針型函式的調用(303)
14.5 外部函式(304)
14.6 多個源程式檔案的編譯連線(306)
習題(306)
第15章 檔案的操作(311)
15.1 檔案操作的引入(311)
15.2 檔案的基本概念(311)
15.2.1 C語言支持的檔案格式(311)
15.2.2 緩衝檔案系統(313)
15.2.3 檔案操作的基本思路(314)
15.3 檔案基本操作(314)
15.3.1 檔案指針(314)
15.3.2 檔案的打開與關閉(315)
15.3.3 位元組級的檔案的讀/寫(317)
15.3.4 檔案結束判斷函式(319)
15.4 字元串級的檔案讀/寫(321)
15.4.1 fgets()函式(321)
15.4.2 fputs()函式(321)
15.5 檔案的格式化讀/寫(322)
15.5.1 fprintf()函式(322)
15.5.2 fscanf()函式(323)
15.6 記錄級的檔案讀/寫(324)
15.6.1 fread()函式(324)
15.6.2 fwrite()函式(324)
15.7 檔案位置指針的移動(326)
15.7.1 rewind()函式(326)
15.7.2 ftell()函式(327)
15.7.3 fseek()函式(327)
習題(330)
附錄A VC集成環境使用指南(335)
附錄B 運算符和結合性(341)
附錄C 考 試 題(343)