C程序設計教程

李安邦 陳緒君 裘宗燕

  • 出版商: 機械工業
  • 出版日期: 2026-03-01
  • 售價: $474
  • 語言: 簡體中文
  • ISBN: 7111804899
  • ISBN-13: 9787111804895
  • 相關分類: C 程式語言
  • 下單後立即進貨 (約4週~6週)

商品描述

本書以C語言作為教學語言,主旨是幫助讀者理解 語言程序設計,通過一種實用的編程語言,理解和掌握程序設計的思想、方法和基本技術,為繼續學習相關課程打下堅實的基礎。本書詳細介紹了C語言和基本程序設計的各方面知識,包括與計算機、程序以及程序設計有關的基本概念,用計算機解決問題的思維方法,以及程序設計的基本技術。本書的內容選擇、撰寫方式和章節安排都認真考慮了入門課程和自學者的需求,也能很好地與後續課程銜接。本書適合作為普通高等學校計算機科學與技術專業或其他專業的 門程序設計課程的教材。

作者簡介

李安邦,俄羅斯莫斯科大學數學-物理副博士,華中師範大學物理學院副教授,從事生物物理學研究,長期講授計算機程序設計相關課程和大學物理課程。已出版多部著作和譯著,包括《從問題到程序——C/C++基礎程序設計》(合著,機械工業出版社,2023年 版)、《蛋白質物理》(譯著,科學出版社,2013)和《無處不在的巨分子》(譯著,科學出版社,2020)等。<br />陳緒君,理學博士,華中師範大學物理學院副教授,從事計算機視覺、自然語言模型和大語言模型等領域研究,主持或參與多項信息化系統項目。長期從事“ 程序語言設計(C語言)”“數據結構”和“ 化理論”等課程的教學工作,具有豐富的教學實踐經驗。<br />裘宗燕,北京大學數學學院信息科學系教授。長期從事計算機軟件與理論、程序設計語言和符號計算方面的研究與教學工作。已出版多部著作和譯著,包括《程序設計語言基礎》(譯著,北京大學出版社,1990)、《Mathematics數學軟件系統的應用與程序設計》(編著,北京大學出版社,1994)、《C++程序設計語言(特別版)》(譯著,機械工業出版社,2002)、《C++語言的設計和演化》(譯著,機械工業出版社,2002)、《程序設計語言--概念和結構》(合譯,機械工業出版社,2002)、《從問題到程序——程序設計與C語言引論》(編著,機械工業出版社,2005年 版,2011年第2版)、《從問題到程序——C/C++基礎程序設計》(合著,機械工業出版社,2023年 版)等。

目錄大綱

前言
第1章 程序設計和C語言1
1.1 計算機與計算機程序1
1.2 程序設計語言2
1.3 C語言的發展及其特點3
1.4 C程序快速入門5
1.4.1 C程序的加工和執行5
1.4.2 集成開發環境6
1.4.3 小龍Dev-C++使用簡介6
1.4.4 一個簡單的C程序8
1.5 程序開發和算法設計12
1.5.1 程序開發過程12
1.5.2 算法設計14
1.5.3 算法的表示14
1.6 程序除錯18
本章知識要點20
第2章 數據與簡單計算22
2.1 基本字符、標識符、關鍵字和
語句22
2.1.1 基本字符22
2.1.2 標識符和關鍵字22
2.1.3 語句和覆合語句23
2.2 數據編碼與基本數據類型24
2.2.1 二進制記數法24
2.2.2 定點整數的表示和整數類型26
2.2.3 浮點數的表示和浮點數類型27
2.2.4 字符的表示和字符類型29
2.3 常量和變量31
2.3.1 整型常量31
2.3.2 浮點型常量32
2.3.3 字符常量33
2.3.4 字符串常量33
2.3.5 符號常量34
2.3.6 枚舉常量34
2.3.7 變量34
2.3.8 常變量35
2.4 數據輸出36
2.4.1 數據輸入/輸出的概念36
2.4.2 用printf函數格式化輸出36
2.4.3 輸出字符和字符串40
2.5 運算符、表達式與計算41
2.5.1 算術運算符41
2.5.2 算術表達式42
2.5.3 算術表達式的求值42
2.5.4 混合類型計算和類型轉換46
2.5.5 簡單計算程序48
本章知識要點52
第3章 變量和順序結構54
3.1 變量的概念、定義和使用54
3.1.1 變量的概念54
3.1.2 變量的定義54
3.1.3 變量的使用:賦值與取值55
3.1.4 賦值語句57
3.1.5 使用變量時的常見錯誤58
3.2 與變量相關的運算符和表達式60
3.2.1 賦值表達式的值與結合性60
3.2.2 覆合賦值運算符61
3.2.3 自增和自減運算符62
3.2.4 對求值順序敏感的表達式62
3.3 數據輸入63
3.3.1 格式化輸入函數scanf64
3.3.2 字符輸入函數getchar68
3.3.3 數據輸入註意事項69
3.4 數學函數及其使用72
3.4.1 標準庫和函數原型72
3.4.2 數學函數74
3.5 程序調試和除錯78
本章知識要點79
第4章 選擇結構80
4.1 關系運算符和關系表達式80
4.2 邏輯運算符和邏輯表達式81
4.3 if語句84
4.4 條件運算符和條件表達式91
4.5 switch語句93
4.6 選擇結構程序實例98
本章知識要點101
第5章 循環結構102
5.1 while語句102
5.2 do...while語句108
5.3 for語句111
5.4 循環的嵌套115
5.5 與循環有關的控制語句118
5.5.1 標誌變量與break語句118
5.5.2 continue語句120
5.6 死循環121
5.7 循環程序應用實例122
5.7.1 生成與檢查122
5.7.2 疊代與遞推124
5.7.3 隨機數模擬127
5.7.4 字符相關函數 130
本章知識要點133
第6章 函數與程序135
6.1 函數定義135
6.2 函數調用137
6.3 函數原型聲明141
6.4 局部變量144
6.4.1 局部變量的作用域144
6.4.2 函數的參數機制146
6.4.3 局部變量的生存期147
6.5 函數編程實例149
*6.6 遞歸函數155
6.7 外部變量與靜態局部變量158
6.7.1 外部變量158
*6.7.2 靜態局部變量163
*6.7.3 變量的存儲類別164
6.8 多文件開發簡介166
6.8.1 “文件包含”預處理命令166
6.8.2 多文件開發中的文件組織167
*6.9 C語句172
本章知識要點174
第7章 數組177
7.1 一維數組177
7.1.1 定義一維數組177
7.1.2 引用一維數組元素178
7.1.3 一維數組的初始化181
7.1.4 一維數組程序舉例184
*7.1.5 C99中的變長數組186
7.2 二維數組187
7.2.1 二維數組的定義和初始化187
7.2.2 二維數組程序舉例188
7.3 數組作為函數參數190
7.3.1 數組元素作為函數實參190
7.3.2 外部數組191
7.3.3 一維數組作為函數參數192
*7.3.4 多維數組作為函數參數195
7.4 字符數組與字符串196
7.4.1 字符數組的定義和初始化196
7.4.2 字符數組中存儲的字符串197
7.4.3 字符數組和字符串的輸出與
輸入198
7.4.4 字符數組/字符串應用202
7.4.5 字符串處理函數205
7.4.6 標準庫字符串處理函數208
本章知識要點214
第8章 指針216
8.1 內存與地址216
8.2 指針變量的定義和使用218
8.2.1 指針變量的定義218
8.2.2 指針變量的賦值和初始化219
8.2.3 間接訪問220
8.2.4 野指針、空指針與通用指針222
8.3 指針與函數224
8.3.1 指針作為函數參數224
8.3.2 指針作為函數返回值227
8.4 指針與數組229
8.4.1 指向數組的指針229
8.4.2 數組參數與指針參數231
*8.4.3 多維數組作為參數的通用
函數236
8.5 字符指針與字符數組238
8.5.1 字符指針和字符常量指針239
8.5.2 使用字符指針的函數240
8.5.3 標準庫字符串函數原型242
*8.6 指針數組與多級指針244
*8.6.1 指針數組244
*8.6.2 多級指針247
*8.6.3 main函數的形參248
8.7 動態存儲分配250
8.7.1 動態存儲分配的定義250
8.7.2 動態存儲分配函數251
8.7.3 動態存儲分配示例程序253
8.8 指向函數的指針255
本章知識要點258
第9章 結構體和其他數據類型261
9.1 用typedef定義新類型名261
9.2 結構體類型和結構體變量262
9.2.1 定義結構體類型262
9.2.2 結構體變量的定義和使用265
9.3 結構體數組268
9.4 結構體指針270
9.4.1 指向結構體變量的指針270
9.4.2 指向結構體數組的指針271
9.4.3 結構體與函數272
*9.5 鏈表277
*9.6 共用體280
*9.7 枚舉282
本章知識要點285
第10章 文件287
10.1 文件相關概念287
10.1.1 文件系統與文件名287
10.1.2 文本文件與二進制文件288
10.1.3 文件流和內存緩沖區288
10.1.4 文件類型指針289
10.2 打開與關閉文件289
10.2.1 用fopen函數打開數據
文件290
10.2.2 用fclose函數關閉數據
文件292
10.2.3 標準輸入/輸出流292
10.3 順序讀寫數據文件293
10.3.1 格式化讀寫文本文件293
10.3.2 字符和字符串的文件讀寫296
10.3.3 文件讀寫示例:書目管理
系統299
*10.4 二進制成塊讀寫數據文件308
10.4.1 二進制成塊讀寫308
10.4.2 隨機讀寫數據文件312
10.5 程序開發實例315
本章知識要點321
附錄322
附錄A C語言運算符表322
附錄B ANSI C關鍵字列表322
附錄C C語言常用功能速查323
附錄D 命名規範324