注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當前位置: 首頁出版圖書科學技術計算機/網(wǎng)絡軟件與程序設計C/C++及其相關21天學通C語言

21天學通C語言

21天學通C語言

定 價:¥52.00

作 者: (美)Bradley L. Jones,(美)Peter Aitken著;信達工作室譯
出版社: 人民郵電出版社
叢編項:
標 簽: C語言 程序設計

ISBN: 9787115111449 出版時間: 2003-01-01 包裝: 膠版紙
開本: 26cm+光盤1片 頁數(shù): 512 字數(shù):  

內(nèi)容簡介

  本書譯自《Teach Yourself C in 21 Days》第6版,該書的前五版都登上了暢銷書排行榜,是初學者學習C語言的經(jīng)典之作。本版按最新的標準(ISO/IEC:9899-1999),以循序漸進的方式介紹了C語言編程方面的知識,并提供了豐富的實例和大量的練習。通過學習實例,并將所學知識用于完成練習,讀者將逐步了解、熟悉并精通C語言。本書包括四周的課程,前三周詳細介紹了C語言,第四周是附加課程,簡要地介紹了最流行的面向?qū)ο笳Z言——C++、Java和C#,附加課程的內(nèi)容在光盤中以pdf格式文件提供。第一周的課程介紹了C語言程序的基本元素,包括變量、常量、語句、表達式、函數(shù)和循環(huán);第二周介紹了數(shù)組、指針、字符和字符串、結(jié)構和共用體、變量的作用域、輸入/輸出等;第三周介紹了有關指針和函數(shù)的高級主題、磁盤文件讀寫、字符串操縱函數(shù)、函數(shù)庫、內(nèi)存管理以及編譯器的高級用法等。本書是為初中級程序員編寫的,可作為學習C語言的教程或參考資料。

作者簡介

  Bradley L.Jones在internet.com網(wǎng)站就職,負責管理Earth Web 軟件開發(fā)頻道,包括諸如Dev-eloper.com、CodeGurn.com和Gamelan.com等網(wǎng)站。 Bradley領導開發(fā)了用于各種平臺(從Palm OS到大型機系統(tǒng))的小型和分布式系統(tǒng)。Bradley擁有使用C、C#、C++、XML、SQL Server、PowerBuil-der、Visual Basic、ASP和Satellite Forms等工具進行開發(fā)工作的經(jīng)驗。他編寫的其他圖書包括《Teach Yourself Advanced C in 21 Days》和《21天學通C#》。

圖書目錄

第一周課程
第1天課程 C語言初步 
1.1 C語言簡史 
1.2 為何要使用C語言 
1.3 編程前的準備工作 
1.4 程序開發(fā)周期 
1.4.1 創(chuàng)建源代碼 
1.4.2 編譯源代碼 
1.4.3 鏈接以創(chuàng)建可執(zhí)行文件 
1.4.4 結(jié)束開發(fā)周期 
1.5 第一個C語言程序 
1.5.1 輸入并編譯hello.c 
1.6 總結(jié) 
1.7 問與答 
1.8 作業(yè) 
1.8.1 小測驗 
1.8.2 練習 
TYPE&RUN1 打印程序清單 
第一個TYPE&RUN 
第2天課程 C語言程序的組成部分 
2.1 一個簡短的C語言程序 
2.2 程序的組成部分 
2.2.1 main()函數(shù)(第8~23行) 
2.2.2 #include編譯指令(第2行) 
2.2.3 變量定義(第4行) 
2.2.4 函數(shù)原型(第6行) 
2.2.5 程序語句(第11、12、15、16、19、20、22和28行) 
2.2.6 函數(shù)定義(第26~29行) 
2.2.7 程序注釋(第1、10、14、18和25行) 
2.2.8 使用花括號(第9、23、27和29行) 
2.2.9 運行程序 
2.2.10 有關精度的說明 
2.3 重溫程序的組成部分 
2.4 總結(jié) 
2.5 問與答 
2.6 作業(yè) 
2.6.1 小測驗 
2.6.2 練習 
第3天課程 存儲信息:變量和常量 
3.1 計算機內(nèi)存 
3.2 使用變量存儲信息 
3.2.1 變量名 
3.3 數(shù)值變量的類型 
3.3.1 變量聲明 
3.3.2 typedef關鍵字 
3.3.3 初始化變量 
3.4 常量 
3.4.1 字面常量 
3.4.2 符號常量 
3.5 總結(jié) 
3.6 問與答 
3.7 作業(yè) 
3.7.1 小測驗 
3.7.2 練習 
第4天課程 語句、表達式和運算符 
4.1 語句 
4.1.1 空白對語句的影響 
4.1.2 創(chuàng)建空語句 
4.1.3 使用復合語句 
4.2 表達式 
4.2.1 簡單表達式 
4.2.2 復雜表達式 
4.3 運算符 
4.3.1 賦值運算符 
4.3.2 數(shù)學運算符 
4.3.3 運算符優(yōu)先級和圓括號 
4.3.4 子表達式的計算順序 
4.3.5 關系運算符 
4.4 if語句 
4.4.1 else子句 
4.5 判斷關系表達式 
4.5.1 關系運算符的優(yōu)先級 
4.6 邏輯運算符 
4.7 再談true/false值 
4.7.1 運算符的優(yōu)先級 
4.7.2 復合賦值運算符 
4.7.3 條件運算符 
4.7.4 逗號運算符 
4.8 再談運算符優(yōu)先級 
4.9 總結(jié) 
4.10 問與答 
4.11 作業(yè) 
4.11.1 小測驗 
4.11.2 練習 
TYPE&RUN2 猜數(shù)游戲
第5天課程 使用函數(shù)封裝代碼 
5.1 函數(shù)是什么 
5.1.1 函數(shù)的定義 
5.1.2 函數(shù)的用法 
5.2 函數(shù)的工作原理 
5.3 函數(shù)和結(jié)構化編程 
5.3.1 結(jié)構化編程的優(yōu)點 
5.3.2 規(guī)劃結(jié)構化程序 
5.3.3 從頂向下的方法 
5.4 編寫函數(shù) 
5.4.1 函數(shù)頭 
5.4.2 函數(shù)的返回類型 
5.4.3 函數(shù)名 
5.4.4 參數(shù)列表 
5.4.5 函數(shù)體 
5.4.6 函數(shù)原型 
5.5 將參數(shù)傳遞給函數(shù) 
5.6 調(diào)用函數(shù) 
5.6.1 遞歸 
5.7 函數(shù)的位置 
5.8 內(nèi)聯(lián)函數(shù) 
5.9 總結(jié) 
5.10 問與答 
5.11 作業(yè) 
5.11.1 小測驗 
5.11.2 練習 
第6天課程 基本的程序流程控制 
6.1 數(shù)組的基本知識 
6.2 控制程序的執(zhí)行
6.2.1 for語句
6.2.2 嵌套for語句 
6.2.3 while語句 
6.2.4 嵌套while語句 
6.2.5 do…while循環(huán) 
6.3 嵌套循環(huán)
6.4 總結(jié)
6.5 問與答
6.6 作業(yè)
6.6.1 小測驗 
6.6.2 練習 
第7天課程 信息讀寫基礎 
7.1 在屏幕上顯示信息 
7.1.1 printf()函數(shù) 
7.1.2 格式化字符串 
7.1.3 轉(zhuǎn)義序列 
7.1.4 使用puts()顯示消息
7.2 使用scanf()函數(shù)輸入數(shù)值數(shù)據(jù)
7.3 三字符序列
7.4 總結(jié) 
7.5 問與答 
7.6 作業(yè) 
7.6.1 小測驗 
7.6.2 練習 
第一周復習 
第二周課程
第8天課程 使用數(shù)值數(shù)組
8.1 數(shù)組是什么
8.1.1 一維數(shù)組
8.1.2 多維數(shù)組 
8.2 命名和聲明數(shù)組 
8.2.1 初始化數(shù)組
8.2.2 初始化多維數(shù)組
8.2.3 數(shù)組的最大長度
8.3 總結(jié) 
8.4 問與答 
8.5 作業(yè) 
8.5.1 小測驗 
8.5.2 練習 
第9天課程 指針 
9.1 指針是什么 
9.1.1 計算機內(nèi)存 
9.1.2 創(chuàng)建指針 
9.2 指針和簡單變量 
9.2.1 聲明指針 
9.2.2 初始化指針 
9.2.3 使用指針 
9.3 指針和變量類型 
9.4 指針和數(shù)組 
9.4.1 作為指針的數(shù)組名 
9.4.2 數(shù)組元素的存儲 
9.4.3 指針算術 
9.5 有關指針的注意事項 
9.6 數(shù)組下標表示法和指針 
9.7 將數(shù)組傳遞給函數(shù) 
9.8 總結(jié) 
9.9 問與答 
9.10 作業(yè) 
9.10.1 小測驗 
9.10.2 練習 
TYPE&RUN3 讓程序暫停 
第10天課程 字符和字符串 
10.1 char數(shù)據(jù)類型 
10.2 使用字符變量 
10.3 使用字符串 
10.3.1 字符數(shù)組 
10.3.2 初始化字符數(shù)組 
10.4 字符串和指針 
10.5 不存儲在數(shù)組中的字符串 
10.5.1 編譯時分配字符空間 
10.5.2 malloc()函數(shù) 
10.5.3 使用malloc()函數(shù) 
10.6 顯示字符串和字符 
10.6.1 puts()函數(shù) 
10.6.2 printf()函數(shù) 
10.7 從鍵盤讀取字符串 
10.7.1 使用gets()函數(shù)輸入字符串 
10.7.2 使用scanf()函數(shù)輸入字符串 
10.8 總結(jié) 
10.9 問與答 
10.10 作業(yè)
10.10.1 小測驗
10.10.2 練習 
第11天課程 結(jié)構、共用體和TypeDef 
11.1 簡單結(jié)構 
11.1.1 定義和聲明結(jié)構 
11.1.2 存取結(jié)構的成員 
11.2 復雜結(jié)構 
11.2.1 包含其他結(jié)構的結(jié)構 
11.2.2 包含數(shù)組的結(jié)構 
11.3 結(jié)構數(shù)組 
11.4 初始化結(jié)構 
11.5 結(jié)構和指針 
11.5.1 將指針作為結(jié)構的成員 
11.5.2 創(chuàng)建指向結(jié)構的指針 
11.5.3 使用指針和結(jié)構數(shù)組 
11.5.4 將結(jié)構作為參數(shù)傳遞給函數(shù) 
11.6 共用體 
11.6.1 定義、聲明和初始化共用體
11.6.2 存取共用體的成員
11.7 使用typedef給結(jié)構創(chuàng)建別名 
11.8 總結(jié) 
11.9 問與答 
11.10 作業(yè) 
11.10.1 小測驗 
11.10.2 練習 
第12天課程 變量作用域 
12.1 作用域是什么 
12.1.1 演示作用域 
12.1.2 作用域為何重要 
12.2 外部變量 
12.2.1 外部變量的作用域 
12.2.2 何時使用外部變量 
12.2.3 extern關鍵字 
12.3 局部變量
12.3.1 靜態(tài)變量和動態(tài)變量
12.3.2 函數(shù)參數(shù)的作用域
12.3.3 外部靜態(tài)變量
12.3.4 寄存器變量
12.4 局部變量和main()函數(shù) 
12.5 應使用哪種存儲類型 
12.6 局部變量和代碼塊 
12.7 總結(jié) 
12.8 問與答 
12.9 作業(yè) 
12.9.1 小測驗 
12.9.2 練習 
TYPE&RUN4 機密消息 
第13天課程 高級程序流程控制
13.1 提早結(jié)束循環(huán)
13.1.1 break語句
13.1.2 continue語句
13.2 goto語句
13.3 死循環(huán) 
13.4 switch語句
13.5 退出程序 
13.5.1 exit()函數(shù) 
13.6 在程序中執(zhí)行操作系統(tǒng)命令 
13.7 總結(jié) 
13.8 問與答
13.9 作業(yè)
13.9.1 小測驗
13.9.2 練習
第14天課程 操縱屏幕、打印機和鍵盤
14.1 流和C語言
14.1.1 何為程序的輸入/輸出
14.1.2 什么是流
14.1.3 文本流和二進制流
14.1.4 預定義的流
14.2 使用C語言的流函數(shù)
14.2.1 例子
14.3 讀取鍵盤輸入
14.3.1 字符輸入
14.3.2 格式化輸入
14.4 控制屏幕輸出 
14.4.1 使用putchar()、putc()和fputc()輸出字符 
14.4.2 使用puts()和fputs()輸出字符串 
14.4.3 使用printf()和fprintf()格式化輸出 
14.5 重定向輸入/輸出 
14.5.1 重定向輸入 
14.6 何時使用fprintf() 
14.6.1 使用stderr 
14.7 總結(jié) 
14.8 問與答 
14.9 作業(yè) 
14.9.1 小測驗 
14.9.2 練習 
第二周復習 
第三周課程
第15天課程 有關指針的高級主題 
15.1 聲明指向指針的指針 
15.2 指針和多維數(shù)組 
15.3 指針數(shù)組 
15.3.1 復習字符串和指針 
15.3.2 聲明char類型指針數(shù)組 
15.3.3 范例 
15.4 函數(shù)指針
15.4.1 聲明函數(shù)指針
15.4.2 初始化并使用函數(shù)指針
15.5 鏈表 
15.5.1 有關鏈表的基本知識 
15.5.2 使用鏈表 
15.5.3 演示簡單鏈表 
15.5.4 實現(xiàn)鏈表 
15.6 總結(jié)
15.7 問與答
15.8 作業(yè)
15.8.1 小測驗
15.8.2 練習
第16天課程 使用磁盤文件 
16.1 將流與磁盤文件關聯(lián)起來 
16.2 磁盤文件的類型 
16.3 文件名 
16.4 打開文件 
16.5 讀寫文件數(shù)據(jù) 
16.5.1 格式化文件輸入/輸出 
16.5.2 字符輸入/輸出
16.5.3 直接文件輸入/輸出
16.6 文件緩沖技術:關閉和刷新文件
16.7 順序文件存取和隨機文件存取 
16.7.1 ftell()和rewind()函數(shù) 
16.7.2 fseek()函數(shù) 
16.8 檢測文件尾
16.9 文件管理函數(shù)
16.9.1 刪除文件
16.9.2 給文件重命名
16.9.3 復制文件
16.10 使用臨時文件
16.11 總結(jié) 
16.12 問與答 
16.13 作業(yè) 
16.13.1 小測驗 
16.13.2 練習 
TYPE&RUN5 計算字符數(shù) 
第17天課程 操縱字符串
17.1 確定字符串的長度
17.2 復制字符串
17.2.1 strcpy()函數(shù)
17.2.2 strncpy()函數(shù)
17.2.3 strdup()函數(shù)
17.3 拼接字符串
17.3.1 strcat()函數(shù)
17.3.2 strncat()函數(shù) 
17.4 比較字符串
17.4.1 比較兩個完整字符串
17.4.2 比較字符串的一部分
17.4.3 比較字符串時忽略大小寫
17.5 查找字符串
17.5.1 strchr()函數(shù)
17.5.2 strrchr()函數(shù)
17.5.3 strcspn()函數(shù)
17.5.4 strspn()函數(shù)
17.5.5 strpbrk()函數(shù)
17.5.6 strstr()函數(shù)
17.6 字符串轉(zhuǎn)換
17.7 其他字符串函數(shù)
17.7.1 strrev()函數(shù)
17.7.2 strset()和strnset()函數(shù) 
17.8 將字符串轉(zhuǎn)換為數(shù)字 
17.8.1 將字符串轉(zhuǎn)換為int
17.8.2 將字符串轉(zhuǎn)換為long值
17.8.3 將字符串轉(zhuǎn)換為long long值
17.8.4 將字符串轉(zhuǎn)換為浮點數(shù)
17.9 字符檢測函數(shù)
17.9.1 ANSI對大小寫轉(zhuǎn)換的支持
17.10 總結(jié)
17.11 問與答 
17.12 作業(yè) 
17.12.1 小測驗 
17.12.2 練習 
第18天課程 有關函數(shù)的高級主題 
18.1 將指針傳遞給函數(shù) 
18.2 void類型的指針 
18.3 接受可變數(shù)目參數(shù)的函數(shù) 
18.4 返回指針的函數(shù) 
18.5 總結(jié) 
18.6 問與答 
18.7 作業(yè) 
18.7.1 小測驗 
18.7.2 練習 
第19天課程 函數(shù)庫 
19.1 數(shù)學函數(shù) 
19.1.1 三角函數(shù) 
19.1.2 指數(shù)函數(shù)和對數(shù)函數(shù) 
19.1.3 雙曲線函數(shù)
19.1.4 其他數(shù)學函數(shù)
19.1.5 演示數(shù)學函數(shù)
19.2 處理時間 
19.2.1 時間的表示 
19.2.2 時間函數(shù) 
19.2.3 使用時間函數(shù) 
19.3 處理錯誤 
19.3.1 assert()宏 
19.3.2 頭文件errno.h 
19.3.3 perror()函數(shù) 
19.4 查找和排序 
19.4.1 使用bsearch()進行查找 
19.4.2 使用qsort()進行排序
19.4.3 演示查找和排序
19.5 總結(jié) 
19.6 問與答 
19.7 作業(yè) 
19.7.1 小測驗 
19.7.2 練習 
TYPE&RUN6 計算抵押貸款的償還金額 
第20天課程 管理內(nèi)存 
20.1 類型轉(zhuǎn)換 
20.1.1 自動類型轉(zhuǎn)換 
20.1.2 顯式轉(zhuǎn)換
20.2 分配內(nèi)存的存儲空間
20.2.1 使用malloc()函數(shù)分配內(nèi)存
20.2.2 使用calloc()函數(shù)分配內(nèi)存 
20.2.3 使用realloc()函數(shù)分配更多的內(nèi)存 
20.2.4 使用free()函數(shù)釋放內(nèi)存 
20.3 操縱內(nèi)存塊 
20.3.1 使用memset()函數(shù)初始化內(nèi)存 
20.3.2 使用memcpy()復制內(nèi)存中的數(shù)據(jù) 
20.3.3 使用memmove()函數(shù)移動內(nèi)存中的數(shù)據(jù) 
20.4 位的用法
20.4.1 移位運算符
20.4.2 按位邏輯運算符
20.4.3 求補運算符
20.4.4 結(jié)構中的位字段
20.5 總結(jié) 
20.6 問與答 
20.7 作業(yè) 
20.7.1 小測驗 
20.7.2 練習 
第21天課程 編譯器的高級用法 
21.1 使用多個源代碼文件的編程 
21.1.1 模塊化編程的優(yōu)點 
21.1.2 模塊化編程技術 
21.1.3 模塊的組成部分 
21.1.4 外部變量和模塊化編程
21.1.5 使用.obj文件
21.1.6 使用生成工具
21.2 C語言的預處理器
21.2.1 #define預處理器編譯指令
21.2.2 使用編譯指令#include
21.2.3 使用#if、#elif、#else和#endif
21.2.4 使用#if…#endif來幫助調(diào)試 
21.2.5 避免將頭文件包含多次 
21.2.6 #undef編譯指令 
21.3 預定義的宏 
21.4 使用命令行參數(shù) 
21.5 總結(jié)
21.6 問與答
21.7 作業(yè)
21.7.1 小測驗
21.7.2 練習
第三周復習
附加課程(具體內(nèi)容見光盤) 
附錄A ASCII字符集 
附錄B C/C++中的保留字
附錄C 使用二進制和十六進制數(shù)
C.1 十進制
C.2 二進制
C.3 十六進制
附錄D 移植性問題
D.1 ANSI標準
D.2 ANSI關鍵字
D.3 區(qū)分大小寫
D.4 可移植的字符 
D.5 確保ANSI兼容性 
D.6 繞開ANSI標準 
D.7 使用可移植的數(shù)值變量
D.7.1 最大值和最小值
D.7.2 確定數(shù)字的類型
D.7.3 轉(zhuǎn)換字符的大小寫:一個可移植性范例 
D.8 可移植的結(jié)構和共用體 
D.8.1 字對齊
D.8.2 讀寫結(jié)構
D.8.3 在可移植的程序中使用非-ANSI特性
D.8.4 ANSI標準頭文件
D.9 總結(jié)
D.10 問與答
D.11 作業(yè)
D.11.1 小測驗
D.11.2 練習
附錄E 常用的C語言函數(shù)
附錄F 作業(yè)答案
第1天課程的答案
小測驗
練習
第2天課程的答案
小測驗
練習
第3天課程的答案
小測驗
練習
第4天課程的答案
小測驗
練習
第5天課程的答案
小測驗
練習
第6天課程的答案 
小測驗 
練習 
第7天課程的答案 
小測驗 
練習 
第8天課程的答案 
小測驗 
練習 
第9天課程的答案
小測驗 
練習 
第10天課程的答案 
小測驗 
練習 
第11天課程的答案
小測驗
練習
第12天課程的答案 
小測驗 
練習 
第13天課程的答案 
小測驗 
練習 
第14天課程的答案 
小測驗 
練習 
第15天課程的答案 
小測驗 
練習 
第16天課程的答案 
小測驗 
練習 
第17天課程的答案 
小測驗 
練習 
第18天課程的答案
小測驗
練習
第19天課程的答案
小測驗
練習
第20天課程的答案
小測驗
練習
第21天課程的答案
小測驗
附加課程1的答案 
小測驗 
附加課程2的答案 
小測驗 
附加課程3的答案 
小測驗 
附加課程4的答案 
小測驗 
附加課程5的答案 
小測驗
附加課程6的答案 
小測驗 
附加課程7的答案 
小測驗 
練習 
附錄G Dev-C++編譯器 
G.1 Dev-C++簡介 
G.2 在Microsoft Windows上安裝Dev-C++ 
G.3 Dev-C++中的程序 
G.4 使用Dev-C++ 
G.4.1 針對C語言編程定制Dev-C++
G.4.2 在Dev-C++中輸入并編譯程序
G.4.3 編譯Dev-C++程序
G.4.4 運行Dev-C++程序
G.5 總結(jié)

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) m.ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網(wǎng)安備 42010302001612號