《C語言程序設計及應用教程》這本教材采用“案例驅(qū)動式”的思路進行編寫。使用該教材來指導教學就是以案例為目的,以項目為導向,案例包含了學生學習的各種知識點,最終通過案例和項目來培訓學生分析問題、解決問題的能力,實現(xiàn)案例和項目的要求。本教材首先應該讓學生簡單了解什么是編程思想,其次在C語言理論教學過程中,讓學生懂得面向?qū)ο蟮某绦蛟O計的風格,最后引導他們來設計項目。本教材從C語言的基本知識入手,以案例導入和項目導向為主線,理論結合案例,詳細介紹程序設計的算法及開發(fā)思想、C程序的數(shù)據(jù)表示及其運算、C程序的三種基本結構、數(shù)組、函數(shù)、指針、結構體、共用體、枚舉、位運算等內(nèi)容,讓學生通過案例學習的積累來掌握項目開發(fā)的流程、技能和理念。
以案例和計算機等級考試真題為主線,使讀者能夠輕松愉快地學到相應的知識和技能
前 言
C語言因其功能豐富、表達力強、程序效率高、可移植性好而成為被國內(nèi)外廣泛使用的一種計算機語言!癈語言程序設計”是高等院校計算機基礎教育中的重要課程之一。該課程可以讓學生了解程序設計的思想和方法,掌握高級語言程序設計的知識,提高問題求解和程序語言的應用能力。因此,本書旨在實現(xiàn)“以人為本、傳授知識、培養(yǎng)能力、提高素質(zhì)、協(xié)調(diào)發(fā)展”的教育理念,使學生的計算機知識、技能、能力和素質(zhì)得以協(xié)調(diào)發(fā)展。
本書針對高等院校學生的特點和認知規(guī)律,全面、系統(tǒng)地介紹C語言程序設計及應用知識,包括C語言概述、基本數(shù)據(jù)類型和運算符、順序和選擇結構程序設計、循環(huán)結構程序設計、數(shù)組、函數(shù)和模塊設計、指針、結構體和標準函數(shù)、文件等內(nèi)容。編者結合多年從事程序設計教學和研究的經(jīng)驗,參考了大量同類論著和教材,并吸收其優(yōu)點,在編寫過程中以夯實學生程序設計的理論基礎、培養(yǎng)學生程序設計的能力和養(yǎng)成良好的程序設計風格為宗旨,充分體現(xiàn)“教師易用,學生易學”的特點。
本書的特點是通俗易懂、任務豐富、目標明確、重難點突出、重在應用,以案例和計算機等級考試真題為主線,使讀者能夠輕松愉快地學到相應的知識和技能。本書不僅可作為本科院校C語言課程的用書,還可以作為廣大計算機愛好者學習C語言或者備考全國計算機等級考試(二級C)的用書和參考書。
由于編者水平有限,加之時間倉促,書中難免有不足之處,敬請讀者批評指正
2007年起在萍鄉(xiāng)學院信息與計算機工程學院擔任專業(yè)教師,從事計算機課程教學與研究工作,并擔任科研處副處長職務。講授過《C/C++程序語言設計》、《數(shù)據(jù)結構》、《軟件工程》、《數(shù)據(jù)庫原理》等課程。
主要從事數(shù)據(jù)挖掘、教育信息化、云計算等方向的研究,在數(shù)據(jù)挖掘應用、云計算理論等方面取得一定成果。近年來,先后主持完成省自然科學基金1項、省科技支撐1項、省科技廳軟科學課題1項、省教育廳科學技術研究項目1項、省高校人文課題2項、省級教改課題2項,市科技支撐課題2項,參與國家軟科學課題1項,以第一成員參與各類科研課題5項。
目 錄
模塊1 初識C語言 1
實例導入:學生成績管理系統(tǒng)界面 1
1.1 C語言簡介 2
1.2 C語言開發(fā)環(huán)境及第一個C語言程序 5
1.3算法的表示 11
1.4本章小結 17
1.5 實訓 17
1.6習題 20
模塊2 數(shù)據(jù)表示及其運算 22
實例導入: 成績管理中數(shù)據(jù)描述和處理 23
2.1 C語言程序的詞法 25
2.2 基本數(shù)據(jù)類型 27
2.3 常量 37
2.4 變量 40
2.5 運算符與表達式 54
2.6 本章小結 62
2.7 實訓一:真題演練 62
2.8 實訓二:技能訓練 65
2.9 實訓三:綜合訓練 65
模塊3 順序結構程序設計 67
實例導入: 求學生期末平均成績 67
3.1 賦值語句 68
3.2 數(shù)據(jù)輸入與輸出 72
3.3 本章小結 80
3.4 實訓 80
3.5習題 83
模塊4 選擇結構程序設計 92
實例導入:數(shù)據(jù)排序 92
4.1運算符和表達式 94
4.2利用if語句實現(xiàn)選擇結構 101
4.3 switch語句 112
4.4 本章小結 118
4.5 實訓 118
4.6習題 122
模塊5 循環(huán)結構程序設計 130
實例導入:成績批量處理與統(tǒng)計 130
5.1 循環(huán)的基本概念 132
5.2 while語句 135
5.3 do … while循環(huán) 139
5.4 for循環(huán) 142
5.5 循環(huán)程序設計舉例 146
5.6 循環(huán)嵌套 150
5.6 轉(zhuǎn)移語句 156
5.7 本章小結 159
5.8 實訓一:真題演練 160
5.9 實訓二:技能訓練 167
5.10實訓三:綜合訓練 168
模塊6 數(shù)組 169
實例導入: 選票統(tǒng)計 169
6.1 一維數(shù)組 171
6.2 二維數(shù)組 175
6.3 字符數(shù)組與字符串 180
6.4 字符串處理函數(shù) 185
6.5 本章小結 190
6.6 實訓一:真題演練 190
6.7 實訓二:技能訓練 193
6.8 實訓三:綜合訓練 194
模塊7 函數(shù) 195
實例導入: 兩個整數(shù)計算 196
7.1 概述 199
7.2 函數(shù)的參數(shù)和函數(shù)的值 202
7.3 函數(shù)的嵌套調(diào)用與遞歸調(diào)用 215
7.5 本章小結 222
7.6 實訓 223
7.7真題演練 226
模塊8 指針 231
實例導入:字母排序 231
8.1 指針的基本概念 233
8.2 指針變量 235
8.3 指針在一維數(shù)組中的應用 241
8.4 指向二維數(shù)組的指針變量 244
8.5 多級指針 246
8.6指針與函數(shù) 247
8.7 實訓一:真題演練 251
8.8 實訓二:技能訓練 259
8.9 實訓三:綜合訓練 260
模塊9 結構體、共用體與枚舉 261
9.1 結構體的定義 262
9.2 共用體 287
9.3 枚舉類型 293
9.4 本章小結 295
9.5實訓 296
模塊10 位運算與預處理 299
實例導入: 按位輸出二進制各位數(shù)上的值 300
10.1 位與字節(jié) 301
10.2 位運算 302
10.3 編譯預處理 306
模塊11 文件 318
實例導入: 創(chuàng)建學生成績文件 318
11.1 文件概述 319
11.2 文件基本操作 320
11.3 文件的讀寫 324
11.4 文件的定位 338
11.5 本章小結 338
11.6 實訓一:真題演練 339
11.7 實訓二:技能訓練 343
11.8 實訓三:綜合訓練 344