C語言基礎(chǔ)案例教程

出版時(shí)間:2010-7  出版社:北京大學(xué)出版社  作者:汪新民,劉若慧 著  頁(yè)數(shù):262  
Tag標(biāo)簽:無  

前言

  北京大學(xué)出版社第六事業(yè)部在2005年組織編寫了《21世紀(jì)全國(guó)應(yīng)用型本科計(jì)算機(jī)系列實(shí)用規(guī)劃教材》,至今已出版了50多種。這些教材出版后,在全國(guó)高校引起熱烈反響,可謂初戰(zhàn)告捷。這使北京大學(xué)出版社的計(jì)算機(jī)教材市場(chǎng)規(guī)模迅速擴(kuò)大,編輯隊(duì)伍茁壯成長(zhǎng),經(jīng)濟(jì)效益明顯增強(qiáng),與各類高校師生的關(guān)系更加密切?! ?008年1月北京大學(xué)出版社第六事業(yè)部在北京召開了“21世紀(jì)全國(guó)應(yīng)用型本科計(jì)算機(jī)案例型教材建設(shè)和教學(xué)研討會(huì)”。這次會(huì)議為編寫案例型教材做了深入的探討和具體的部署,制定了詳細(xì)的編寫目的、叢書特色、內(nèi)容要求和風(fēng)格規(guī)范。在內(nèi)容上強(qiáng)調(diào)面向應(yīng)用、能力驅(qū)動(dòng)、精選案例、嚴(yán)把質(zhì)量;在風(fēng)格上力求文字精練、脈絡(luò)清晰、圖表明快、版式新穎。這次會(huì)議吹響了提高教材質(zhì)量第二戰(zhàn)役的進(jìn)軍號(hào)?! “咐徒滩恼婺芴岣呓虒W(xué)的質(zhì)量嗎?  是的。著名法國(guó)哲學(xué)家、數(shù)學(xué)家勒內(nèi)·笛卡兒(Rene Descartes,1596-1650)說得好:“由一個(gè)例子的考察,我們可以抽出一條規(guī)律。(From the consideration of a11 example we can form a rule.)事實(shí)上,他發(fā)明的直角坐標(biāo)系,正是通過生活實(shí)例而得到的靈感。據(jù)說是在1619年夏天,笛卡兒因病住進(jìn)醫(yī)院。中午他躺在病床上,苦苦思索一個(gè)數(shù)學(xué)問題時(shí),忽然看到天花板上有一只蒼蠅飛來飛去。當(dāng)時(shí)天花板是用木條做成正方形的格子。笛卡兒發(fā)現(xiàn),要說出這只蒼蠅在天花板上的位置,只需說出蒼蠅在天花板上的第幾行和第幾列。當(dāng)蒼蠅落在第四行、第五列的那個(gè)正方形時(shí),可以用(4,5)來表示這個(gè)位置……由此他聯(lián)想到可用類似的辦法來描述一個(gè)點(diǎn)在平面上的位置。他高興地跳下床,喊著“我找到了,找到了”,然而不小心把國(guó)際象棋撒了一地。當(dāng)他的目光落到棋盤上時(shí),又興奮地一拍大腿:“對(duì),對(duì),就是這個(gè)圖”。笛卡兒鍥而不舍的毅力,苦思冥想的鉆研,使他開創(chuàng)了解析幾何的新紀(jì)元。千百年來,代數(shù)與幾何,井水不犯河水。17世紀(jì)后,數(shù)學(xué)突飛猛進(jìn)的發(fā)展,在很大程度上歸功于笛卡兒坐標(biāo)系和解析幾何學(xué)的創(chuàng)立。  這個(gè)故事,聽起來與阿基米德在浴池洗澡而發(fā)現(xiàn)浮力原理,牛頓在蘋果樹下遇到蘋果落到頭上而發(fā)現(xiàn)萬有引力定律,確有異曲同工之妙。這就證明,一個(gè)好的例子往往能激發(fā)靈感,由特殊到一般,聯(lián)想出普遍的規(guī)律,即所謂的“一葉知秋”、“見微知著”的意思?! 』仡櫽?jì)算機(jī)發(fā)明的歷史,每一臺(tái)機(jī)器、每一顆芯片、每一種操作系統(tǒng)、每一類編程語言、每一個(gè)算法、每一套軟件、每一款外部設(shè)備,無不像閃光的珍珠串在一起。每個(gè)案例都閃爍著智慧的火花,是創(chuàng)新思想不竭的源泉。在計(jì)算機(jī)科學(xué)技術(shù)領(lǐng)域,這樣的案例就像大海岸邊的貝殼,俯拾皆是。

內(nèi)容概要

  《C語言基礎(chǔ)案例教程》主要內(nèi)容包括C語言程序結(jié)構(gòu)及運(yùn)行環(huán)境、各種數(shù)據(jù)類型及使用方法、順序結(jié)構(gòu)、選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu)、數(shù)組、函數(shù)、編譯預(yù)處理、指針、結(jié)構(gòu)體、位運(yùn)算、文件等。最后,還給出一個(gè)幾乎涵蓋《C語言基礎(chǔ)案例教程》所有知識(shí)點(diǎn)的綜合應(yīng)用案例(電子通信錄)的分析與設(shè)計(jì),可作為課程設(shè)計(jì)內(nèi)容。每章后均附有相當(dāng)數(shù)量的習(xí)題供讀者練習(xí)?!  禖語言基礎(chǔ)案例教程》的特點(diǎn)是在內(nèi)容安排上采用循序漸進(jìn)的方式,在組織形式上采用通俗易懂的案例教學(xué)和啟發(fā)式教學(xué)的方式,并輔以大量便于說明問題的案例,用案例帶動(dòng)知識(shí)點(diǎn)的方法進(jìn)行講解,以一節(jié)為一個(gè)單元,對(duì)知識(shí)點(diǎn)進(jìn)行細(xì)致的取舍和編排,按節(jié)細(xì)化知識(shí)點(diǎn)并結(jié)合知識(shí)點(diǎn)介紹相關(guān)的案例,將知識(shí)和案例放在同一節(jié)中,使知識(shí)和案例相結(jié)合?!  禖語言基礎(chǔ)案例教程》可作為高校各專業(yè)的C語言教材和全國(guó)計(jì)算機(jī)等級(jí)考試參考書,也可供對(duì)C語言感興趣的其他讀者自學(xué)使用。

書籍目錄

第1章 C語言概述1.1 一個(gè)C語言程序1.2 程序和程序設(shè)計(jì)語言1.3 計(jì)算機(jī)求解問題的步驟1.4 C語言簡(jiǎn)介1.5 程序的靈魂——算法1.5.1 算法的概念1.5.2 算法的特性1.5.3 算法的表示本章小結(jié)習(xí)題上機(jī)實(shí)驗(yàn)第2章 簡(jiǎn)單C語言程序2.1 在屏幕上顯示信息2.2 數(shù)值計(jì)算2.3 程序解析2.3.1 簡(jiǎn)單數(shù)據(jù)類型2.3.2 算術(shù)表達(dá)式2.3 -3輸入/輸出函數(shù)2.4 計(jì)算銀行存款利息2.5 其他運(yùn)算符本章小結(jié)習(xí)題上機(jī)實(shí)驗(yàn)第3章 分支結(jié)構(gòu)3.1 關(guān)系運(yùn)算符與關(guān)系表達(dá)式3.2 邏輯運(yùn)算符與邏輯表達(dá)式3.3 基本if語句3.4 嵌套的if語句和switch語句3.5 分支結(jié)構(gòu)程序舉例本章小結(jié)習(xí)題上機(jī)實(shí)驗(yàn)第4章 循環(huán)結(jié)構(gòu)程序設(shè)計(jì)4.1 累加求和問題4.1.1 求自然數(shù)的和4.1.2 計(jì)算圓周率4.2 while語句4.2.1 while語句的一般形式4.2.2 統(tǒng)計(jì)輸入的一批學(xué)生的平均成績(jī)4.3 do.while語句4.3.1 do.while語句的一般形式4.3.2 最大公約數(shù)問題4.4 for語句4.4.1 for語句的一般形式4.4.2 Fibonacci數(shù)列4.5 九九乘法表與搬磚問題4.5.1 九九乘法表4.5.2 搬磚問題4.6 break語句與continue語句4.6.1 break語句4.6.2 continue語句4.7 循環(huán)結(jié)構(gòu)程序應(yīng)用舉例本章小結(jié)習(xí)題上機(jī)實(shí)驗(yàn)第5章 數(shù)組5.1 排序問題5.1.1 程序解析5.1.2 一維數(shù)組的定義和引用5.1.3 一維數(shù)組的初始化5.1.4 使用一維數(shù)組編程5.2 找出矩陣中最大值所在的位置5.2.1 程序解析5.2.2 二維數(shù)組的定義和引用5.2.3 二維數(shù)組的初始化5.2.4 使用二維數(shù)組編程5.3 字符數(shù)組與字符串5.3.1 字符數(shù)組5.3.2 統(tǒng)計(jì)字符個(gè)數(shù)5.3.3 字符串處理函數(shù)及應(yīng)用5.4 進(jìn)位制轉(zhuǎn)換5.4.1 十進(jìn)制轉(zhuǎn)換為八(二、十六)進(jìn)制5.4.2 輸出進(jìn)位制轉(zhuǎn)換表本章小結(jié)習(xí)題上機(jī)實(shí)驗(yàn)第6章 模塊化程序設(shè)計(jì)6.1 計(jì)算圓的周長(zhǎng)和面積6.2 使用函數(shù)編寫程序6.2.1 函數(shù)定義的一般形式6.2.2 函數(shù)的參數(shù)6.2 3 函數(shù)的返回值和類型6.3 變量與函數(shù)6.3.1 局部變量和全局變量6.3.2 變量生命周期和靜態(tài)局部變量6.4 函數(shù)的調(diào)用6.4.1 函數(shù)調(diào)用的一般形式6.4.2 函數(shù)的調(diào)用的方式6.4.3 函數(shù)與數(shù)組6.4.4 函數(shù)的嵌套調(diào)用6.5 遞歸問題求解6.6 編譯預(yù)處理6.6.1 概述6.6.2 宏定義6.6.3 文件包含6.6.4 C語言庫(kù)函數(shù)簡(jiǎn)介本章小結(jié)習(xí)題上機(jī)實(shí)驗(yàn)第7章 指針7.1 尋找保險(xiǎn)箱密碼7.1.1 尋找保險(xiǎn)箱密碼解析7.1.2 地址與指針7.1.3 指針變量及其定義7.1.4 指針變量的基本運(yùn)算7.1.5 指針變量的初始化7.2 貍貓換太子7.2.1 問題解析7.2.2 指針作為函數(shù)的參數(shù)7.3 排序算法7.3.1 冒泡排序7.3.2 指針、數(shù)組和地址間的關(guān)系7.3.3 通過指針引用數(shù)組元素7.3.4 數(shù)組名作為函數(shù)的參數(shù)7.4 字符串加密7.4.1 加密問題7.4.2 字符串和字符指針7.5 指針數(shù)組和指向指針的指針7.5.1 指針數(shù)組的概念7.5.2 指向指針的指針7.5.3 指針數(shù)組作為main函數(shù)的形參7.6 任意個(gè)整數(shù)的存儲(chǔ)7.6.1 任意個(gè)整數(shù)的存儲(chǔ)問題7.6.2 用指針實(shí)現(xiàn)內(nèi)存動(dòng)態(tài)分配本章小結(jié)習(xí)題上機(jī)實(shí)驗(yàn)第8章 結(jié)構(gòu)體8.1 構(gòu)建學(xué)生基本信息8.2 結(jié)構(gòu)體變量8.2.1 結(jié)構(gòu)體變量定義8.2.2 結(jié)構(gòu)體變量的引用8.2.3 結(jié)構(gòu)體變量的初始化8.3 結(jié)構(gòu)體數(shù)組8.3.1 結(jié)構(gòu)體數(shù)組的定義8.3.2 結(jié)構(gòu)體數(shù)組的初始化8.3.3 應(yīng)用舉例8.4 指針和結(jié)構(gòu)體8.4.1 指向結(jié)構(gòu)體變量的指針8.4.2 指向結(jié)構(gòu)體數(shù)組的指針8.4.3 結(jié)構(gòu)指針參數(shù)8.5 結(jié)構(gòu)體綜合應(yīng)用本章小結(jié)習(xí)題上機(jī)實(shí)驗(yàn)第9章 文件9.1 將“BeUing20081”寫入文件9.2 讀取學(xué)生信息文件9.3 文件復(fù)制本章小結(jié)習(xí)題上機(jī)實(shí)驗(yàn)第10章 用C語言開發(fā)軟件實(shí)例10.1 問題描述10.2 需求分析10.3 模塊設(shè)計(jì)10.4 程序編碼10.5 程序調(diào)試運(yùn)行本章小結(jié)上機(jī)實(shí)驗(yàn)附錄A ASC11碼表附錄B C99關(guān)鍵字附錄C 常用庫(kù)函數(shù)附錄D 常見出錯(cuò)信息參考文獻(xiàn)

章節(jié)摘錄

  程序可以簡(jiǎn)單,也可以復(fù)雜,簡(jiǎn)單的程序只有幾條指令,而復(fù)雜的程序有成千上萬指令。程序的規(guī)模越大,內(nèi)容越復(fù)雜,所需要的程序指令就越多,程序的結(jié)構(gòu)也就越復(fù)雜。隨著計(jì)算機(jī)科學(xué)技術(shù)的飛速發(fā)展,程序也變得越來越龐大和復(fù)雜。僅一個(gè)Windows操作系統(tǒng)就有幾萬條的指令代碼,所以給計(jì)算機(jī)下命令已不是一兩個(gè)“長(zhǎng)官”的事了,而是一個(gè)團(tuán)體集體智慧的結(jié)晶。1997年5月,IBM公司設(shè)計(jì)的名為“深藍(lán)”的計(jì)算機(jī)程序,以2勝2平1負(fù)戰(zhàn)勝了國(guó)際象棋大師卡斯帕羅夫?! 〕绦蛟O(shè)計(jì)(Programming)是指設(shè)計(jì)、編制、調(diào)試程序的方法和過程。程序設(shè)計(jì)是目標(biāo)明確的智力活動(dòng),它要求編寫程序的人員(程序員)首先對(duì)需要完成的任務(wù)有一個(gè)比較清晰的認(rèn)識(shí),然后按照計(jì)算機(jī)可以識(shí)別的方式來組織這些指令以形成程序,最后將描述這個(gè)任務(wù)的程序交由計(jì)算機(jī)去執(zhí)行,從而完成該任務(wù)。由于任務(wù)的復(fù)雜性和多樣性,使得程序設(shè)計(jì)不可能一次就達(dá)到要求,需要在程序的設(shè)計(jì)過程中不斷地修改和完善,最終滿足任務(wù)的需求,這個(gè)過程叫做程序的調(diào)試和測(cè)試。2.程序設(shè)計(jì)語言像長(zhǎng)官下達(dá)命令一樣,要想讓士兵正確地執(zhí)行命令,長(zhǎng)官的命令必須以一種士兵可以理解的方式來表達(dá),這就是人類的語言。要想讓計(jì)算機(jī)能正確地執(zhí)行人們所編寫的這一系列指令(程序),這些指令(程序)必須以計(jì)算機(jī)能理解的方式來表達(dá),這就是計(jì)算機(jī)程序設(shè)計(jì)語言(Programming Language),它是人和計(jì)算機(jī)之間進(jìn)行交流和溝通的工具?! ∪祟惖恼Z言是由語法和詞匯構(gòu)成的,同樣計(jì)算機(jī)語言也是由語法和詞匯構(gòu)成的。所謂語法,就是語言規(guī)則的集合,規(guī)定什么是允許的,什么是不允許的,什么是正確的,什么是錯(cuò)誤的;所謂詞匯就是符號(hào),它是語言的構(gòu)成要素。  計(jì)算機(jī)所能直接識(shí)別的語言只有一種,這就是機(jī)器語言。機(jī)器語言是由0和1(即二進(jìn)制)組成的指令序列。因?yàn)槿藗儗?duì)二進(jìn)制數(shù)據(jù)書寫和理解都存在一定的困難,所以產(chǎn)生了多種所謂的高級(jí)語言(如C語言、Basic語言、Fortran語言等),這些高級(jí)語言比較接近人們?nèi)粘J褂玫淖匀徽Z言,給人們的書寫和閱讀程序帶來了極大的方便。但高級(jí)語言不能被計(jì)算機(jī)直接識(shí)別,需要將其“翻譯”成機(jī)器語言,這個(gè)過程叫做編譯。編譯過程由相應(yīng)計(jì)算機(jī)語言的編譯程序自動(dòng)完成,不需要手工翻譯轉(zhuǎn)化?! ?.3 計(jì)算機(jī)求解問題的步驟  計(jì)算機(jī)求解問題就是人們解決某一問題的方法和步驟的計(jì)算機(jī)化,或者說是通過計(jì)算機(jī)來表達(dá)人們對(duì)某一問題的解決方法。也就是說,一個(gè)問題,如果人們不知道如何求解,那么計(jì)算機(jī)是不可能做出正確答案的。程序設(shè)計(jì)過程實(shí)際上是問題解決方案的計(jì)算機(jī)描述過程,所以程序設(shè)計(jì)過程必須遵循人們解決問題的一般過程,即分析問題、尋找方法、描述方法和實(shí)施方法的過程。具體來說包括以下5個(gè)步驟:?jiǎn)栴}提出與分析;問題的數(shù)據(jù)描述;問題的功能描述;數(shù)據(jù)和功能的計(jì)算機(jī)實(shí)現(xiàn);編碼、調(diào)試、編譯、連接和運(yùn)行。下面以一個(gè)具體的實(shí)例——“自動(dòng)應(yīng)答器”的設(shè)計(jì)與實(shí)現(xiàn)來分析以上過程和步驟?!  ?/pre>

圖書封面

圖書標(biāo)簽Tags

評(píng)論、評(píng)分、閱讀與下載


    C語言基礎(chǔ)案例教程 PDF格式下載


用戶評(píng)論 (總計(jì)0條)

 
 

 

250萬本中文圖書簡(jiǎn)介、評(píng)論、評(píng)分,PDF格式免費(fèi)下載。 第一圖書網(wǎng) 手機(jī)版

京ICP備13047387號(hào)-7