程序設計基礎

李忠月、虞銘財

  • 出版商: 清華大學
  • 出版日期: 2024-09-01
  • 定價: $354
  • 售價: 8.5$301
  • 語言: 簡體中文
  • ISBN: 7302668256
  • ISBN-13: 9787302668251
  • 下單後立即進貨 (約4週~6週)

  • 程序設計基礎-preview-1
  • 程序設計基礎-preview-2
  • 程序設計基礎-preview-3
程序設計基礎-preview-1

相關主題

商品描述

"本書以程序設計的分析問題和解決問題為重點,採用“實例導入→問題提出→分析與應用”這一基本敘述模式,講授在C/C++語言環境下程序設計的解題思路、算法設計和程序實現,從而幫助學習者提高編程能力。 本書在結構設計上,從有利於學習者學習的角度出發選擇、組織和呈現教學內容。第一,本書在安排順序上,先講解函數,然後講解數組、指針、結構等,這樣便於學習者早接觸函數,早使用函數,有利於學習者後續內容的學習;第二,本書強調實踐,而不拘泥於基礎知識,使學習者通過實踐掌握基礎知識,重點培養學習者的程序設計能力;第三,本書設計了一些專題,如迭代法、**公約數的求解、素數判定等,總結了某一類問題的解決方法,既讓學習者體驗到程序設計的實用性,又能激發學習者的學習興趣;第四,為滿足學習者對在線開放學習的需求,本書的大部分實例配套了微課。 本書可以作為高等學校程序設計課程、等級考試、程序設計類競賽、認證等的教學用書,也可以作為對C/C++語言程序設計感興趣的學習者的自學用書。相信通過對本書的學習,學習者能打好堅實的程序設計基礎。 "

目錄大綱

目錄

第1章概述/1

1.1電腦程序設計語言1

1.2編寫程序的步驟1

1.2.1編碼1

1.2.2編譯2

1.2.3調試2

1.2.4維護2

1.3算法3

1.3.1算法的特性3

1.3.2算法的描述3

1.4用C/C++語言編寫程序6

1.4.1輸出“Hello,World!”6

1.4.2計算a+b7

1.4.3比較大小8

1.4.4計算分段函數的值9

1.4.5輸出奇偶數之和11

1.4.6畫正方形11

練習112

第2章類型、運算符與表達式/15

2.1變量15

2.1.1變量的命名規則15

2.1.2變量的聲明16

2.2數據類型及長度16

2.2.1short與long限定符17

2.2.2signed與unsigned限定符17

2.2.3printf和scanf格式轉換符17

2.3常量19

2.3.1整數常量與浮點數常量19

2.3.2字符常量20

2.3.3字符串常量20

2.3.4符號常量21

2.3.5枚舉常量22

2.4算術運算符22

2.5關系運算符與邏輯運算符22

2.6自增運算符與自減運算符24

2.7逗號運算符25

2.8賦值運算符與賦值表達式26

2.9條件運算符與條件表達式26

2.10數值類型轉換27

2.11運算符的優先級及求值次序28

練習229

〖1〗程序設計基礎目錄〖3〗〖3〗第3章分支結構/33

3.1實例導入33

3.2語句與程序塊34

3.3ifelse語句34

3.4elseif語句36

3.5switch語句38

3.6應用實例42

練習344

第4章循環結構/48

4.1實例導入48

4.2while循環51

4.3for循環54

4.4dowhile循環57

4.5三種循環語句的比較60

4.6循環結構的嵌套60

4.7break語句與continue語句63

4.8專題1: 正整數的拆分65

4.9專題2: 迭代法68

4.10應用實例70

練習475

第5章輸入與輸出/84

5.1getchar()函數84

5.2putchar()函數85

5.3scanf()函數86

5.4printf()函數87

5.5C++格式化控制台輸出89

5.6應用實例92

練習599

第6章函數/101

6.1實例導入101

6.2函數的基本知識103

6.2.1函數的定義103

6.2.2函數的調用104

6.2.3函數的聲明108

6.2.4函數設計的基本原則111

6.3以引用方式傳遞參數111

6.4局部、全局和靜態變量114

6.4.1for循環中變量的作用域114

6.4.2靜態局部變量115

6.5函數的遞歸調用119

6.6專題3: 最大公約數的求解122

6.6.1歐幾里得算法123

6.6.2更相減損法124

6.7應用實例124

練習6126

第7章數組/132

7.1實例導入132

7.2一維數組133

7.2.1一維數組的定義133

7.2.2一維數組元素的引用134

7.2.3一維數組的初始化135

7.2.4一維數組的應用舉例136

7.3二維數組141

7.3.1二維數組的定義142

7.3.2二維數組元素的引用142

7.3.3二維數組的初始化143

7.3.4二維數組的應用舉例144

7.4數組與函數147

7.5查找149

7.5.1順序查找149

7.5.2折半查找149

7.6排序150

7.6.1選擇排序150

7.6.2冒泡排序151

7.7專題4: 素數153

7.7.1判斷某個數是否是素數153

7.7.2一定範圍內所有素數的求解155

練習7156

第8章字符串與文件操作/161

8.1字符數組161

8.1.1字符數組的定義和引用161

8.1.2字符數組的初始化161

8.1.3字符數組的輸入與輸出163

8.1.4字符數組的應用舉例164

8.2string類型字符串168

8.2.1構造一個字符串168

8.2.2讀字符串168

8.2.3操作字符串的函數168

8.2.4string的應用舉例171

8.3文件操作與重定向175

8.3.1讀寫文件175

8.3.2重定向176

8.4專題5: 進制轉換177

練習8179

第9章指針/183

9.1實例導入183

9.2指針的基本知識186

9.2.1指針變量的聲明186

9.2.2指針變量的初始化186

9.2.3指針變量的基本運算187

9.3指針與數組189

9.3.1指針與一維數組189

9.3.2指針與多維數組194

9.4指針與函數195

9.4.1函數的形參是指針195

9.4.2函數返回指針197

9.4.3指向函數的指針197

9.5字符指針與函數198

9.6指針數組199

9.6.1指針數組的聲明199

9.6.2指針數組的初始化199

9.6.3指針數組與二維數組的區別199

9.7命令行參數200

9.8指向指針的指針201

9.9動態持久內存分配202

練習9203

第10章結構/207

10.1實例導入207

10.2結構的基本知識209

10.2.1結構類型的定義210

10.2.2結構變量的定義210

10.2.3結構成員的訪問211

10.2.4對結構變量的操作211

10.2.5結構變量的初始化212

10.2.6結構的嵌套213

10.3結構數組213

10.4結構指針216

10.5typedef217

10.6結構與函數218

10.7單鏈表219

10.7.1單鏈表的創建220

10.7.2單鏈表的輸出220

10.7.3單鏈表的插入221

10.7.4單鏈表的刪除223

10.7.5鏈表的綜合操作224

10.8應用實例226

10.8.1用結構數組實現227

10.8.2用單鏈表實現228

練習10230

第11章位運算/236

11.1原碼、反碼和補碼236

11.2位運算符236

11.2.1與運算符236

11.2.2或運算符237

11.2.3異或運算符237

11.2.4取反運算符238

11.2.5左移運算符和右移運算符238

11.3位賦值運算符241

11.4應用實例241

練習11243

第12章大串講/246

12.1順序輸出整數的各位數字246

12.2階乘和248

12.3斐波那契數列250

12.4計算函數的值252

12.5數列有序254

12.6數的轉移256

12.7有理數四則運算258

12.8德才論260

12.9天長地久262

附錄/265

附錄A常用字符與ASCII對照表265

附錄B常用的庫函數266

B.1數學函數266

B.2字符處理函數268

B.3字符串處理函數269

B.4實用函數270

附錄C與具體實現相關的限制270

附錄DHack271

附錄E對拍271

參考文獻/275