出版時間:2009-8 出版社:對外經(jīng)濟(jì)貿(mào)易大學(xué)出版社 作者:陳鶴年 主編 頁數(shù):301
前言
自20世紀(jì)70年代C語言產(chǎn)生至今,計(jì)算機(jī)界經(jīng)歷著深刻的變革,隨著大型機(jī)、個人計(jì)算機(jī)處理能力的不斷提高,C語言同時也在發(fā)生著變化。C語言原本只是為了編寫UNIX操作系統(tǒng),但是現(xiàn)在,它已經(jīng)遠(yuǎn)遠(yuǎn)超出了這個初衷。c語言由于其功能強(qiáng)、使用靈活、可移植性好、目標(biāo)程序質(zhì)量高而受到廣泛的歡迎。隨著C語言的普及,1983年,美國國家標(biāo)準(zhǔn)化組織(the American National Standards Institute,ANSI)為此成立了一個專門的委員會,其宗旨是在保持C語言原有精髓的前提下,定義一種“無二意性的且與機(jī)器無關(guān)的C語言”,于是產(chǎn)生了針對C語言的ANSI標(biāo)準(zhǔn),即ANSI C。該標(biāo)準(zhǔn)明確了原先C語言中模糊的概念,規(guī)范了標(biāo)準(zhǔn)的庫函數(shù)、內(nèi)存管理、字符串操作等內(nèi)容。隨后,在1990年,國際標(biāo)準(zhǔn)化組織(International Standardization Organization,ISO)接受ANSI C為國際標(biāo)準(zhǔn)C語言,即ISO C(ISO9899-1990)。正是由于上述的原因,我們選擇C語言作為介紹程序設(shè)計(jì)的入門語言?! 「鶕?jù)我近20年計(jì)算機(jī)教學(xué)工作的觀察,市場上很多關(guān)于C語言程序設(shè)計(jì)的書籍,或是從抽象枯燥的語法開始,或是使用晦澀的數(shù)學(xué)問題作為實(shí)例,這在某種程度上偏離了程序設(shè)計(jì)的核心,不僅容易挫傷初學(xué)者學(xué)習(xí)程序設(shè)計(jì)的信心,而且也會造成初學(xué)者對程序設(shè)計(jì)缺乏興趣。因此,需要一本初學(xué)者容易掌握的、描述程序設(shè)計(jì)概念和方法的書籍。經(jīng)過多年的教學(xué)實(shí)踐,筆者在總結(jié)C語言授課經(jīng)驗(yàn)的基礎(chǔ)上,借鑒過去用過的多本的C語言書籍的優(yōu)點(diǎn),根據(jù)講稿整理并編寫了這本《程序設(shè)計(jì)入門——C語言》。 作為一本入門教材,本書力求做到深入淺出、通俗易懂、易學(xué)易用。每個章節(jié)的結(jié)構(gòu)層次清晰:首先提出本章節(jié)的重點(diǎn)、難點(diǎn);其次給出學(xué)習(xí)之后應(yīng)該達(dá)到的目標(biāo);第三是具體知識的解讀,包括實(shí)例描述、編程風(fēng)格以及編程經(jīng)驗(yàn)等,而實(shí)例描述將從問題的提出、分析、數(shù)據(jù)結(jié)構(gòu)描述、算法設(shè)計(jì)逐漸展開,直到給出完整的代碼或主要代碼;第四,對本章的知識進(jìn)行總結(jié);最后,提供練習(xí)和“實(shí)訓(xùn)”題目,每章后面的練習(xí)內(nèi)容全面,形式多樣,包含“問答題”、“選擇題”、“判斷題”、“分析程序輸出結(jié)果題”、“編程題”和“實(shí)訓(xùn)題”等。通過這些練習(xí),學(xué)生可以及時地檢查和測試對本章內(nèi)容學(xué)習(xí)和掌握的情況,教師也可以從中選出一些題目留為作業(yè)?! 「哔|(zhì)量的軟件開發(fā)需要程序員具有較高的編程素質(zhì),這方面,國內(nèi)計(jì)算機(jī)教育與實(shí)踐相對薄弱,很多程序員雖然能熟練地掌握編程技術(shù),但是缺乏強(qiáng)烈的軟件工程與質(zhì)量意識,具體表現(xiàn)是,在實(shí)踐中不注重軟件開發(fā)最基本的三個要素:編程風(fēng)格、出錯處理以及算法復(fù)雜度分析。而這些要素是一個程序員應(yīng)具備的基本素質(zhì),是應(yīng)該在早期學(xué)習(xí)中潛移默化地接受并在實(shí)踐中運(yùn)用的。通常的軟件設(shè)計(jì)課程也往往忽視這部分教育,這也是本書所關(guān)心的內(nèi)容之一。
內(nèi)容概要
本書主要由四大模塊組成。第一模塊是“入門”部分,包括第1章,第2章,是程序設(shè)計(jì)學(xué)習(xí)的入門階段,這部分將簡單介紹個人計(jì)算機(jī)系統(tǒng)軟、硬件環(huán)境,并通過簡單的C語言程序講述程序結(jié)構(gòu)、語言集成編程環(huán)境,通過對簡單操作界面的設(shè)計(jì),學(xué)習(xí)如何設(shè)計(jì)友好的人機(jī)界面接口,初步了解程序設(shè)計(jì)的概念和培養(yǎng)學(xué)生上機(jī)操作、調(diào)試程序的能力,使學(xué)生對程序設(shè)計(jì)初步建立起整體認(rèn)識。模塊二“循序漸進(jìn)”,是程序設(shè)計(jì)基礎(chǔ)部分,包括第3章、第4章。學(xué)習(xí)各種數(shù)據(jù)類型以及結(jié)構(gòu)化流程設(shè)計(jì)的典型應(yīng)用。模塊三“提高”,開始介紹相對復(fù)雜的數(shù)組類型、函數(shù)內(nèi)容,培養(yǎng)模塊化程序設(shè)計(jì)的思想,使學(xué)生初步了解軟件工程概念,具備程序設(shè)計(jì)的基本能力;同時還講解用指針和結(jié)構(gòu)體類型進(jìn)行數(shù)據(jù)處理的程序設(shè)計(jì),學(xué)習(xí)文件結(jié)構(gòu)設(shè)計(jì),訓(xùn)練對外部存儲器數(shù)據(jù)的訪問并學(xué)習(xí)位操作的實(shí)際應(yīng)用。通過學(xué)習(xí),可以更好地培養(yǎng)學(xué)生綜合分析問題、解決問題的能力。本模塊包括第5章至第10章。模決四“綜合應(yīng)用”,提供5個綜合性的實(shí)訓(xùn)練習(xí)題目,并附源代碼,進(jìn)行系統(tǒng)練習(xí)。另外,附錄中也包括初學(xué)者在編程中常見的錯誤并給出相應(yīng)的例子與分析等內(nèi)容。
書籍目錄
模塊一 入門 第1章 計(jì)算機(jī)系統(tǒng)介紹 1.1 計(jì)算機(jī)硬件 1.2 計(jì)算機(jī)軟件 1.3 算法 1.4 小結(jié) 1.5 習(xí)題與實(shí)訓(xùn) 第2章 C語言概述 2.1 C語言的發(fā)展史及特點(diǎn) 2.2 C語言的程序結(jié)構(gòu) 2.3 C語言程序開發(fā)工具 2.4 小結(jié) 2.5 習(xí)題與實(shí)訓(xùn)模塊二 循序漸進(jìn) 第3章 基本數(shù)據(jù)類型 3.1 整型數(shù)據(jù) 3.2 實(shí)型數(shù)據(jù) 3.3 字符型數(shù)據(jù) 3.4 運(yùn)算符和表達(dá)式 3.5 小結(jié) 3.6 習(xí)題與實(shí)訓(xùn) 第4章 程序控制語句 4.1 流程圖和偽代碼 4.2 結(jié)構(gòu)化程序控制方法 4.3 順序程序設(shè)計(jì) 4.4 選擇控制程序設(shè)計(jì) 4.5 循環(huán)控制程序設(shè)計(jì) 4.6 小結(jié) 4.7 習(xí)題與實(shí)訓(xùn) 第5章 數(shù)組 5.1 一維數(shù)組 5.2 二維數(shù)組 5.3 字符數(shù)組 5.4 小結(jié) 5.5 習(xí)題與實(shí)訓(xùn) 第6章 函數(shù) 6.1 函數(shù)概述 6.2 函數(shù)的一般形式 6.3 函數(shù)的參數(shù)和返回值 6.4 函數(shù)的調(diào)用 6.5 函數(shù)的嵌套調(diào)用和遞歸調(diào)用 6.6 變量的作用域 6.7 變量的存儲類別 6.8 內(nèi)部靜態(tài)函數(shù)和外部函數(shù) 6.9 函數(shù)應(yīng)用舉例 6.10 小結(jié) 6.11 習(xí)題與實(shí)訓(xùn)模塊三 提高 第7章 指針 7.1 變量的地址和指針變量 7.2 數(shù)組的指針和指向數(shù)組的指針變量 7.3 字符串的指針和指向字符串的指針變量 7.4 字符串指針作為函數(shù)參數(shù) 7.5 指向函數(shù)的指針變量 7.6 返回指針值的函數(shù) 7.7 指針數(shù)組與指向指針的指針 7.8 指針運(yùn)算舉例 7.9 小結(jié) 7.10 習(xí)題與實(shí)訓(xùn) 第8章 結(jié)構(gòu)體、聯(lián)合體和枚舉類型 8.1 結(jié)構(gòu)體類型 8.2 結(jié)構(gòu)體數(shù)組 8.3 結(jié)構(gòu)體指針變量 8.4 聯(lián)合體 8.5 枚舉類型 8.6 用typedef定義類型 …… 第9章 位運(yùn)算 第10章 文件模塊四 綜合應(yīng)用附錄參考文獻(xiàn)
章節(jié)摘錄
模塊一 入門 第1章 計(jì)算機(jī)系統(tǒng)介紹 1.2 計(jì)算機(jī)軟件 軟件(Software)是一系列按照特定順序組織的電腦數(shù)據(jù)和指令的集合。一般來講軟件被劃分為系統(tǒng)軟件、應(yīng)用軟件和介于這兩者之間的中間件。其中系統(tǒng)軟件為計(jì)算機(jī)使用,提供最基本的功能,但是并不針對某一特定應(yīng)用領(lǐng)域。而應(yīng)用軟件則恰好相反,不同的應(yīng)用軟件根據(jù)用戶和所服務(wù)的領(lǐng)域提供不同的功能。 軟件并不只是包括可以在計(jì)算機(jī)上運(yùn)行的電腦程序,與這些電腦程序相關(guān)的文檔,一般也被認(rèn)為是軟件的一部分。簡單的說,軟件就是程序加文檔的集合體。軟件被應(yīng)用于世界的各個領(lǐng)域,對人們的生活和工作都產(chǎn)生了深遠(yuǎn)的影響?! ?.2.1 程序 計(jì)算機(jī)程序就是計(jì)算機(jī)執(zhí)行的一個指令序列。它既可以只是幾條執(zhí)行某個簡單任務(wù)的指令,也可能是要操作巨大數(shù)據(jù)量的復(fù)雜指令隊(duì)列。許多計(jì)算機(jī)程序包含有百萬計(jì)的指令,而其中很多指令可能被反復(fù)執(zhí)行。在2005年,一臺典型的個人計(jì)算機(jī)可以每秒執(zhí)行大約30億條指令。計(jì)算機(jī)通常并不會執(zhí)行一些很復(fù)雜的指令來獲得額外的機(jī)能,更多情況下是在按照程序員的編程要求來運(yùn)行那些較簡單但為數(shù)眾多的短指令。 一般情況下,程序員們是不會直接用機(jī)器語言來為計(jì)算機(jī)寫入指令的。那么做的結(jié)果只能是費(fèi)時費(fèi)力、效率低下而且漏洞百出。所以,程序員一般通過“高級”語言來寫程序,然后再由某些特別的計(jì)算機(jī)程序,如解釋器或編譯器將之翻譯成機(jī)器語言。一些編程語言看起來很接近機(jī)器語言,如匯編程序,被認(rèn)為是低級語言?!?/pre>圖書封面
評論、評分、閱讀與下載
- 還沒讀過(63)
- 勉強(qiáng)可看(460)
- 一般般(786)
- 內(nèi)容豐富(3259)
- 強(qiáng)力推薦(267)