![](/c49/99/10027970376729.jpg)
店鋪:遼寧音像出版社圖書專營店 出版社:電子工業出版社 ISBN:9787121316814 商品編碼:10027970376729 包裝:平裝 出版時間:2017-06-01 作者:Paul
"基本信息 書名:C語言大學教程 代碼: 作者:(美)Paul Deitel(保羅. 戴特爾),Harvey Deitel(哈維. 戴特爾) 出版社:電子工業出版社 出版日期:2017-06-01 ISBN:9787121316814 字數:1547100 頁碼:764 版次:8 裝幀:平裝 開本:16開 商品重量: 編輯推薦
學習C語言的經典教材之一: 提供了很多的基礎的、覆蓋面很廣的實例。 綜合了C99和C11兩個標準的功能。 增加“安全的C程序設計”章節。 所有代碼都通過GNU gcc、Visual C 或者Xcode LLVM的測試 所有代碼都采用GNU gdb、Visual C 或者Xcode來調試。 緊扣時代發展的“更上一層樓”課後練習。 介紹多線程和多核程序設計 內容提要
本書是優選的C語言教程之一。全書繫統地介紹了4種當今流行的程序設計方法――面向過程、基於對像、面向對像以及泛型編程,內容全面、生動、易懂,作者由淺入深地介紹了結構化編程及軟件工程的基本概念,從簡單的概念到很終的完整的語言描述,清晰、準確、透徹、詳細地講解了C語言,尤其注重程序設計思想和方法的介紹。相對於上一版,這一版在內容方面新增加了C安全程序設計、“更上一層樓”練習集,更新了C++和面向對像程序設計、基於Allegro的遊戲編程、C99標準介紹等內容。 目錄
目 錄 章 計算機、因特網和萬維網導論1 1.1 引言2 1.2 計算機硬件和軟件2 1.2.1 摩爾定律2 1.2.2 計算機組成3 1.3 數據的層次結構3 1.4 機器語言、彙編語言和高級語言5 1.5 C程序設計語言6 1.6 C標準庫7 1.7 C 和其他基於C的程序設計語言8 1.8 對像技術8 1.8.1 對像——以汽車為例9 1.8.2 方法與類9 1.8.3 實例化9 1.8.4 軟件重用9 1.8.5 消息與方法調用9 1.8.6 屬性與實例變量9 1.8.7 封裝與信息隱藏10 1.8.8 繼承10 1.9 典型的C程序開發環境10 1.9.1 步:創建一個C程序11 1.9.2 第2步和第3步:預處理及編譯一個C程序11 1.9.3 第4步:鏈接11 1.9.4 第5步:裝載11 1.9.5 第6步:執行12 1.9.6 程序運行時可能會出現的問題12 1.9.7 標準輸入、標準輸出和標準錯誤流12 1.10 在Windows、Linux和Mac OS X上測試並運行一個C應用程序12 1.10.1 在Windows命令提示符下運行一個C應用程序13 1.10.2 使用Linux中的GNU C來運行一個C應用程序15 1.10.3 使用Mac OS X終端來運行一個C應用程序17 1.11 操作繫統19 1.11.1 Windows —— 一個專有的操作繫統19 1.11.2 Linux —— 一個開源的操作繫統19 1.11.3 蘋果公司的Mac OS X;面向iPhone、iPad 和iPod Touch的iOS操作繫統20 1.11.4 谷歌公司的Android操作繫統20 1.12 因特網和萬維網20 1.12.1 因特網:計算機網絡的網絡21 1.12.2 萬維網:讓因特網對用戶更友好21 1.12.3 萬維網服務21 1.12.4 Ajax23 1.12.5 物聯網23 1.13 一些重要的軟件技術23 1.14 跟上信息技術的發展24 第2章 C語言程序設計入門28 2.1 引言28 2.2 一個簡單的C程序:打印一行文字28 2.3 另一個簡單的C程序:兩個整數求和31 2.4 的基本概念35 2.5 C語言中的算術運算35 2.6 做出決策:相等和關繫運算符38 2.7 安全的C程序設計41 第3章 結構化的C程序設計51 3.1 引言51 3.2 算法51 3.3 偽代碼52 3.4 控制結構52 3.5 if條件語句54 3.6 if…else條件語句54 3.7 while循環語句57 3.8 算法設計案例1:計數控制的循環58 3.9 自頂向下、逐步求精的算法設計案例2:標記控制的循環60 3.10 自頂向下、逐步求精的算法設計案例3:嵌套控制結構65 3.11 賦值運算符67 3.12 增1和減1運算符68 3.13 安全的C程序設計70 第4章 C程序控制84 4.1 引言84 4.2 循環的基本原理84 4.3 計數控制的循環85 4.4 for循環語句86 4.5 for語句:注意事項88 4.6 使用 for語句的例子89 4.7 switch多重選擇語句91 4.8 do…while循環語句96 4.9 break和continue語句97 4.10 邏輯運算符98 4.11 區分相等運算符(= =)和賦值運算符(=)100 4.12 結構化程序設計小結101 4.13 安全的C程序設計105 第5章 C函數117 5.1 引言117 5.2 C語言中的程序模塊117 5.3 數學庫函數118 5.4 函數119 5.5 函數定義120 5.5.1 square函數120 5.5.2 mamum函數123 5.6 函數原型:一個深入的剖析123 5.7 函數調用堆棧及活動記錄堆棧幀125 5.8 頭文件128 5.9 按值或按引用傳遞參數129 5.10 數的生成129 5.11 案例分析:運氣遊戲;引入enum133 5.12 存儲類型135 5.13 作用域的規定137 5.14 遞歸139 5.15 遞歸應用案例:斐波那契數列142 5.16 遞歸與迭代144 5.17 安全的C程序設計146 第6章 C數組161 6.1 引言162 6.2 數組162 6.3 數組定義163 6.4 數組實例163 6.4.1 定義一個數組並用循環結構來設素值163 6.4.2 在定義語句中用一個初始值列表來初始化一個數組164 6.4.3 用符號常量來定義數組的大小並通過計算來初始素165 6.4.4 素值求和166 6.4.5 用數組來統計民意調查的結果166 6.4.6 用直方圖來展素值168 6.4.7 用數組來統計投擲骰子60 000 000次的結果169 6.5 用字符數組來存儲和處理字符串170 6.5.1 定義一個字符串來初始化一個字符數組170 6.5.2 用一個字符初始化列表來初始化一個字符數組170 6.5.3 訪問一個字符串中的字符170 6.5.4 針對一個字符數組的輸入170 6.5.5 將一個代表字符串的字符數組輸出171 6.5.6 字符數組的演示171 6.6 靜態局部數組和自動局部數組171 6.7 將數組傳遞給函數173 6.8 數組排序176 6.9 案例分析:用數組來計算平均值、中值和眾數178 6.10 數組查找181 6.10.1 線性查素181 6.10.2 折半查素182 6.11 多下標數組185 6.11.1 雙下標數組概述185 6.11.2 雙下標數組的初始化186 6.11.3 素值187 6.11.4 計算雙下標數組素值的總和187 6.11.5 對雙下標數組的處理188 6.12 可變長數組190 6.13 安全的C程序設計192 第7章 C指針207 7.1 引言207 7.2 指針變量的定義和初始化208 7.3 指針運算符208 7.4 按引用向函數傳遞實參210 7.5 對指針使用const限定符213 7.5.1 用指向可變數據的可變指針將字符串中的字符改成大寫214 7.5.2 用指向常量數據的可變指針逐個打印字符串中的字符215 7.5.3 試圖修改指向可變數據的常量指針217 7.5.4 試圖修改指向常量數據的常量指針217 7.6 采用按引用傳遞的冒泡排序218 7.7 sizeof運算符220 7.8 指針表達式和指針算術運算222 7.8.1 指針算術運算中可使用的運算符222 7.8.2 將指針對準一個數組222 7.8.3 給指針加上一個整數222 7.8.4 給指針減去一個整數223 7.8.5 指針增1或減1223 7.8.6 從一個指針中減去另一個指針223 7.8.7 將一個指針賦予另一個指針223 7.8.8 指向void的指針224 7.8.9 指針的比較224 7.9 指針和數組的關繫224 7.9.1 指針/偏移量表示法224 7.9.2 指針/下標表示法225 7.9.3 不能用指針算術運算來修改數組名225 7.9.4 指針下標和指針偏移量的使用演示225 7.9.5 用數組和指針實現字符串的復制226 7.10 指針數組227 7.11 案例研究:模擬撲克牌的洗牌和發牌228 7.12 指向函數的指針232 7.12.1 按升序或降序進行排序232 7.12.2 使用函數指針來創建一個菜單驅動的繫統234 7.13 安全的C程序設計236 第8章 C字符和字符串252 8.1 引言252 8.2 字符串和字符基礎253 8.3 字符處理函數庫254 8.3.1 函數isdigit,isalpha,isalnum和isxdigit255 8.3.2 函數islower,isupper,tolower和toupper256 8.3.3 函數isspace,istrl,ispunct,isprint和isgraph257 8.4 字符串轉換函數258 8.4.1 函數strtod258 8.4.2 函數strtol259 8.4.3 函數strtoul260 8.5 標準輸入/輸出庫函數260 8.5.1 函數fgets和putchar261 8.5.2 函數getchar261 8.5.3 函數sprintf262 8.5.4 函數sscanf263 8.6 字符串處理函數庫中的字符串處理函數263 8.6.1 函數strcpy和 strncpy264 8.6.2 函數strcat和 strncat264 8.7 字符串處理函數庫中的比較函數265 8.8 字符串處理函數庫中的查找函數266 8.8.1 函數strchr267 8.8.2 函數strcspn268 8.8.3 函數strpbrk268 8.8.4 函數strrchr268 8.8.5 函數strspn269 8.8.6 函數strstr269 8.8.7 函數strtok270 8.9 字符串處理函數庫中的內存處理函數271 8.9.1 函數memcpy271 8.9.2 函數memmove272 8.9.3 函數memcmp272 8.9.4 函數memchr273 8.9.5 函數memset273 8.10 字符串處理函數庫中的其他函數274 8.10.1 函數strerror274 8.10.2 函數strlen274 8.11 安全的C程序設計275 第9章 C格式化輸入/輸出285 9.1 引言285 9.2 流286 9.3 用printf函數實現格式化輸出286 9.4 打印整數286 9.5 打印浮點數287 9.5.1 轉換說明符e,E或f288 9.5.2 轉換說明符g或G288 9.5.3 浮點數轉換說明符的使用演示288 9.6 打印字符串或字符289 9.7 其他的轉換說明符289 9.8 帶域寬和精度的打印290 9.8.1 在打印整數時指定域寬290 9.8.2 在打印整數、浮點數和字符串時指定精度291 9.8.3 同時指定域寬和精度292 9.9 在printf函數的格式控制字符串中使用標記292 9.9.1 右對齊和左對齊292 9.9.2 用與不用 標記來打印正數和負數293 9.9.3 使用空格標記293 9.9.4 使用#標記293 9.9.5 使用0標記294 9.10 打印文本和轉義序列294 9.11 用scanf函數讀取格式化的輸入294 9.11.1 scanf的語法295 9.11.2 scanf的轉換說明符295 9.11.3 用scanf來讀入整數295 9.11.4 用scanf來讀入浮點數296 9.11.5 用scanf來讀入字符和字符串296 9.11.6 在scanf中使用掃描集297 9.11.7 在scanf中指定域寬298 9.11.8 在輸入流中忽略掉特定字符298 9.12 安全的C程序設計299 0章 結構體、共用體、位操作和枚舉類型305 10.1 引言306 10.2 結構體的定義306 10.2.1 自引用結構體306 10.2.2 定義結構體類型的變量307 10.2.3 結構體標記名307 10.2.4 可對結構體實施的操作307 10.3 結構體的初始化308 10.4 用.和?>訪問結構體成員308 10.5 在函數中使用結構體310 10.6 typ 作者介紹
Paul Deitel和Harvey Deitel是全球的編程語言教材和專業圖書作家,“How to Program”繫列是其 負盛名的一套計算機編程教材,已經銷售近40年,並被翻譯成中文在內的十幾種語言。他們成立的Deitel & Associates公司是一家國際知名的企業培訓和寫作公司, 專門進行計算機編程語言、對像技術、移動應用開發及Inter和Web軟件技術方面的培訓和寫作,出版了的編程專業的大學教材、 專業圖書以及LiveLessons視頻課程。 蘇小紅,哈爾濱工業大學計算機學院博士生導師,計算機應用技術專家,研究領域主要是色彩匹配,信息融合,空間計算,人工神經網絡,進化算法,計算機圖形學,灰色預測,彩色圖像處理等。 序言
" |