關閉 

由片語學習 C 程式設計

C Programming with phrases

    ※此商品已絕版

    結帳去

      

    內容簡介  |   作者介紹  |   目錄  |   同類推薦   |  購物說明

    內容簡介

    作者劉邦鋒教授,感念在臺大資訊系唸書時,教過他的老師們,回憶從課堂上學習到寫程式是多麼有趣的事情,能夠一寫就是三十年。他將這份熱誠投注在教學及寫作上,經過多年教學累積經驗,試教兩年,不斷精進修改,為所有想學好程式設計的學子朋友們設想,完成這本深入淺出的好書《由片語學習C程式設計》。

    程式設計是計算機科學的入門技術。透過程式設計,我們可以利用計算機進行大量計算。不僅理工科的同學需要學習程式設計,其他學科的學習者也可以利用程式設計幫助處理工作上的資料。藉著這本書將正確的程式設計技術傳播給廣大的讀者群,提升大家對學習程式設計的興趣。

    本書特色:
    1. 以片語為中心,依慣用寫法來引導初學者。
    2. 學習要點、風格要點、特殊符號等欄位,隨時提醒讀者各項重點。
    3. 整理各單元之關係圖,提供自主學習方法。
    4. 本書專屬網站https://sites.google.com/site/mycprogrammingbook/,提供補充材料、相關軟體及程式碼。

    本書編寫特點:
    本書的寫法是以片語為中心,也就是以慣用的寫法來引導初學者。在作者的教學經驗中,學生往往知道一個東西是作什麼的,但是卻不會實際運用。原因在於教學的時候往往著重個別觀念的解釋,而非個別觀念集合在一起時的互動關係,就好像狂背英文單字,卻不會作文一樣。本書採用 C 的片語教學,讓學生能用學到的片語組成完整的程式,就好像用英文片語組成文章一樣。

    這本書裡除了大量的片語及範例程式外,還有以下三個要項:
    ‧ 學習要點
    作者將其認為重要的觀念強調一次,叮嚀學習者務必理解所有的學習要點。

    ‧ 風格要點
    是關於如何寫出易於閱讀、理解及維護的程式。請在寫程式時確實遵守,養成良好的寫程式習慣。

    ‧ 特殊字元
    C 程式語言中大量使用了特殊字元,這些特殊字元遠比我們習慣的標點符號複雜。在遇到特別的字元時,已整理成特殊字元項目,提醒讀者注意。

    由於程式語言的系統相關部分會隨著時間而改變,因此作者還成立了一個網站。這個網站專門放這本書的補充材料,例如修正部分,軟體安裝,部分程式碼等。任何有關這本書的資訊都會放在這裡:https://sites.google.com/site/mycprogrammingbook/

    如此深深以學習者立場考量,引領我們進入程式設計的天地,《由片語學習C程式設計》絕對是您的首選之書。

    <TOP>

    作者介紹

    劉邦鋒

    臺灣大學資訊工程系教授。
    美國耶魯大學計算機科學博士。
    教授過計算機程式設計、高等程式設計、物件導向程式設計、平行程式設計等課程。
    2002至2005年擔任國際大學生程式競賽 (ACM-ICPC, International Collegiate Programming Contest) 臺灣大學代表隊教練,並於2004年獲得 ACM-ICPC 世界大賽第六名及亞洲第一名。
    2002年至今擔任國際奧林匹亞資訊競賽 (IOI, International Olympiad in Informatics) 臺灣代表隊指導老師。
    2002年至今擔任教育部全國大專電腦軟體設計競賽裁判。
    2006年至今擔任國際大學生程式競賽臺灣賽區裁判。
    2008年臺灣大學主辦時,擔任臺灣賽區裁判長。
    2008、2009、2011年獲臺灣大學教學優良獎。

    <TOP>

    詳細資料

    EAN / 9789860334647
    頁數 / 461
    裝訂 / 平裝
    級別 / 普
    語言 / 繁體/中文

    <TOP>

    目錄

    前言. . . . . .. . . . . . . . . .. . . . . . . . . . .. . . . ..7

    1 程式設計
    1.1 程式. . . . . . . . . .. . . . . . . . . . . . . . . . . 11
    1.2 設計. . . . . . . . . . .. . . . . . . . . . . . . . . 12

    2 基本程式架構
    2.1 程式骨架. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
    2.2 變數. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
    2.3 輸出. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
    2.4 輸入. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
    2.5 作業. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

    3 運算
    3.1 指定. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
    3.2 算術運算. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
    3.3 比較運算. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
    3.4 邏輯運算. . . . . . . . . . . . . . . . . . . . . . . .. . . . . . 38
    3.5 作業. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42

    4 判斷
    4.1 if 判斷. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
    4.2 switch判斷. . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
    4.3 作業. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62

    5 迴圈
    5.1 while 迴圈. . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
    5.2 for 迴圈. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
    5.3 do while 迴圈. . . . . . . . . . . . . . . . . . . . . . . . . 75
    5.4 使用break結束迴圈. . . . . . . . . . . .. .. . . . . . . . 77
    5.5 使用continue繼續迴圈. . . . . . . . . . .. . . . . . . . 79
    5.6 多重迴圈. . . . . . . . . . . . . . . . . . . . . .. . . . . . . . 81
    5.7 作業. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84

    6 陣列
    6.1 屬性. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
    6.2 一維陣列. . . . . . . . . . . . . . . . . . . . . .. . . . . . . . 92
    6.3 多維陣列. . . . . . . . . . . . . . . . . . . . . . .. . . . . . . 102
    6.4 作業. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114

    7 浮點數
    7.1 輸出與輸入. . . . . . . . . . . . . . . . . . . . . . . . . . . 124
    7.2 類別轉換. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
    7.3 計算. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
    7.4 作業. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130

    8 函式
    8.1 系統定義函式. . . . . . . . . . . . . . . . . . . . . . . . . 133
    8.2 使用者定義函式. . . . . . . . . . . . . . . . . . . . . . . 139
    8.3 不定個數參數. . . . . . . . . . . . . . . . . . . . . . . . . 149
    8.4 參數傳遞. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154
    8.5 作業. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162

    9 指標
    9.1 用法. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169
    9.2 參數傳遞. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175
    9.3 指標與陣列. . . . . . . . . . . . . . . . . . . . . . . . . . . 177
    9.4 回傳值. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181
    9.5 用途與限制. . . . . . . . . . . . . . . . . . . . . . . . . . . 183
    9.6 作業. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183

    10 字元
    10.1 宣告. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189
    10.2 輸出. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190
    10.3 字元常數. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191
    10.4 輸入. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195
    10.5 常用函式. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196
    10.6 作業. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202

    11 字串
    11.1 宣告. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209
    11.2 輸出. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 210
    11.3 字串常數. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211
    11.4 輸入. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213
    11.5 字元指標. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214
    11.6 常用函式. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 216
    11.7 作業. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 237

    12 宣告修飾
    12.1 short、long 及long long . . . . . . . . . . . . . . . . . 247
    12.2 signed及unsigned . . . . . . . . . . . . . . . . . . . . . . 248
    12.3 const . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 249
    12.4 static . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 254
    12.5 作業. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 256

    13 位元運算
    13.1 位元且. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 259
    13.2 位元或. . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . 261
    13.3 位元互補. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 262
    13.4 位元互斥或. . . . . . . . . . . . . . . . . . .. . . . . . . . . 263
    13.5 移位. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 265
    13.6 作業. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 266

    14 遞迴
    14.1 定義. . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . 271
    14.2 應用. . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . 273
    14.3 效能考量. . . . . . . . . . . . . . . . . . . . .. . . . . . . . 287
    14.4 作業. . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . 288

    15 結構
    15.1 定義. . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . 297
    15.2 欄位. . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . 299
    15.3 結構指標. . . . . . . . . . . . . . . . . . . . . . . . . . . . 304
    15.4 參數傳遞. . . . . . . . . . . . . . . . . . . . . . . . . . . . 305
    15.5 typedef . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 309
    15.6 作業. . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . 315

    16 檔案處理
    16.1 開啟與關閉檔案. . . . . . . . . . . . . . . . . . . . . . . 323
    16.2 文字檔案處理. . . . . . . . . . . . . . . . . . . . . . . . . 325
    16.3 二進制檔案處理. . . . . . . . . . . . . . . . . . . . . . . 334
    16.4 EOF測試. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 345
    16.5 作業. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 347

    17 資料結構
    17.1 動態記憶體配置. . . . . . . . . . . . . . .. . . . . . . . 355
    17.2 assert . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 356
    17.3 鏈結序列. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 357
    17.4 二元樹. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 367
    17.5 作業. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 377

    18 物件
    18.1 堆疊介紹. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 385
    18.2 堆疊的陣列實作. . . . . . . . . . . . . . . . . . . . . . . 386
    18.3 堆疊的使用. . . . . . . . . . . . . . . . . . . . . . . . . . . 389
    18.4 堆疊的鏈結序列實作. . . . . . . . . . . . . . . . . . . 393
    18.5 物件的優點. . . . . . . . . . . . . . . . . . . . . . . . . . . 395
    18.6 作業. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 396

    19 前置處理
    19.1 #include . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 401
    19.2 #define . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 401
    19.3 #if, #ifdef, #ifndef . . . . . . . . . .. . . . . . . . . 409
    19.4 #_ LINE_ , and_ FILE_ . . . . . . . . . . . . . . . . . 412
    19.5 ## . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 414
    19.6 作業. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 418

    20 C 標準程式庫
    20.1 qsort . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 423
    20.2 轉換函式. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 431
    20.3 隨機數. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 434
    20.4 exit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 435
    20.5 作業. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 437

    21 高等技術
    21.1 命令列參數. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 441
    21.2 導向. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 444
    21.3 全域變數. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 446
    21.4 作業. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 451

    22 不想教的東西
    22.1 goto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 453
    22.2 全域變數. . . . . . . . . . . . . . . . . . . . . . . . . . . . 457
    22.3 格式字串. . . . . . . . . . . . . . . . . . . . . . . . . . . . 459
    22.4 指標技巧. . . . . . . . . . . . . . . . . . . . . . . . . . . 459
    22.5 修改記憶體. . . . . . . . . . . . . . . . . . . . . . . . . . 459
    22.6 征服銀河系. . . . . . . . . . . . . . . . . . . . . . . . . . 459

    <TOP>

    如果你喜歡這商品,那你一定不能錯過...

    <TOP>

    購物說明

    退換貨說明

    如遇欲退換貨之情形,請於收貨日當天起算第7日(含)前以收執聯為憑,將商品與完整包裝(商品、附件、內外包裝、隨貨文件、贈品等)以掛號方式寄回灰熊愛讀書客服部,否則恕不接受退貨。有特殊外包裝之商品,一經拆封(除運送包裝外之一切包裝),恕不接受退貨。
    詳細退換貨須知請參考FAQ

    <TOP>