C語言範例開發大全

C語言範例開發大全

《C語言範例開發大全》是由清華大學出版社出版的圖書。

基本信息

內容簡介

本書共19章,分4篇。基礎篇介紹了C語言概述、C語言中的數據和表達式、順序程式設計、選擇程式設計、循環程式設計、控制結構綜合實例、數組。提高篇主要介紹了函式、指針、字元串、編譯預處理和變數作用域、結構體和共用體、鍊表。算法篇主要介紹了常用算法、數據結構與算法。底層處理篇主要介紹了位運算、檔案、系統調用,最後還介紹了一個綜合案例(教務管理系統)的開發。

本書內容豐富,實用性強,實例貼近生活,容易理解,而且書中每一個實例都經過仔細調試。本書適合C語言初、中級學習人員學習和提高使用,也可以作為程式設計師案頭必備的參考資料。另外,對於C/C++求職人員,本書也有較好的參考價值。

圖書目錄

第1篇 基 礎 篇

第1章 C語言初步(教學視頻:31分鐘) 2

1.1 C語言概述 2

實例001 一個體現C語言特點的例子 2

實例002 設計第一個C語言程式 3

實例003 演示C程式書寫規範 5

1.2 C語言程式的調試 7

實例004 演示C程式調試過程 7

實例005 演示開始階段常見錯誤 9

第2章 C語言中的數據和表達式(教學視頻:39分鐘) 11

2.1 數據類型和常量 11

實例006 體現數據類型的作用 11

實例007 符號常量的使用 13

實例008 數值型常量的使用 14

實例009 字元型常量的使用 15

2.2 變數以及變數的套用 17

實例010 演示變數的錯誤定義 17

實例011 變數的存儲 18

實例012 變數的賦值 20

實例013 數據的溢出 21

2.3 算術運算符和表達式 23

實例014 基本算術運算符的套用 23

實例015 自加自減表達式的套用 24

實例016 體現表達式構成的實例 25

2.4 賦值和逗號表達式和運算符 27

實例017 賦值運算符的套用 27

實例018 賦值表達式類型的轉化 28

實例019 複合賦值運算符的套用 29

實例020 逗號運算符的套用 30

2.5 關係運算符和表達式 31

實例021 關係運算符的套用 31

實例022 關係表達式進行算術運算 32

2.6 邏輯運算符和表達式 33

實例023 邏輯運算符的套用 33

實例024 體現邏輯運算符特殊性的實例 34

2.7 sizeof、取址運算符和數據類型強制轉換36

實例025 sizeof和取址運算符的套用 36

實例026 類型強制轉換 37

第3章 順序程式設計(教學視頻:44分鐘) 39

3.1 基本語句的組成 39

實例027 表達式語句的使用 39

實例028 複合語句的使用 41

3.2 標準庫函式的套用 42

實例029 stdlib庫的函式套用 42

實例030 math庫的函式套用 43

3.3 標準輸出和輸入函式 45

實例031 得到正確的輸入數據 45

實例032 輸出格式設定 47

3.4 字元輸入和輸出函式 48

實例033 字元的輸入和輸出 49

實例034 字元串常量的輸出 50

3.5 順序程式結構 51

實例035 兩個變數交換 51

實例036 輸出字元的前驅和後繼 52

實例037 攝氏度和華氏度之間的轉換 53

實例038 分解三位整數的各位數字 54

實例039 計算一元二次方程ax2+bx+c=0的根 55

實例040 列印用星號組成的圖案 56

實例041 小寫字母轉換成大寫字母 57

實例042 計算圓形周長、面積和球體體積 58

實例043 求學生總成績和平均成績 59

實例044 求三角形面積 60

實例045 小數的四捨五入 61

第4章 選擇程式設計(教學視頻:101分鐘) 62

4.1 if型選擇語句 62

實例046 單條件單分支選擇語句的套用 62

實例047 單條件雙分支if語句的套用 64

實例048 多條件if語句的套用 65

實例049 按照數據由小到大的順序輸出三個數 68

實例050 常見的if語句使用的錯誤實例 70

實例051 條件運算符的使用 72

4.2 if型選擇程式設計綜合實例 73

實例052 輸入整數判斷正負和奇偶 73

實例053 判斷輸入字元的種類 75

實例054 數學分支函式 76

實例055 輸入三角形的邊長求面積 78

實例056 不大於5位的正整數的每位數的處理 80

實例057 解方程ax2+bx+ c=0 82

實例058 判斷閏年 83

實例059 求某學生的總分、平均分、最高分和最低分 85

4.3 switch 分支選擇程式設計 86

實例060 switch的使用 86

實例061 switch使用的錯誤分析實例 88

實例062 簡單計算器 90

實例063 計算工人工資 92

實例064 學生百分製成績等級評判 93

實例065 模擬自動飲料機 95

實例066 判斷某年某月某日是這一年的第幾天 96

實例067 根據銀行利息的變化計算到期的應得金額 98

4.4 選擇程式的測試 100

實例068 並列選擇結構的測試 100

實例069 嵌套選擇結構的測試 101

實例070 switch結構選擇結構的測試 103

第5章 循環程式設計(教學視頻:119分鐘) 105

5.1 while型循環 105

實例071 while語句的使用 105

實例072 while語句的常見錯誤實例分析 107

實例073 簡單的猜數遊戲 109

實例074愛因斯坦階梯問題 110

實例075 判斷一個整數是否為素數 112

實例076 統計字元 113

實例077 求(的值 115

實例078 最大公約數和最低公倍數 116

實例079 十進制轉換為八進制 118

實例080 求某數的階乘 119

5.2 do…while型循環程式設計 120

實例081 do…while型循環控制實例分析 120

實例082 加密和解密 122

實例083 組成數字的各位和 123

實例084 牛頓疊代法計算方程的根 124

實例085 選單程式的列印 125

實例086 整數逆序輸出 127

實例087 do…while語句常見的錯誤實例分析 128

5.3 for型循環程式設計 129

實例088 for型循環的使用 130

實例089 輸出1~20中能被3整除的數,並求出它們的和 131

實例090 輸出華氏——攝氏溫度對照表 132

實例091 對給定數目數據的統計 133

實例092 求2000~2050年間的閏年 134

實例093 求4位反序數135

實例094斐波那契數列136

實例095 判斷n是否為迴文數 138

實例096 計算數列12+22+···+502 139

實例097 銀行存款問題 140

實例098 找出個位數為6且能被3整除的五位數 141

5.4 break和continue的套用 142

實例099break語句的套用 142

實例100 continue語句的套用 143

實例101 輸出10~100之間的全部素數 145

實例102 統計不及格的人數 146

5.5 三種循環形式的套用分析 148

實例103 求自然數中各位數字之和 148

實例104 求1!+2!+3!+…n! 149

實例105 計算多個數據的最大值 151

實例106 增長率問題 153

第6章 控制結構綜合實例(教學視頻:139分鐘) 155

6.1 累計問題 155

實例107 計算自然對數e的值 155

實例108 分數數列求和 156

實例109 求a+aa+…+aa…a的和 158

實例110 彈球落地彈起多次的路程計算 159

實例111 猴子吃桃問題 160

實例112 計算s=11+22+33+…+nn 161

實例113 求解立方和不等式13+23+…+m3<n 162

實例114 求解調和級數不等式 163

實例115 求解平方根不等式 164

實例116 實數數列求和 165

實例117 求數列1-1/2-1/3+1/4-…1/n的和 166

6.2 圖形輸出問題 167

實例118 星號圖形的列印 167

實例119 列印九九乘法表 169

實例120 輸出數字金字塔 170

實例121 輸出字母金字塔 172

實例122 輸出西洋棋棋盤 174

實例123 輸出星號組成的菱形 175

實例124 繪製餘弦曲線177

實例125 繪製餘弦曲線和直線 179

6.3 數學問題 180

實例126 將一個正整數分解質因數181

實例127 用疊代法計算平方根 183

實例128 若ab×ba=1855,求a、b的取值 184

實例129 用0~9組成無重複的三位數的個數 185

實例130 用對分法求方程的實根 186

實例131 求非線性方程x-1-arctanx=0的一個實根 188

實例132 分子多項式求值 189

實例133愛因斯坦數學問題 191

實例134 求七進制九進制數碼相反的三位數 192

實例135 輸出10 000以內所有的完全數 193

實例136 求4位以內的相親數 194

實例137 求具有abcd=(ab+cd)2性質的四位數 196

實例138 分數四則運算 197

實例139 輸出1~100之間每位數的乘積大於每位數的和的數 199

實例140 階乘尾數中含有0的個數計算 200

實例141 採用近似計算的方法計算已知函式的定積分 201

6.4 選擇問題 202

實例142 求水仙花數 202

實例143 搬磚問題 203

實例144 百元百雞問題 205

實例145 選人執行任務 207

實例146 排列組合問題 209

實例147 大獎賽評分程式 210

實例148 桌球隊進行比賽名單 212

第7章 數組(教學視頻:153分鐘) 213

7.1 一維數組 213

實例149 一維數組的定義 213

實例150 一維數組的初始化 215

實例151 存放統計各分數段的人數 216

實例152 用數組來處理斐波那契數列 219

實例153 數組中元素的比較與交換實例 220

實例154選擇法排序221

實例155起泡法排序 223

實例156 數組的查找和插入實例 224

實例157 數據的折半查找 226

實例158 求出平均分並輸出學生成績 229

實例159 課程的總評成績 230

實例160 成績的分段統計 231

實例161 判斷迴文數 233

實例162 三個數組的關係 234

實例163 用5個數組成方陣 236

實例164 找素數並排序 237

實例165 有序數列的插入 239

實例166 判斷一個整數是否在數組裡 240

實例167 篩選法求素數 241

實例168 將數組元素逆序存放 242

實例169 數字加密 244

7.2 二維數組 245

實例170 二維數組的使用 246

實例171 學生成績處理 247

實例172多維數組的處理 249

實例173 下三角形問題 250

實例174 列印楊輝三角 251

實例175矩陣的轉置 253

實例176 兩個矩陣相乘 254

實例177 求方陣的對角線元素和 256

實例178 求二維數組每一行的最大值 257

實例179 數組程式實例分析 258

實例180 找出二維數組元素最值 260

實例181 簡單的學生成績管理系統 261

實例182馬鞍點問題 264

實例183 不同行進行排序 266

7.3特殊矩陣267

實例184 設計對稱矩陣 267

實例185 矩陣特殊元素的填充 269

實例186 蛇形排列數組元素 271

實例187 設計螺旋方陣 273

實例188 設計魔方陣 276

實例189 二維數組每行最大值中的最小值 278

第2篇 提 高 篇

第8章 函式(教學視頻:132分鐘) 282

8.1 函式的套用 282

實例190 程式中的函式套用 282

實例191 函式的定義 284

實例192 函式的調用 285

實例193 形參和實參單向的值傳遞 287

實例194 函式參數的求值順序289

實例195 聲明函式 290

實例196 return語句的套用 291

實例197 有規律數列的求和 292

實例198 編寫函式輸出圖形 294

實例199歌德巴赫猜想295

實例200 求1~1000的階乘和數 296

實例201 比較兩個分數的大小 297

實例202 求整數n的全部素數因子 299

8.2 用數組作為函式參數 300

實例203 求數組中元素的最大值 300

實例204 數組元素逆序存放 302

實例205 兩個數組元素的交換 304

實例206約瑟夫環問題 305

實例207 數組中連續相等數的計數 307

實例208 數組中元素的分類存放 308

實例209 兩個有序數組中元素的交換 310

實例210 兩個矩陣的和 311

實例211 螺旋方陣的填充 313

實例212 判斷二維數組元素是否互不相同 315

8.3 嵌套函式 316

實例213 函式嵌套調用 316

實例214 梯形法計算積分 317

實例215 編寫連分式的計算程式 319

實例216 組合數的求法 320

實例217 函式嵌套驗證哥德巴赫猜想322

實例218 計算正數的n次根 323

8.4 遞歸調用 324

實例219 遞歸解決猴子吃桃問題 324

實例220 遞歸函式的執行分析 326

實例221 遞歸求解最大公約數 328

實例222 遞歸求解數組中的最大值 329

實例223 遞歸實現整數逆序 330

實例224 遞歸求數據的平方根 331

實例225 遞歸輸出等腰三角形 332

實例226 遞歸進行1~n的自然數求和 333

實例227 漢諾塔問題 334

實例228 楊輝三角的遞歸解決方案 336

實例229 Ackermann()函式的遞歸程式337

實例230 組合問題遞歸 338

實例231 遞歸計算函式值 339

第9章 指針(教學視頻:174分鐘) 341

9.1 指針以及指針變數 341

實例232 變數與地址的套用 341

實例233 指針變數的定義 342

實例234 取地址運算符的使用 343

實例235 指針運算符的使用 344

實例236 指針變數使用錯誤的實例 345

實例237 指針變數的指向 347

實例238 指針變數和整數的運算 348

實例239 指針變數相減運算 350

實例240 指針中比較運算符的套用 351

實例241 指針變數作為函式參數 352

實例242 統計空白符和小寫字元的個數 353

9.2 指針和一維數組 355

實例243 利用指針輸出一維數組中的元素 355

實例244 統計數組中大於平均值的元素個數 356

實例245 利用指針把數組逆序 357

實例246 指針實現數組元素的移位 358

實例247 對數組中奇偶下標的數據分別求和 360

實例248 使用指針交換兩個數組中的最大值 361

實例249 判斷數組是否中心對稱 362

實例250 整數逆序存放 363

實例251 計算數組連續兩個元素積 364

9.3 指針和二維數組 365

實例252 二維數組的地址描述 365

實例253 處理二維數組中的所有元素 367

實例254 使用指向一維數組的指針處理二維數組 368

實例255 求二維數組中元素的最大值 370

實例256 輸出二維數組中每行的最大值以及其存儲位置 371

實例257 輸出學生成績中2門以上成績不及格的學生 372

9.4 指向函式的指針 373

實例258 函式指針的套用 373

實例259 利用函式指針求兩個數據的最值、和、差 374

9.5 返回指針的函式 376

實例260 返回指針的函式套用 376

實例261 指針函式找出不合格的參賽人員 377

9.6指針數組378

實例262 指針數組的套用 379

實例263 指針數組處理字元串 380

9.7二級指針381

實例264 二級指針變數的套用 381

實例265 用二級指針處理多個字元串 382

9.8 具有參數的主函式 383

實例266 具有參數的主函式套用 383

實例267 根據命令行的提示選擇程式的功能 384

9.9 指針套用綜合實例 385

實例268 數組中元素不改變次序的排序 386

實例269有序數組中刪除多餘元素 387

實例270 實現有序數組的合併 389

實例271 刪除數組中的連續元素 390

實例272 有序數組中元素的插入 391

實例273 統計數組中不同元素出現的次數 392

實例274 利用函式指針計算定積分 394

實例275 利用指針函式輸出銷售額 396

第10章 字元串(教學視頻:183分鐘) 398

10.1 字元數組 398

實例276 字元串中逐個字元的輸入和輸出 398

實例277 字元串的整體輸入和輸出 399

實例278 不同字元的統計 401

實例279 統計一個字元串中單詞的個數 402

實例280 處理多個字元串 403

10.2 字元數組處理字元串 404

實例281 判斷字元串是否對稱 404

實例282 整數轉化為字元串 405

實例283 字元串匹配 406

實例284 字元串複製中實現空白符的顯示 408

實例285 轉化無符號數據為二進制表示 409

實例286 刪除字元串中指定字元 410

實例287 有序字元串的合併 411

實例288 把字元串中的字元插入到升序的字元串中 412

實例289 輸出兩個字元串的前綴 413

實例290 判斷反對稱的字元串 414

實例291 數字字元串轉換為數字 415

實例292 統計字元串的長度 416

實例293 密碼輸入程式 417

10.3 字元串函式 418

實例294 去掉字元串的尾空格 418

實例295 計算字元串長度 419

實例296 字元串複製 420

實例297 字元串逆序賦值 421

實例298 字元串連線 422

實例299 自定義字元串連線 423

實例300 字元串比較 424

實例301 自定義字元串比較函式 425

10.4 字元串函式套用 426

實例302 對子串的定位 426

實例303 求子串 427

實例304 子串的插入 428

實例305 刪除多個連續字元 430

實例306 字元串升序排序 431

實例307 密碼檢測 432

10.5 字元指針 433

實例308 使用字元指針變數表示和引用字元串 433

實例309 字元指針作為函式參數 434

實例310 統計子串出現次數 435

實例311 在字元串中刪除字元 436

實例312 函式實現字元串連線 437

實例313 去掉字元串前綴0 438

實例314 數字字元串轉化為數字 439

實例315 判斷子串 441

實例316 字元串的格式化 442

實例317 羅馬數字轉換 444

實例318 實現通配符匹配功能 445

10.6 字元串處理綜合實例分析 446

實例319 返回字元串中的最長單詞 446

實例320 十進制數據轉換二進制、八進制和十六進制 448

實例321 字元串最大公共子串實例分析 449

實例322 刪除指定格式單詞 451

實例323 求最長等值子串 452

實例324 串的置換 454

實例325 字元串的插入 456

實例326 字元串的查找 457

第11章 編譯預處理和變數作用域(教學視頻:112分鐘) 460

11.1 宏定義 460

實例327 無參宏的定義 460

實例328 查看預處理結果 461

實例329 無參宏定義的使用 462

實例330 宏的定義域 463

實例331 設計宏進行血壓正常的判斷 464

實例332 疊代求根中利用宏表示精度 465

實例333 帶參宏的定義 466

實例334 宏定義常見的錯誤實例分析 466

實例335 奇數求和 467

實例336 創建宏計算上繳稅款 468

實例337 宏計算三角形面積 469

11.2 檔案包含 470

實例338 檔案包含的套用 470

實例339 設計輸出模式 472

實例340 編寫頭檔案包含圓和球的計算公式 473

11.3 條件編譯 474

實例341 #if條件編譯指令的使用 474

實例342 條件編譯隱藏密碼 475

實例343 #elif條件編譯指令的使用 476

實例344 #ifdef條件編譯指令的使用 477

實例345 #ifndef條件編譯指令的使用 478

實例346 用條件編譯實現加密和解密 479

實例347 條件編譯實現開關功能 480

實例348 條件編譯調試程式 481

11.4 變數的作用域 482

實例349局部變數的套用 483

實例350 尋找nx和ny中末3位數相同且能使x+y的和最小的x和y 484

實例351 全局變數實現交換 485

實例352 全局變數實現成績處理 486

實例353 變數同名問題的處理 487

11.5 變數的存儲屬性 489

實例354 使用auto定義的局部變數 489

實例355 使用static定義的局部變數 490

實例356 靜態局部變數計算階乘 491

實例357 使用register定義的局部變數 493

實例358 使用static定義的全局變數 494

實例359 使用external定義的全局變數 494

11.6 函式的作用域 495

實例360 外部函式的套用 495

實例361 多檔案程式的運行 497

第12章 結構體和共用體(教學視頻:116分鐘) 500

12.1 結構體類型和結構變數 500

實例362 結構體類型的定義 500

實例363 結構體變數定義及使用 501

實例364 結構變數記憶體空間的分配 503

實例365 結構變數的整體套用 504

實例366 結構變數的初始化 505

實例367 結構變數作為函式參數的套用 506

實例368 求空間任兩點距離 508

實例369 點和圓的位置判斷 509

12.2 結構體數組 510

實例370 結構體數組的使用 510

實例371 結構數組的初始化 512

實例372 整數排序 513

實例373 建立同學通訊錄 514

實例374 票數統計 515

實例375 結構數組作為函式參數的套用 517

12.3 結構體指針 518

實例376 結構指針處理變數 518

實例377 指針變數處理結構數組 520

實例378 部分字元加密 521

實例379 指向數組元素的結構指針運算 522

12.4 共用體 523

實例380 共用體變數的套用 523

實例381 共用體變數使用錯誤實例分析 524

實例382 取出整型變數的高位元組和低位元組數據 526

實例383 處理任意類型數據 527

12.5 枚舉類型 528

實例384 枚舉類型的套用 528

實例385 日期的計算 529

實例386 求解不同水果組成的拼盤數目 530

12.6 綜合實例分析 532

實例387 複數運算 532

實例388 日期處理 535

實例389 數據連續查詢 538

實例390 數據的排序輸出 539

實例391 輸出火車票價 541

實例392 模擬人工洗牌 542

實例393 使用聯合變數保存表格數據 544

第13章 鍊表(教學視頻:113分鐘) 548

13.1動態分配記憶體548

實例394 typedef自定義類型的套用 548

實例395 調用malloc()函式分配記憶體 550

實例396 調用calloc()函式分配記憶體 551

實例397 一個學生信息的動態存放 552

實例398 處理任意長度的多個字元串 553

13.2 單鍊表 554

實例399 構建單鍊表結構 554

實例400 頭插法建立單鍊表 556

實例401 尾插法建立單鍊表 558

實例402 單鍊表長度計算 560

實例403 在單鍊表中按照序號實現元素的查找 561

實例404 在單鍊表中按照指定值實現元素的查找 562

實例405 單鍊表中第n個結點前的插入 564

實例406 鍊表中結點的刪除 566

實例407 有序單鍊表的合併 568

實例408 帶有頭結點的單鍊表逆序 570

實例409 在帶頭結點的單鍊表中尋找最小值結點 571

實例410 刪除鍊表中從第i個元素開始的len個元素 572

13.3 單循環鍊表 574

實例411 單循環鍊表的建立 575

實例412 兩個單循環鍊表的合併 576

實例413 單循環鍊表中的結點個數統計 577

13.4 雙向鍊表 578

實例414 雙向鍊表的建立 579

實例415 雙向鍊表的插入 580

實例416 雙向鍊表的刪除 582

13.5 鍊表的套用實例 583

實例417 對帶有頭結點的單鍊表中的結點進行排序 584

實例418 尋找兩個鍊表的相同元素 586

實例419 單鍊表的分解 587

實例420 求兩個集合的差 589

實例421 單鍊表中結點的下標和數據的處理 590

實例422 處理整數單鍊表 591

實例423 刪除單鍊表中連續相同的數據結點 593

實例424 子串的判定 594

實例425 交換雙向鍊表的前後兩個結點 595

第3篇 算 法 篇

第14章 常用算法(教學視頻:80分鐘) 600

14.1 枚舉法 600

實例426 找到交通肇事犯 600

實例427 奇異的三位數 601

實例428 三色球問題 602

實例429 求回文素數603

14.2 遞推法 604

實例430 8除不盡的自然數 604

實例431 出售金魚 605

14.3 模擬人工 606

實例432 迴文數的形成 606

實例433 填表格 607

14.4 回溯法 609

實例434 滿足特異條件的數列 609

實例435 教師值班問題 611

14.5 常用內部排序 612

實例436直接插入排序613

實例437 折半插入排序 614

實例438 希爾排序 615

實例439 冒泡排序 617

實例440 快速交換排序 618

實例441 堆排序 620

實例442 二路歸併排序 621

第15章數據結構與算法(教學視頻:91分鐘) 623

15.1 線性數據結構 623

實例443 建立線性順序表 623

實例444 建立順序棧 625

實例445 括弧匹配 627

實例446 循環佇列實現 629

實例447 稀疏矩陣的存儲 631

實例448 稀疏矩陣轉置 632

15.2 二叉樹 634

實例449 創建二叉樹的二叉鍊表存儲 634

實例450 二叉樹先序非遞歸遍歷 636

實例451 二叉樹中序非遞歸遍歷 637

實例452 二叉樹後序非遞歸遍歷 639

實例453 哈夫曼樹 641

15.3 圖 643

實例454 圖的鄰接鍊表存儲結構 643

實例455 圖的深度優先遍歷645

實例456 圖的廣度優先遍歷646

實例457 拓撲排序 647

15.4 常見查找算法 650

實例458 順序查找的實現 650

實例459 有序表折半查找 651

實例460 動態表的查找 652

第4篇 底層處理與項目開發篇

第16章 位運算(教學視頻:36分鐘) 658

16.1 按位與、或運算 658

實例461 按位與的運算 658

實例462 取數據的某些位 659

實例463 按位清零 660

實例464 按位或的運算 661

實例465 將一個數的低5位置為1 662

16.2 按位異或、取反運算 663

實例466 按位異或的運算 663

實例467 交換兩個數據的值 664

實例468 數據的翻轉 664

實例469 按位取反的運算 665

16.3 移位運算 666

實例470 按位左移的運算 666

實例471 按位右移的運算 667

實例472 輸出數據的補碼 668

16.4 位段 668

實例473 位段變數的記憶體分配 669

實例474 指向位段指針變數的套用 670

實例475 溫度測控系統 671

16.5 位運算綜合套用 673

實例476 取出數據的連續幾位 673

實例477 數據二進制的存儲形式輸出 674

實例478 取出數據的偶數位 675

實例479 數據的循環右移位 676

實例480 計算整數中位值為1的個數 677

第17章 檔案(教學視頻:97分鐘) 679

17.1 檔案打開 679

實例481 檔案的打開與關閉 679

實例482 打開一批檔案 681

17.2 檔案讀寫 682

實例483 使用fputc()函式寫入檔案 683

實例484 使用fgetc()函式讀取檔案 684

實例485 磁碟檔案的複製 685

實例486 多個檔案合併 686

實例487 使用fputs()函式寫入檔案 687

實例488 使用fgets()函式讀取檔案 688

實例489 文本的存儲和輸出 689

實例490 使用fprintf()函式寫入檔案 690

實例491 使用fscanf()函式讀取檔案 692

實例492 使用fwrite()函式寫入檔案 693

實例493 使用fread()函式讀取檔案 694

17.3 檔案定位和錯誤檢測 696

實例494 檔案指針定位到開頭 696

實例495 檔案隨機讀寫 697

實例496 檔案倒置 699

實例497 出錯標誌變化 700

實例498 檔案檢錯函式 701

實例499 文本的追加 702

實例500 檔案部分輸出 703

17.4 檔案操作的套用 704

實例501 多個字元存儲 705

實例502 多行字元串存儲 706

實例503 標準輸入輸出設備的數據和檔案數據 707

實例504 帶有行號的文本顯示 708

實例505 檔案中關鍵字的檢索 709

實例506 檔案查找字元串 711

實例507 結構型數據的存儲 712

實例508 統計檔案的字元數 714

實例509 同時顯示兩個檔案的內容 715

實例510 檔案統計 716

第18章 系統調用(教學視頻:83分鐘) 719

18.1 文本視窗調用 719

實例511 多視窗的定義以及背景色的設定 719

實例512 視窗內文本的輸入和輸出實例 720

實例513 製作簡單的文本選單 721

18.2 圖形視窗調用 723

實例514 繪圖前的準備 723

實例515 繪圖視窗的顏色設定 724

實例516 圖形視窗的坐標 725

實例517 畫點函式的使用 725

實例518 繪製直線 726

實例519 繪製矩形 727

實例520 繪製條形條塊 728

實例521 繪製多邊形 729

實例522 繪製圓形 729

實例523 繪製扇形 730

實例524 設定線條類型 731

實例525 填充類型和填充顏色的設定 732

實例526 圖形文本的輸出 733

實例527 設定圖形文本屬性 734

實例528 模擬兩個小球動態碰撞 735

實例529 飄帶圖案 737

實例530 矩形區域的顏色填充738

實例531 設計立體視窗739

18.3 中斷系統 740

實例532 軟中斷的調用 740

實例533 硬體中斷 742

實例534 在圖形界面中調用滑鼠 743

實例535 DOS中多任務模擬 746

第19章 教務管理系統(教學視頻:22分鐘) 748

實例536 教務管理系統主要數據結構設計 748

實例537 程式界面設計 752

實例538 學生記錄檔案建立 755

實例539 學生成績記錄的錄入 758

實例540 計算本學期課程平均成績 759

實例541 成績排序 761

實例542 分類統計成績分布情況 762

實例543 成績的輸出 765

實例544 學生記錄的保存 766

實例545 學生的查找操作 767

實例546 學生記錄的追加 769

實例547 刪除資料庫中指定的學生記錄 771

實例548 學生數據的修改 773

實例549 課程信息表的建立 775

實例550 安排課程的授課順序 777

實例551 安排教學計畫 779

實例552 教務管理系統實現 780

創作背景

本書約定

【實例介紹】:對需要解決的問題的已知條件和需要解決的部分做出說明,對於某些複雜的問題舉例說明該題目的功能是什麼,以及要求是什麼。

【技術要點】:對待解決的問題給出精闢的分析說明,主要說明問題解決思路,代碼構成特點。

【難點剖析】:對於比較困難的實例,給出難點是什麼,如何分析難點解決難點,在前面的基礎知識部分,難點剖析部分給出的是對於初學者來講不容易理解的部分和對它的詳細分析;後面的套用部分,難點剖析給出的是難點代碼的分析實現思路擴展。

【程式代碼】:這一部分給出了解決問題的主要C語言代碼,在代碼中對於重要的變數或者複雜的語句給出注釋和解釋,對於複雜的函式給出了功能介紹,每一個函式以及函式內的每一條代碼都是按照常見的C語言的格式書寫的,仔細研讀不但可以掌握常見問題的代碼書寫,對於養成良好的書寫風格也是有幫助的。一個實例中有兩處代碼,或者有正確代碼和錯誤代碼對比的,用【程式代碼1】、【程式代碼2】等標識。

【關鍵代碼分析】:對於程式代碼中的關鍵之處加以詳細說明。

【程式運行】:除程式運行過程,對於特殊的部分,例如預編譯部分,給出查看預編譯效果的運行過程,也就是使用tcc工具查看運行結構過程,對代碼中的變數和某些重要語句的作用給出分析和說明。

【拓展套用】:通過代碼的學習,為以後的問題解決提供了什麼思路,該問題在解決過程應該注意的事項和該問題還可以採用何種算法來解決,都在這部分給出說明。

配書光碟內容介紹

為了方便讀者閱讀本書,本書附帶1張DVD光碟。內容如下:

* 本書550餘個實例的原始碼

* 本書550餘個實例的多媒體視頻講解,包括實例的實現過程和運行演示。

* 免費贈送的大量互補學習資料,包括編程講座視頻、編程電子書和套用系統等。

適合閱讀本書的讀者

* 所有想學習C語言的初學者。

* 已經學習C語言基礎知識,想進一步學習C語言程式設計的讀者。

* 想參加初級、中級程式設計師考試以及參加全國二級C或者C++考試的人員。

* 進一步學習計算機其他課程例如數據結構想選擇參考書的人員。

* 想了解C作為中級語言特點的人員,可以作為開發底層程式的第一本書。

* 各大、中專院校和培訓學校的C語言教材。

閱讀本書的建議

* 沒有C語言基礎的讀者,建議從第一章順次閱讀並演練每一個實例。

* 有一定C語言基礎的讀者,可以根據實際情況有重點地選擇閱讀。

* 對於每一個實例,可以先思考一下實現的思路,然後再閱讀,這樣的學習效果 更好。

* 先對每一個實例的實現思路和實現過程完整地閱讀一遍,然後再結合光碟中的多媒體視頻講解動手實現一次,這樣理解會更加深刻。

相關詞條

相關搜尋

熱門詞條

聯絡我們