C語言程序設(shè)計與應(yīng)用

出版時間:2010-3  出版社:科學(xué)出版社  作者:孫承愛,趙衛(wèi)東,尹成波 編  頁數(shù):279  

前言

  《C語言程序設(shè)計與應(yīng)用》作為學(xué)習(xí)結(jié)構(gòu)化程序設(shè)計的入門課程,是進一步學(xué)習(xí)《數(shù)據(jù)結(jié)構(gòu)》、《面向?qū)ο蟪绦蛟O(shè)計》、《算法設(shè)計與分析》等課程的基礎(chǔ)。C語言是目前最流行和使用最廣泛的計算機語言之一,具有表達能力強、概念和功能豐富、目標程序質(zhì)量高、可移植性好、使用靈活方便等特點?! ”緯捎醚驖u進、深入淺出、通俗易懂的講解方法,本著理論與實際相結(jié)合的原則,注重知識內(nèi)容、綜合實訓(xùn)和課程設(shè)計的有機統(tǒng)一,重在培養(yǎng)學(xué)生的實際操作能力和程序設(shè)計能力,最后達到掌握C語言、形成科學(xué)的編程思想的目的?! ”緯捎媒贪甘骄帉懛绞?,學(xué)習(xí)目標明確。對每一個知識點,首先闡述相關(guān)的概念,然后通過實例加以準確清晰的展示。書中每一道程序設(shè)計例題都給出算法描述和具體知識點的分析,并注重一題多解,提高學(xué)生分析問題、設(shè)計算法和解決問題的能力?! ∪珪卜譃?3章。  第1章主要介紹了算法及算法描述?! 〉?章主要介紹了C語言程序的組成及特點,C語言的集成開發(fā)環(huán)境——Visual C++6.0集成開發(fā),編寫和調(diào)試控制臺程序的步驟、方法和工具?! 〉?章主要介紹了C語言的基本數(shù)據(jù)類型與數(shù)據(jù)運算及應(yīng)用。  第4章介紹了C語言中的庫函數(shù):輸入/輸出函數(shù)、字符串操作函數(shù)和數(shù)學(xué)運算函數(shù)?! 〉?章主要介紹了c語言中的基本結(jié)構(gòu):順序結(jié)構(gòu)、選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu)?! 〉?章講述了數(shù)組的知識。包括一維數(shù)組和二維數(shù)組、字符串與字符數(shù)組?! 〉?章主要介紹函數(shù)的知識?! 〉?章主要介紹了宏的定義方法及文件包含命令,以及條件編譯命令。  第9章引入了地址、指針的概念,講述了指針與指針變量、指針與數(shù)組、指針與字符串的相關(guān)知識與應(yīng)用。  第10章主要介紹了結(jié)構(gòu)體與共用體的相關(guān)知識與應(yīng)用。如結(jié)構(gòu)體的定義與使用,鏈表的概念和相關(guān)操作,以及共用體和枚舉型數(shù)據(jù)。  第11章主要介紹了在C語言程序設(shè)計中文件的打開、關(guān)閉、讀寫與定位?! 〉?2章從一個學(xué)生宿舍衛(wèi)生管理系統(tǒng)的實際需求分析出發(fā),按照軟件開發(fā)的基本流程,完成了系統(tǒng)的設(shè)計與實現(xiàn)。該應(yīng)用案例是對前面11章知識的綜合應(yīng)用?! 〉?3章結(jié)合了前12章的內(nèi)容安排了15個上機實驗,并包含對應(yīng)的實驗指導(dǎo)。  最后,本書附錄中給出了ASCII碼表和常用標準庫函數(shù),便于學(xué)生查找和使用。  為方便教學(xué),書中所有代碼均已在Visual C++6.0環(huán)境中通過運行和調(diào)試,可放心使用。另外,本書特為任課教師提供教學(xué)資源包,包括本書的程序源代碼、電子教案、書中練習(xí)題的詳細解答、習(xí)題庫及參考答案。

內(nèi)容概要

  《C語言程序設(shè)計與應(yīng)用》共13章,第1~11章主要介紹了算法及算法描述、C語言概述、基本數(shù)據(jù)類型與數(shù)據(jù)運算、常用庫函數(shù)、C程序設(shè)計的基本結(jié)構(gòu)、數(shù)組、函數(shù)、預(yù)處理命令、指針、結(jié)構(gòu)體與共用體以及文件等相關(guān)知識;第12章列舉了一個C語言的應(yīng)用案例——學(xué)生宿舍衛(wèi)生管理系統(tǒng),重點講解了C語言應(yīng)用系統(tǒng)的設(shè)計與實現(xiàn),包含了軟件開發(fā)的各個流程,幫助學(xué)生形成科學(xué)的編程思想;最后一章包括15個實驗,以供學(xué)生上機實踐,快速掌握編程技巧?! ∪珪鴮嵗S富,語言簡練,注重培養(yǎng)學(xué)生實踐能力,特別適合作為應(yīng)用型高職高專院校和成人教育院校的計算機專業(yè)及其他專業(yè)的教材,還可作為編程人員和C語言自學(xué)者的參考用書。

書籍目錄

第1章 算法及算法描述1.1 問題求解與算法1.1.1 問題求解1.1.2 算法及特點1.1.3 算法優(yōu)劣標準1.1.4 算法描述1.2 程序設(shè)計語言與程序設(shè)計1.2.1 程序設(shè)計語言的發(fā)展史1.2.2 程序設(shè)計必備知識1.2.3 結(jié)構(gòu)化程序設(shè)計方法1.2.4 程序質(zhì)量1.3 計算機問題求解的過程1.3.1 算法開發(fā)1.3.2 算法實現(xiàn)1.4 練習(xí)題第2章 C語言概述2.1 C語言程序的組成及特點2.2 C語言程序上機指導(dǎo)2.3 C程序的調(diào)試2.4 練習(xí)題第3章 基本數(shù)據(jù)類型與數(shù)據(jù)運算3.1 基本標識符3.1.1 保留關(guān)鍵字3.1.2 預(yù)定義標識符3.1.3 用戶自定義標識符3.2 數(shù)據(jù)類型3.3 常量3.3.1 直接常量3.3.2 符號常量3.4 變量3.4.1 變量名3.4.2 變量的定義格式3.4.3 變量的值3.4.4 變量的類型3.5 基本數(shù)據(jù)類型的轉(zhuǎn)換3.5.1 自動類型轉(zhuǎn)換3.5.2 強制類型轉(zhuǎn)換3.6 運算符和表達式3.6.1 運算符和表達式概述3.6.2 算術(shù)運算符與算術(shù)表達式3.6.3 賦值運算符與賦值表達式3.6.4 關(guān)系運算符與關(guān)系表達式3.6.5 邏輯運算符與邏輯表達式3.6.6 條件運算符與條件表達式3.6.7 逗號運算符與逗號表達式3.6.8 位運算符與位運算表達式3.6.9 取長度運算符3.6.10 運算符的優(yōu)先級和結(jié)合性3.7 應(yīng)用舉例3.8 練習(xí)題第4章 常用庫函數(shù)4.1 輸出函數(shù)4.1.1 printf函數(shù)4.1.2 putchar函數(shù)4.1.3 puts函數(shù)4.2 輸入函數(shù)4.2.1 scanf函數(shù)4.2.2 getchar函數(shù)4.2.3 gets函數(shù)4.3 字符串函數(shù)4.3.1 strcat函數(shù)4.3.2 strcpy函數(shù)4.3.3 strcmp函數(shù)4.3.4 strlen函數(shù)4.3.5 sglwr函數(shù)4.3.6 strupr函數(shù)4.4 數(shù)學(xué)函數(shù)4.5 應(yīng)用舉例4.6 練習(xí)題第5章 C程序設(shè)計的基本結(jié)構(gòu)5.1 基本語句5.2 順序結(jié)構(gòu)5.3 選擇結(jié)構(gòu)5.3.1 if語句5.3.2 switch語句5.4 循環(huán)結(jié)構(gòu)5.4.1 while語句5.4.2 do...while語句5.4.3 for語句5.4.4 跳轉(zhuǎn)語句5.4.5 循環(huán)的嵌套5.5 應(yīng)用舉例5.6 練習(xí)題第6章 數(shù)組6.1 一維數(shù)組6.1.1 一維數(shù)組的定義6.1.2 一維數(shù)組的存儲6.1.3 一維數(shù)組元素的引用6.1.4 一維數(shù)組的初始化6.1.5 一維數(shù)組的應(yīng)用6.2 二維數(shù)組6.2.1 二維數(shù)組的定義6.2.2 二維數(shù)組的存儲6.2.3 二維數(shù)組元素的引用6.2.4 二維數(shù)組的初始化6.2.5 二維數(shù)組的應(yīng)用6.3 字符串與字符數(shù)組6.3.1 字符串6.3.2 字符數(shù)組6.3.3 字符串與字符數(shù)組的應(yīng)用6.4 應(yīng)用舉例6.5 練習(xí)題第7章 函數(shù)7.1 函數(shù)的定義7.1.1 函數(shù)定義格式7.1.2 函數(shù)返回值7.2 函數(shù)的調(diào)用7.2.1 不需要進行聲明的函數(shù)調(diào)用7.2.2 需要進行聲明的函數(shù)調(diào)用7.3 嵌套與遞歸7.3.1 函數(shù)的嵌套調(diào)用7.3.2 函數(shù)的遞歸調(diào)用7.4 數(shù)組作為函數(shù)參數(shù)7.4.1 數(shù)組元素作為函數(shù)參數(shù)7.4.2 數(shù)組名作函數(shù)參數(shù)7.4.3 多維數(shù)組作函數(shù)參數(shù)7.5 變量的作用域與生存期7.5.1 變量的作用域7.5.2 變量的生存期7.6 應(yīng)用舉例7.7 練習(xí)題第8章 預(yù)處理命令8.1 宏8.1.1 宏定義8.1.2 宏取消8.2 文件包含8.3 條件編譯8.4 練習(xí)題第9章 指針9.1 指針與指針變量9.1.1 指針的概念9.1.2 指針變量的定義及引用9.1.3 指針變量作為函數(shù)參數(shù)9.1.4 指針的運算9.1.5 void指針類型9.2 指針與數(shù)組9.2.1 數(shù)組的指針9.2.2 指向數(shù)組元素的指針9.2.3 通過指針引用數(shù)組元素9.2.4 指向數(shù)組的指針9.2.5 數(shù)組指針作參數(shù)9.3 指針與字符串9.3.1 字符串的字符指針表示9.3.2 利用字符指針訪問字符串9.3.3 字符數(shù)組與字符指針的比較9.3.4 字符指針作函數(shù)參數(shù)9.4 應(yīng)用舉例9.5 練習(xí)題第10章 結(jié)構(gòu)體與共用體10.1 結(jié)構(gòu)體10.1.1 結(jié)構(gòu)體類型的定義10.1.2 結(jié)構(gòu)體變量的定義10.1.3 結(jié)構(gòu)體變量的引用10.1.4 結(jié)構(gòu)體變量的初始化10.1.5 結(jié)構(gòu)體應(yīng)用舉例10.2 鏈表10.2.1 鏈表概述10.2.2 靜態(tài)鏈表10.2.3 動態(tài)鏈表10.3 共用體與枚舉10.3.1 共用體的概念10.3.2 共用體定義及使用10.3.3 枚舉的概念10.3.4 枚舉的使用10.4 應(yīng)用舉例10.5 練習(xí)題第11章 文件11.1 文件概述11.2 文件指針11.3 文件的打開與關(guān)閉11.3.1 文件的打開11.3.2 文件的關(guān)閉11.4 文件的讀寫11.4.1 字符讀寫函數(shù)11.4.2 字符串的讀寫函數(shù)11.4.3 字讀寫函數(shù)11.4.4 數(shù)據(jù)塊讀寫函數(shù)11.4.5 格式化讀寫函數(shù)11.5 文件的定位11.5.1 重返文件頭函數(shù)11.5.2 指針位置移動函數(shù)11.5.3 取指針當前位置函數(shù)11.6 出錯的檢測11.7 應(yīng)用舉例11.8 練習(xí)題第12章 應(yīng)用案例——學(xué)生宿舍衛(wèi)生管理系統(tǒng)12.1 需求陳述12.2 需求分析12.2.1 功能需求12.2.2 數(shù)據(jù)需求12.2.3 技術(shù)約束12.3 總體設(shè)計12.3.1 系統(tǒng)總體結(jié)構(gòu)12.3.2 全局數(shù)據(jù)結(jié)構(gòu)12.3.3 界面設(shè)計12.4 詳細設(shè)計12.4.1 系統(tǒng)主函數(shù)12.4.2 管理員部分12.4.3 普通用戶部分12.5 完整代碼第13章 應(yīng)用實驗13.1 實驗一 熟悉C語言的上機環(huán)境13.2 實驗二 C語言數(shù)據(jù)類型與數(shù)據(jù)運算的應(yīng)用13.3 實驗三 C語言常用庫函數(shù)13.4 實驗四 順序和選擇結(jié)構(gòu)程序設(shè)計13.5 實驗五 循環(huán)結(jié)構(gòu)程序設(shè)計13.6 實驗六 循環(huán)嵌套程序設(shè)計13.7 實驗七 一維和二維數(shù)組的使用13.8 實驗八 字符數(shù)組及其應(yīng)用13.9 實驗九 函數(shù)的基本使用方法13.10 實驗十 函數(shù)的嵌套和遞歸13.11 實驗十一 指針的定義與使用13.12 實驗十二 指針與數(shù)組、函數(shù)13.13 實驗十三 結(jié)構(gòu)體、共用體與鏈表13.14 實驗十四 文件的使用13.15 實驗十五 綜合性實驗附錄A 常用字符與ASCⅡ代碼對照表附錄B C語言ANSI/ISO標準庫函數(shù)參考文獻

章節(jié)摘錄

  學(xué)習(xí)目標 掌握算法的概念及特點,熟練掌握用N-S圖描述算法的方法,初步掌握用流程圖和PAD圖描述算法的方法及計算機問題求解的過程。理解程序設(shè)計與程序設(shè)計語言的區(qū)別?! 栴}求解的目的是要根據(jù)問題的特征發(fā)現(xiàn)并優(yōu)化問題的解決方案。我們通常把問題求解的過程概括為五步:①理解問題特征;②設(shè)想解決方案;③優(yōu)化解決方案;④描述解決方案;⑤執(zhí)行并分析解決方案。下面通過一個具體的實例來說明問題求解的過程。  解:  (1)理解問題特征。輸入1~100的所有整數(shù);輸出1~100所有整數(shù)的和?! 。?)設(shè)想解決方案。最容易想到的解決方案是連加;也可以采用等差數(shù)列求和公式來計算;如果你擁有與高斯一樣的創(chuàng)造力,那么還可以想到使用50×101的計算方法?! 。?)優(yōu)化解決方案。對三種解決方案進行比較,顯然高斯的方法是計算量最小、計算速度最快的方案。盡管我們沒有證明該方法是最好的方案,但它已經(jīng)是解決上述問題的一個簡單、令人滿意的方案了?! 。?)描述解決方案??捎脭?shù)學(xué)算式50×101來描述?! 。?)執(zhí)行并分析解決方案。我們稍加分析就可以將高斯的方案應(yīng)用到相似問題的求解中??梢园褑栴}拓展為求含2n(n>1)個元素的等差數(shù)列的和;其相應(yīng)的解決方案可以描述為(最小元素+最大元素)×n。通過上述分析可以使得高斯的方案更具通用性?! ≡谟嬎泐I(lǐng)域中,我們把求解問題所采取的解決方案稱為算法(Algorithm),它是計算機科學(xué)和計算機應(yīng)用的核心。算法是一組有窮的規(guī)則,規(guī)定了為解決某一特定問題而采取的一系列運算步驟。一個算法應(yīng)具有以下特點?! 。?)確定性。算法每一步運算都必須有確切的含義,即每一種運算應(yīng)該執(zhí)行何種操作,產(chǎn)生何種結(jié)果必須相當明確、無二義性。

編輯推薦

  《C語言程序設(shè)計與應(yīng)用》基礎(chǔ)知識、綜合應(yīng)用案例、上機實驗及上機指導(dǎo)的有機結(jié)合,注重培養(yǎng)學(xué)生的程序設(shè)計能力,形成科學(xué)的編程思想  設(shè)置“學(xué)生宿舍衛(wèi)生管理系統(tǒng)”綜合實訓(xùn)項目,提高學(xué)生項目開發(fā)能力  15個上機實驗及其指導(dǎo),方便展開上機實踐,快速掌握編程知識和技巧  為用書教師提供教學(xué)資源包,豐富教學(xué)資源,方便教學(xué)  多媒體教學(xué)資源包  ·電子課件和電子教案  ·書中程序的源代碼  ·書中習(xí)題答案  ·附贈的習(xí)題庫及其答案(約800多道習(xí)題,按章編排)

圖書封面

評論、評分、閱讀與下載


    C語言程序設(shè)計與應(yīng)用 PDF格式下載


用戶評論 (總計0條)

 
 

 

250萬本中文圖書簡介、評論、評分,PDF格式免費下載。 第一圖書網(wǎng) 手機版

京ICP備13047387號-7