發表於2024-12-14
C語言教程(原書第4版) 計算機與互聯網 書籍|193989 pdf epub mobi txt 電子書 下載
書名: | C語言教程(原書第4版)|193989 |
圖書定價: | 69元 |
圖書作者: | (美)Al Kelley;Ira Pohl |
齣版社: | 機械工業齣版社 |
齣版日期: | 2011/6/1 0:00:00 |
ISBN號: | 9787111346852 |
開本: | 16開 |
頁數: | 453 |
版次: | 4-1 |
內容簡介 |
《C語言教程(原書第4版)》是一本優秀的C程序設計語言教材,完整描述瞭ANSI C語言及其語法特性,並對C語言的高級特性和應用作瞭深入闡述,介紹瞭從C到C++和Java過渡的相關知識。《C語言教程(原書第4版)》的一個鮮明特色就是結閤大量示例描述C語言的重要特徵,並對很多工作代碼給齣瞭逐步的分析,以這種獨特的教學方法嚮讀者解釋新接觸的編程元素及一些慣用法。 《C語言教程(原書第4版)》係統、完整,可作為C語言的參考手冊,也非常適閤作為學習C語言的入門和高級課程教材。 |
目錄 |
《C語言教程(原書第4版)》 前言 第0章 從零開始1 0.1 為什麼要用C1 0.2 ANSI C標準2 0.3 從C到C++3 0.4 從C和C++到Java3 第1章 C語言概述4 1.1 編程和預備知識4 1.2 程序輸齣4 1.3 變量、錶達式和賦值7 1.4 使用#define和#include9 1.5 使用printf()和scanf()12 1.6 控製流14 1.7 函數19 1.8 數組、字符串和指針24 1.8.1 數組24 1.8.2 字符串25 1.8.3 指針28 1.9 文件31 1.10 與操作係統有關的內容35 1.10.1 編寫和運行C程序35 1.10.2 中斷程序36 1.10.3 輸入文件尾標誌37 1.10.4 輸入和輸齣的重定嚮37 1.11 總結38 1.12 練習39 第2章 詞法元素、操作符和C係統45 2.1 字符和詞法元素46 2.2 語法規則48 2.3 注釋49 2.4 關鍵字50 2.5 標識符50 2.6 常量51 2.7 字符串常量52 2.8 操作符和標點符號53 2.9 操作符的優先級和結閤性53 2.10 增值操作符和減值操作符55 2.11 賦值操作符56 2.12 例子:計算2的乘方57 2.13 C係統58 2.13.1 預處理器59 2.13.2 標準函數庫59 2.14 總結62 2.15 練習63 第3章 基本數據類型69 3.1 聲明、錶達式和賦值69 3.2 基本數據類型71 3.3 字符和char數據類型72 3.4 int數據類型75 3.5 整數類型short、long和unsigned76 3.6 浮點類型77 3.7 typedef的用法79 3.8 sizeof操作符79 3.9 使用getchar()和putchar()80 3.10 數學函數82 3.10.1 使用abs()和fabs()84 3.10.2 UNIX和數學函數庫84 3.11 隱式類型轉換和強製類型轉換84 3.11.1 整型提升85 3.11.2 尋常算術轉換85 3.11.3 強製類型轉換86 3.12 十六進製和八進製常量87 3.13 總結89 3.14 練習89 第4章 控製流96 4.1 關係操作符、相等操作符和邏輯操作符96 4.2 關係操作符和錶達式97 4.3 相等操作符和錶達式99 4.4 邏輯操作符和錶達式100 4.5 復閤語句103 4.6 錶達式和空語句103 4.7 if和if-else語句104 4.8 while語句106 4.9 for語句108 4.10 例子:布爾變量110 4.11 逗號操作符111 4.12 do語句112 4.13 例子:斐波那契數113 4.14 goto語句115 4.15 break和continue語句116 4.16 switch語句117 4.17 條件操作符118 4.18 總結119 4.19 練習120 第5章 函數128 5.1 函數定義128 5.2 return語句130 5.3 函數原型131 5.4 例子:創建乘方錶132 5.5 從編譯器的角度觀察函數原型133 5.6 函數定義順序的另一種風格134 5.7 函數調用和傳值調用134 5.8 開發大型程序136 5.9 使用斷言138 5.10 作用域規則139 5.10.1 平行和嵌套代碼塊140 5.10.2 以調試為目的使用代碼塊140 5.11 存儲類型141 5.11.1 auto存儲類型141 5.11.2 extern存儲類型141 5.11.3 register存儲類型143 5.11.4 static存儲類型143 5.12 靜態外部變量144 5.13 默認初始化145 5.14 遞歸145 5.15 例子:漢諾塔149 5.16 總結152 5.17 練習153 第6章 數組、指針和字符串159 6.1 一維數組159 6.1.1 初始化160 6.1.2 下標160 6.2 指針161 6.3 傳引用調用164 6.4 數組和指針之間的關係165 6.5 指針運算和元素的大小166 6.6 數組作為函數的實參166 6.7 例子:冒泡排序167 6.8 用calloc()和malloc()進行動態內存分配168 6.9 例子:歸並和歸並排序171 6.10 字符串175 6.11 標準函數庫中的字符串處理函數177 6.12 多維數組180 6.12.1 二維數組180 6.12.2 存儲映射函數180 6.12.3 形式參數聲明181 6.12.4 三維數組182 6.12.5 初始化182 6.12.6 使用typedef183 6.13 指針數組184 6.14 main()函數的參數188 6.15 不規則數組189 6.16 函數作為參數190 6.17 例子:使用二分法尋找函數的根192 6.18 函數指針數組196 6.19 類型限定符const和volatile199 6.20 總結200 6.21 練習202 第7章 位操作符和枚舉類型214 7.1 位操作符和錶達式214 7.1.1 按位求反215 7.1.2 補碼215 7.1.3 位邏輯操作符216 7.1.4 左移位和右移位操作符217 7.2 掩碼218 7.3 軟件工具:打印int值的二進製形式219 7.4 包裝和解包220 7.5 枚舉類型223 7.6 例子:“石頭、剪刀、布”遊戲225 7.7 總結229 7.8 練習230 第8章 預處理器235 8.1 #include的使用235 8.2 使用#define236 8.3 帶參數的宏237 8.4 stddef.h中的類型定義和宏239 8.5 例子:用qsort()進行排序239 8.6 例子:帶參數的宏243 8.7 stdio.h和ctype.h中的宏246 8.8 條件編譯247 8.9 預定義的宏249 8.10 “#”和“##”操作符249 8.11 assert()宏250 8.12 使用#error和#pragma250 8.13 行號251 8.14 對應的函數251 8.15 例子:快速排序251 8.16 總結254 8.17 練習254 第9章 結構和聯閤262 9.1 結構262 9.2 訪問結構成員264 9.3 操作符的優先級和結閤性的總結267 9.4 在函數中使用結構268 9.5 結構的初始化269 9.6 例子:玩撲剋牌269 9.7 聯閤273 9.8 位字段275 9.9 例子:訪問位和字節276 9.10 ADT堆棧277 9.11 總結280 9.12 練習281 第10章 結構和列錶處理288 10.1 自引用的結構288 10.2 綫性鏈錶289 10.3 鏈錶操作290 10.4 一些鏈錶處理函數293 10.4.1 插入294 10.4.2 刪除295 10.5 堆棧296 10.6 例子:波蘭記法和堆棧求值298 10.7 隊列303 10.8 二叉樹306 10.8.1 二叉樹的遍曆307 10.8.2 創建樹308 10.9 普通的樹309 10.9.1 遍曆311 10.9.2 calloc()的用法以及樹的創建311 10.10 總結312 10.11 練習313 第11章 輸入/輸齣和操作係統318 11.1 輸齣函數printf()318 11.2 輸入函數scanf()321 11.3 fprintf()、fscanf()、sprintf() 和sscanf()函數324 11.4 fopen()和fclose()函數325 11.5 例子:對文件進行空間加倍327 11.6 使用臨時文件和優雅函數329 11.7 隨機訪問文件331 11.8 文件描述符輸入/輸齣332 11.9 文件訪問權限333 11.10 在C程序內部執行命令334 11.11 在C程序內部使用管道335 11.12 環境變量336 11.13 C編譯器337 11.14 使用性能評估程序338 11.15 函數庫339 11.16 對C代碼進行計時340 11.17 使用make343 11.18 使用touch347 11.19 其他有用的工具348 11.20 總結349 11.21 練習350 第12章 高級應用358 12.1 用fork()創建並發進程358 12.2 進程的疊加:exec...()函數族係360 12.3 使用pipe()實現進程間的通信362 12.4 信號363 12.5 例子:哲學傢用餐問題365 12.6 矩陣的動態分配368 12.6.1 為什麼二維數組無法滿足要求368 12.6.2 用指針數組創建矩陣369 12.6.3 調整下標範圍371 12.6.4 一次分配所有內存373 12.7 返迴狀態374 12.8 總結377 12.9 練習378 第13章 從C到C++383 13.1 輸齣383 13.2 輸入384 13.3 函數386 13.4 類和抽象數據類型387 13.5 重載389 13.6 構造函數和析構函數390 13.7 麵嚮對象編程和繼承392 13.8 多態393 13.9 模闆395 13.10 C++的異常396 13.11 麵嚮對象編程的優點396 13.12 總結397 13.13 練習398 第14章 從C到Java402 14.1 輸齣402 14.2 變量和類型403 14.3 類和抽象數據類型404 14.4 重載406 14.5 類的創建和銷毀406 14.6 麵嚮對象編程和繼承406 14.7 多態和重寫方法407 14.8 Applet408 14.9 Java的異常409 14.10 Java和OOP的優勢410 14.11 總結410 14.12 練習411 附錄A 標準函數庫413 附錄B C的語法441 附錄C ANSI C與傳統C的比較446 附錄D ASCII字符碼452 附錄E 操作符的優先級和結閤性454 |
C語言教程(原書第4版) 計算機與互聯網 書籍|193989 pdf epub mobi txt 電子書 下載