C語(yǔ)言程序設(shè)計(jì)全套教學(xué)教程完整版電子課件最全ppt電子教案_第1頁(yè)
C語(yǔ)言程序設(shè)計(jì)全套教學(xué)教程完整版電子課件最全ppt電子教案_第2頁(yè)
C語(yǔ)言程序設(shè)計(jì)全套教學(xué)教程完整版電子課件最全ppt電子教案_第3頁(yè)
C語(yǔ)言程序設(shè)計(jì)全套教學(xué)教程完整版電子課件最全ppt電子教案_第4頁(yè)
C語(yǔ)言程序設(shè)計(jì)全套教學(xué)教程完整版電子課件最全ppt電子教案_第5頁(yè)
已閱讀5頁(yè),還剩242頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、C語(yǔ)言程序設(shè)計(jì)前言C語(yǔ)言是國(guó)內(nèi)外廣泛使用的程序設(shè)計(jì)語(yǔ)言之一。C語(yǔ)言具有表達(dá)能力強(qiáng),語(yǔ)言簡(jiǎn)潔、緊湊,使用方便、靈活,易學(xué)易用等特點(diǎn)。它的數(shù)據(jù)類型豐富,具有現(xiàn)代語(yǔ)言的各種數(shù)據(jù)類型。C語(yǔ)言生成的代碼質(zhì)量高,并且其可移植性好,是計(jì)算機(jī)及相關(guān)專業(yè)人員學(xué)習(xí)計(jì)算機(jī)程序設(shè)計(jì)的首選語(yǔ)言。本書作為程序設(shè)計(jì)的入門教材,也適當(dāng)?shù)亟榻B了較高級(jí)編程部分,本書共分10章,包括:第一章C語(yǔ)言概述;第二章數(shù)據(jù)類型、運(yùn)算符和表達(dá)式;第三章順序結(jié)構(gòu)設(shè)計(jì);第四章選擇結(jié)構(gòu)設(shè)計(jì);第五章循環(huán)結(jié)構(gòu)設(shè)計(jì);第六章數(shù)組;第七章函數(shù);第八章指針;第九章結(jié)構(gòu)體和聯(lián)合體;第十章文件。本書在內(nèi)容安排上遵循深入淺出、循序漸進(jìn)的原則,重點(diǎn)是讓學(xué)生了解程序設(shè)計(jì)

2、語(yǔ)言的基本知識(shí),掌握程序設(shè)計(jì)語(yǔ)言的基本方法,使學(xué)生具有使用C語(yǔ)言解決實(shí)際問(wèn)題的初步能力??v觀C語(yǔ)言教材,大多數(shù)采用Turbo C2.0開(kāi)發(fā)環(huán)境,也有個(gè)別介紹Visual C+6.0環(huán)境,由于目前大多都是使用Windows操作系統(tǒng)前言,Turbo C2.0不支持鼠標(biāo)操作也不能使用漢字,在使用上頗感不便;而Visual C+6.0又過(guò)于龐大,學(xué)生不能隨時(shí)隨地在任何電腦上使用,故此,本教材采用Dev-C+集成開(kāi)發(fā)環(huán)境,它是一個(gè)Windows下的C和C+程序的集成開(kāi)發(fā)環(huán)境,它使用MingW32/GCC編譯器,遵循C/C+標(biāo)準(zhǔn),其壓縮包只有不到9.5M,方便攜帶,是學(xué)習(xí)C或C+很好的開(kāi)發(fā)工具,本書全部例

3、子均在該系統(tǒng)下調(diào)試通過(guò)。內(nèi)容簡(jiǎn)介本書是為高職高專學(xué)生編寫的C語(yǔ)言教材,全書共分十章:C語(yǔ)言概述;數(shù)據(jù)類型、運(yùn)算符和表達(dá)式;順序結(jié)構(gòu)設(shè)計(jì);選擇結(jié)構(gòu)設(shè)計(jì);循環(huán)結(jié)構(gòu)設(shè)計(jì);數(shù)組;函數(shù);指針;結(jié)構(gòu)體和聯(lián)系體;文件。本書力求使初學(xué)者能夠建立正確的C語(yǔ)言概念,學(xué)會(huì)基本的編程方法,形成對(duì)C語(yǔ)言的一個(gè)整體了解,本著精講多練的原則,書中盡量避免用大段文字來(lái)敘述概念,而是通過(guò)精心設(shè)計(jì)的圖形和大量例子來(lái)加以說(shuō)明。目錄第1章 C語(yǔ)言程序設(shè)計(jì) 1.1 程序設(shè)計(jì)語(yǔ)言概述 1.1.1 程序設(shè)計(jì)語(yǔ)言 的發(fā)展 1.1.2 C語(yǔ)言簡(jiǎn)史及特點(diǎn) 1.2 簡(jiǎn)單的C程序介紹 1.2.1 源程序的書寫格式 1.2.2 C程序結(jié)構(gòu) 1.2.3

4、 C語(yǔ)言中的標(biāo)識(shí)符下一頁(yè)目錄 1.3 C程序的編輯、編譯、連接和運(yùn)行 1.3.1 C程序的運(yùn)行步驟 1.3.2 Dev-C+多國(guó)語(yǔ)言版開(kāi)發(fā)環(huán)境簡(jiǎn)介第2章 數(shù)據(jù)類型、運(yùn)算符與表達(dá)式 2.1 C語(yǔ)言的數(shù)據(jù)類型 2.2 常量 2.3 變量 2.4 變量的初始值上一頁(yè)下一頁(yè)目錄 2.5 數(shù)值型數(shù)據(jù)間的運(yùn)算 2.6 運(yùn)算符、表達(dá)式及常用數(shù)學(xué)函數(shù) 2.6.1 算術(shù)運(yùn)算符及算術(shù)表達(dá)式 2.6.2 常用數(shù)學(xué)函數(shù) 2.6.3 賦值運(yùn)算符及其表達(dá)式 2.6.4 其他運(yùn)算符第3章 順序結(jié)構(gòu)設(shè)計(jì) 3.1 結(jié)構(gòu)化程序概述上一頁(yè)下一頁(yè)目錄 3.2 C語(yǔ)言語(yǔ)句 3.3 字符的輸入與輸出 3.3.1 字符輸出 3.3.2 字

5、符輸入 3.4 格式數(shù)據(jù)的輸入與輸出 3.4.1 格式輸出 3.4.2 格式輸入 3.5 程序舉例上一頁(yè)下一頁(yè)目錄第4章 選擇結(jié)構(gòu)程序設(shè)計(jì) 4.1 關(guān)系運(yùn)算符及表達(dá)式 4.2 邏輯運(yùn)算符及表達(dá)式 4.3 if語(yǔ)句 4.4 switch語(yǔ)句 4.5 綜合應(yīng)用舉例第5章 循環(huán)結(jié)構(gòu)程序設(shè)計(jì) 5.1 while語(yǔ)句上一頁(yè)下一頁(yè)目錄 5.2 do-while語(yǔ)句 5.3 for語(yǔ)句 5.4 break和continue語(yǔ)句 5.5 多重循環(huán) 5.6 綜合應(yīng)用舉例第6章 數(shù)組 6.1 數(shù)組概述 6.2 一維數(shù)組上一頁(yè)下一頁(yè)目錄 6.2.1 一維數(shù)組的定義 6.2.2 一維數(shù)組的引用 6.2.3 一維數(shù)組的

6、初始化 6.2.4 一維數(shù)組的程序舉例 6.3 二維數(shù)組 6.3.1 二維數(shù)組的定義 6.3.2 二維數(shù)組的引用 6.2.3 二維數(shù)組的初始化上一頁(yè)下一頁(yè)目錄 6.2.4 一維數(shù)組的程序舉例 6.4 字符數(shù)組和字符串 6.4.1 字符數(shù)組與字符串的關(guān)系 6.4.2 字符數(shù)組的輸入與輸出 6.4.3 字符串處理函數(shù) 6.4.4 字符數(shù)組的程序舉例 6.4.5 字符串?dāng)?shù)組 6.5 綜合應(yīng)用舉例上一頁(yè)下一頁(yè)目錄第7章 函數(shù) 7.1 函數(shù)定義 7.2 函數(shù)參數(shù)和函數(shù)返回值 7.2.1 形式參數(shù)和實(shí)際參數(shù) 7.2.2 函數(shù)返回值 7.3 函數(shù)調(diào)用 7.3.1 函數(shù)調(diào)用的一般形式 7.3.2 函數(shù)調(diào)用的方

7、式上一頁(yè)下一頁(yè)目錄 7.3.3 對(duì)被調(diào)函數(shù)的聲明 7.3.4 函數(shù)的嵌套使用 7.4 遞歸函數(shù) 7.5 數(shù)組作函數(shù)參數(shù) 7.5.1 數(shù)組元素作函數(shù)的實(shí)參 7.5.2 數(shù)組名作函數(shù)參數(shù) 7.6 變量的存儲(chǔ)屬性 7.6.1 動(dòng)態(tài)變量上一頁(yè)下一頁(yè)目錄 7.6.2 靜態(tài)變量 7.6.3 外部變量 7.6.4 內(nèi)部函數(shù)和外部函數(shù) 7.7 預(yù)處理 7.7.1 宏定義 7.7.2 文件包含 7.7.3 條件編譯第8章 指針上一頁(yè)下一頁(yè)目錄 8.1 指針的概念、定義和引用 8.1.1 指針的概念 8.1.2 指針變量的定義 8.1.3 指針變量的引用 8.2 指針與函數(shù) 8.2.1 指針變量作函數(shù)參數(shù) 8.2

8、.2 返回值為指針的函數(shù) 8.2.3 通過(guò)指針調(diào)用函數(shù)上一頁(yè)下一頁(yè)目錄 8.3 指針與數(shù)組 8.3.1 指針與數(shù)組的關(guān)系 8.3.2 數(shù)組名作函數(shù)參數(shù)的指針解釋 8.3.3 指針數(shù)組 8.3.4 多級(jí)指針 8.4 指針與字符串 8.4.1 字符串的表示形式 8.4.2 字符串指針作函數(shù)參數(shù)上一頁(yè)下一頁(yè)目錄 8.4.3 返回字符串的函數(shù) 8.4.4 字符指針數(shù)組 8.4.5 字符指針與字符數(shù)組的討論 8.5 指針數(shù)據(jù)類型小結(jié) 8.5.1 各種指針定義小結(jié) 8.5.2 指針運(yùn)算小結(jié) 8.5.3 void類型指針第9章 結(jié)構(gòu)體與聯(lián)合體上一頁(yè)下一頁(yè)目錄 9.1 結(jié)構(gòu)體定義 9.1.1 結(jié)構(gòu)體定義格式

9、9.1.2 結(jié)構(gòu)體變量 9.2 結(jié)構(gòu)體數(shù)組 9.3 結(jié)構(gòu)體與指針 9.3.1 結(jié)構(gòu)體指針 9.3.2 結(jié)構(gòu)體數(shù)組指針 9.4 結(jié)構(gòu)體與函數(shù)上一頁(yè)下一頁(yè)目錄 9.4.1 參數(shù)為結(jié)構(gòu)體類型 9.4.2 函數(shù)的返回值為結(jié)構(gòu)體類型 9.5 動(dòng)態(tài)內(nèi)存管理 9.5.1 常用動(dòng)態(tài)內(nèi)存管理函數(shù) 9.5.2 鏈表 9.6 聯(lián)合體 9.7 枚舉類型 9.8 用typedef 定義新類型名 上一頁(yè)下一頁(yè)目錄第10章 文件 10.1 文件概述 10.2 內(nèi)部文件和外部文件 10.3 文件的打開(kāi)與關(guān)閉 10.3.1 文件的打開(kāi) 10.3.2 文件的關(guān)閉 10.4 文件的讀/寫 10.4.1 讀/寫單個(gè)字符上一頁(yè)下一頁(yè)目

10、錄 10.4.2 讀/寫字符串 10.4.3 文件的格式化讀/寫 10.4.4 塊讀/寫 10.5 文件的定位 10.5.1 回繞 10.5.2 隨機(jī)定位上一頁(yè)第1章 C語(yǔ)言概述1.1 程序設(shè)計(jì)語(yǔ)言概述1.2 簡(jiǎn)單的C程序介紹1.3 C程序的編輯、編譯、連接和運(yùn)行第1章 C語(yǔ)言概述本章要點(diǎn):(1)程序設(shè)計(jì)語(yǔ)言概述;(2)簡(jiǎn)單的C程序介紹;(3)C程序的編輯、編譯、連接和運(yùn)行。返回1.1 程序設(shè)計(jì)語(yǔ)言概述1.1.1 程序設(shè)計(jì)語(yǔ)言的發(fā)展1.機(jī)器語(yǔ)言機(jī)器語(yǔ)言是指計(jì)算機(jī)本身自帶的指令系統(tǒng)。計(jì)算機(jī)的指令由二進(jìn)制序列組成,用來(lái)控制計(jì)算機(jī)進(jìn)行某種操作。指令由操作碼和地址碼兩部分組成。其中操作碼規(guī)定計(jì)算機(jī)要做

11、的運(yùn)算;地址碼告訴計(jì)算機(jī)是由哪些數(shù)來(lái)參加運(yùn)算,在什么地方能找到數(shù)據(jù),計(jì)算機(jī)的結(jié)果存放在哪里,等等。用機(jī)器語(yǔ)言編寫的程序不必通過(guò)任何翻譯處理,計(jì)算機(jī)就能夠直接識(shí)別和執(zhí)行。機(jī)器語(yǔ)言屬于低級(jí)語(yǔ)言。2.匯編語(yǔ)言匯編語(yǔ)言的指令與機(jī)器語(yǔ)言的指令基本上保持了一一對(duì)應(yīng)的關(guān)系。與機(jī)器語(yǔ)言比起來(lái),匯編語(yǔ)言易記、易讀、易檢查、易修改,但卻不能被計(jì)算機(jī)直接識(shí)別和執(zhí)行,必須由翻譯程序翻譯成機(jī)器語(yǔ)言程序后才能執(zhí)行。匯編語(yǔ)言仍然是面向特定計(jì)算機(jī)的語(yǔ)言,也仍然是低級(jí)語(yǔ)言下一頁(yè)返回1.1 程序設(shè)計(jì)語(yǔ)言概述3.高級(jí)語(yǔ)言高級(jí)語(yǔ)言是接近人類自然語(yǔ)言和數(shù)學(xué)語(yǔ)言的程序設(shè)計(jì)語(yǔ)言,具有以下共同的特點(diǎn):(1)可以不了解機(jī)器語(yǔ)言代碼即可編程,是

12、不依賴于特定計(jì)算機(jī)的語(yǔ)言。(2)高級(jí)語(yǔ)言的一個(gè)執(zhí)行語(yǔ)句通常對(duì)應(yīng)多條機(jī)器指令。(3)高級(jí)語(yǔ)言接近自然語(yǔ)言和數(shù)學(xué)語(yǔ)言,容易被人們接收和掌握。(4)用高級(jí)語(yǔ)言編寫的程序,可移植性好。(5)源程序必須經(jīng)過(guò)翻譯才能被計(jì)算機(jī)識(shí)別和執(zhí)行。(6)具有結(jié)構(gòu)化程序設(shè)計(jì)結(jié)構(gòu)和模塊化程序設(shè)計(jì)思想。翻譯的方式有編譯和解釋兩種。編譯方式是把源程序從頭至尾整個(gè)的翻譯成目標(biāo)程序,然后執(zhí)行該目標(biāo)程序。解釋方式是把源程序逐句翻上一頁(yè)下一頁(yè)返回1.1 程序設(shè)計(jì)語(yǔ)言概述譯,譯出一句就立即執(zhí)行一句。解釋方式不產(chǎn)生目標(biāo)程序。4.面向?qū)ο蟮某绦蛟O(shè)計(jì)語(yǔ)言面向?qū)ο蟮某绦蛟O(shè)計(jì)語(yǔ)言最突出的特點(diǎn)是封裝性,在Windows中常見(jiàn)的組合框和命令按鈕(如

13、圖1.1所示)等都是對(duì)象。Visual C+、Delphi等都是具有代表性的面向?qū)ο蟮某绦蛟O(shè)計(jì)語(yǔ)言。1.1.2 C語(yǔ)言簡(jiǎn)史及特點(diǎn)1.C語(yǔ)言的發(fā)展簡(jiǎn)史C語(yǔ)言是在美國(guó)貝爾實(shí)驗(yàn)室誕生的。貝爾實(shí)驗(yàn)室的M.D.Ritchie和K.Thompson在開(kāi)發(fā)UNIX操作系統(tǒng)時(shí),希望有一種既有高級(jí)語(yǔ)言特性,又有低級(jí)語(yǔ)言特點(diǎn)的語(yǔ)言來(lái)描述系統(tǒng)軟件,但當(dāng)時(shí)存在的CPL、BCPL、B語(yǔ)言不是規(guī)模大、難以實(shí)現(xiàn),就是過(guò)于簡(jiǎn)單,功能上一頁(yè)下一頁(yè)返回1.1 程序設(shè)計(jì)語(yǔ)言概述很弱。1977年出現(xiàn)了可移植C語(yǔ)言,1978年第七版的C語(yǔ)言成了當(dāng)時(shí)的標(biāo)準(zhǔn),稱標(biāo)準(zhǔn)C。1983年,美國(guó)國(guó)家標(biāo)準(zhǔn)化協(xié)會(huì)(ANSI)對(duì)C語(yǔ)言制定新的標(biāo)準(zhǔn),稱為A

14、NSIC ,這就是現(xiàn)行的C語(yǔ)言標(biāo)準(zhǔn)。目前,實(shí)用的C語(yǔ)言編譯系統(tǒng)種類繁多,如Turbo C,Microsoft C,Quick C等,雖然它們略有差異,但基本部分都是相同的。2.C語(yǔ)言的特點(diǎn)(1)表達(dá)能力強(qiáng)。(2)簡(jiǎn)潔、緊湊、使用方便、靈活、易學(xué)易用。(3)數(shù)據(jù)類型豐富,具有現(xiàn)代語(yǔ)言的各種數(shù)據(jù)類型。(4)語(yǔ)言生成的代碼質(zhì)量高,其代碼效率僅比用匯編語(yǔ)言寫的代碼低10%20%。(5)C語(yǔ)言的可移植性好上一頁(yè)返回1.2 簡(jiǎn)單的C程序介紹1.2.1 源程序的書寫格式例1.1 Hello程序main() printf(“Hello!n”); system(“pause”);說(shuō)明:(1)main()是主函數(shù)

15、,相當(dāng)于其他語(yǔ)言中的主程序。(2)一對(duì)大括號(hào)是函數(shù)的開(kāi)始與結(jié)束,被括起來(lái)的部分成為函數(shù)體,本函數(shù)有兩個(gè)語(yǔ)句。(3)printf()是C語(yǔ)言的輸出庫(kù)函數(shù),雙引號(hào)括起來(lái)的字符串按下一頁(yè)返回1.2 簡(jiǎn)單的C程序介紹原樣輸出。其中以“”開(kāi)始的字符稱“轉(zhuǎn)義字符”,“n”是換行符,即在輸出“Hello”后回車換行。如果再運(yùn)行一次該程序,兩次的輸出會(huì)分別在兩行上顯示出來(lái)。(4)system(“pause”)是調(diào)用操作系統(tǒng)的暫停,將會(huì)在屏幕上顯示“請(qǐng)按任意鍵繼續(xù)”,目的是方便觀察運(yùn)行結(jié)果。(5)每個(gè)語(yǔ)句后面都有一個(gè)分號(hào)。例1.2 兩個(gè)數(shù)相加main() int a,b,sum; scanf(“%d,%d”,&

16、a,&b); sum=a+b; printf(“sum=%dn”,sum);上一頁(yè)下一頁(yè)返回1.2 簡(jiǎn)單的C程序介紹 system(“pause”);說(shuō)明:(1)用“/*”和“*/”括起來(lái)的部分是注釋內(nèi)容。注釋只是給人看的,對(duì)編譯和運(yùn)行不起作用。(2)int a,b,sum;是定義變量部分,定義了3個(gè)int(整型)變量a,b,sum。經(jīng)定義后,程序?yàn)檫@些變量開(kāi)辟該類型所需要的內(nèi)存單元,用來(lái)存入一個(gè)值。(3)scanf()是輸入函數(shù),也是庫(kù)函數(shù)。其作用是將鍵盤輸入的數(shù)據(jù)存入變量a和b中。&a和&b中“&”的含義是“取地址”,即將兩個(gè)數(shù)值分別存入到變量a和b的地址所標(biāo)志的內(nèi)存單元中。(4)scan

17、f()和printf()兩個(gè)函數(shù)中以“%”開(kāi)始的字符是輸入輸出“格式描述字符”,用來(lái)指定輸入輸出時(shí)的數(shù)據(jù)類型和格式。上一頁(yè)下一頁(yè)返回1.2 簡(jiǎn)單的C程序介紹(5)在scanf()和printf()中雙引號(hào)中除了轉(zhuǎn)義字符和格式字符以外的其他字符,在輸入時(shí)要求原樣輸入,在輸出時(shí)原樣輸出。(6)sum=a+b;是賦值語(yǔ)句,其作用是將“=”右邊的表達(dá)式的值計(jì)算出來(lái),送給左邊的變量。(7)C程序書寫格式自由,允許在一行上寫多條語(yǔ)句,也允許把一條語(yǔ)句寫在多行上。1.2.2 C程序結(jié)構(gòu)C語(yǔ)言是基于函數(shù)的語(yǔ)言,C程序由函數(shù)組成。函數(shù)分為庫(kù)函數(shù)和自定義函數(shù)兩類。1.庫(kù)函數(shù)庫(kù)函數(shù)是系統(tǒng)已經(jīng)編寫好的,根據(jù)它們的不同

18、功能和性質(zhì)分門別類地上一頁(yè)下一頁(yè)返回1.2 簡(jiǎn)單的C程序介紹存放在不同的文件中,稱之為庫(kù)文件或頭文件,其文件擴(kuò)展名為.h。庫(kù)函數(shù)的語(yǔ)法格式為: #include 或 #include“庫(kù)文件名”2.用戶自定義函數(shù)用戶自定義函數(shù)是由用戶根據(jù)需要自己在程序中編碼。其語(yǔ)法格式: 類型符 函數(shù)名(形式參數(shù)說(shuō)明表) 變量定義部分 語(yǔ)句部分 在函數(shù)首部中,“類型符”是指當(dāng)函數(shù)結(jié)束時(shí)所得到的結(jié)果類型。“函數(shù)名”是給函數(shù)起的名字。“形式參數(shù)說(shuō)明表”是指當(dāng)函數(shù)在執(zhí)行時(shí)所需要的“自變量”,它是作為函數(shù)計(jì)算的依據(jù)?!靶问絽?shù)”是變量,要上一頁(yè)下一頁(yè)返回1.2 簡(jiǎn)單的C程序介紹對(duì)它進(jìn)行類型說(shuō)明,“形式參數(shù)”可以有多個(gè)

19、,在書寫時(shí)它們中間用逗號(hào)分隔。函數(shù)體是被花括號(hào)“”括著的部分。它包括兩部分。(1)變量定義部分;(2)語(yǔ)句部分(也稱執(zhí)行部分);歸納起來(lái),C程序的結(jié)構(gòu)形式如下: C程序=編譯預(yù)處理命令+C函數(shù)1+C函數(shù)2+C函數(shù)n1.2.3 C語(yǔ)言中的標(biāo)識(shí)符標(biāo)識(shí)符是用來(lái)命名一個(gè)名字的,如常量名、變量名、函數(shù)名、數(shù)組名、類型名等都必須是C語(yǔ)言中合法的標(biāo)識(shí)符。上一頁(yè)下一頁(yè)返回1.2 簡(jiǎn)單的C程序介紹C語(yǔ)言規(guī)定標(biāo)識(shí)符只能由字母、數(shù)字和下劃線3種字符組成,且第一個(gè)字符必須為字母或下劃線。注意:大寫字母和小寫字母在C語(yǔ)言中被認(rèn)為是兩個(gè)不同的字符。因此count和COUNT是兩個(gè)不同的標(biāo)識(shí)符。上一頁(yè)返回1.3 C程序的編

20、輯、編譯、連接和運(yùn)行1.3.1 C程序的運(yùn)行步驟C程序運(yùn)行需要經(jīng)過(guò)4個(gè)步驟:(1)編輯。將源程序錄入到計(jì)算機(jī)中,并可以進(jìn)行修改?!?C”為擴(kuò)展名的源程序文件。(2)編譯。源程序不能直接執(zhí)行,需要經(jīng)過(guò)C編譯程序,它將把源程序“翻譯”成由機(jī)器指令組成的目標(biāo)程序文件,其擴(kuò)展名為“.OBJ”(3)連接。把各個(gè)OBJ文件以及系統(tǒng)提供的系統(tǒng)庫(kù)函數(shù)等進(jìn)行連接處理后,才能形成可執(zhí)行文件,其擴(kuò)展名為“EXE”。(4)運(yùn)行。運(yùn)行可執(zhí)行文件,得到運(yùn)行結(jié)果。以上步驟如圖1.2所示。下一頁(yè)返回1.3 C程序的編輯、編譯、連接和運(yùn)行1.3.2 Dev-C+多國(guó)語(yǔ)言版開(kāi)發(fā)環(huán)境簡(jiǎn)介Dev-C+是一個(gè)Windows下的C和C+

21、程序的集成開(kāi)發(fā)環(huán)境。它使用MingW32/GCC編譯器,遵循C/C+標(biāo)準(zhǔn)。開(kāi)發(fā)環(huán)境包括多頁(yè)面窗口、工程編輯器以及調(diào)試器等,在工程編輯器中集合了編輯器、編譯器、連接程序和執(zhí)行程序,提高高亮度語(yǔ)法顯示的,以減少編輯錯(cuò)誤,還有完善的調(diào)試功能,能夠滿足初學(xué)者與編程高手的不同需求,是學(xué)習(xí)C或C+的首選開(kāi)發(fā)工具。啟動(dòng)Dev-C+后,顯示Dev-C+的集成開(kāi)發(fā)環(huán)境窗口,如圖1.3所示。1.建立C語(yǔ)言源程序在圖1.3的集成開(kāi)發(fā)環(huán)境中,選擇“文件”/“新建”/“源代碼”命令,或直接按Ctrl+N組合鍵,都會(huì)在集成開(kāi)發(fā)環(huán)境的右側(cè)出現(xiàn)源代碼編輯窗口。初始時(shí),源代碼文件名默認(rèn)是“未命名1”,如圖1.4所示。上一頁(yè)下一

22、頁(yè)返回2.編輯源代碼在代碼編輯窗口中輸入例1.1程序,其編輯方法如同使用記事本一樣。3.保存為C程序選擇“文件”/“保存”命令,或按Ctrl+S組合鍵,都會(huì)打開(kāi)“保存文件”對(duì)話框,如圖1.5所示。在“保存文件”對(duì)話框中輸入文件名,由于Dev-C+既可以運(yùn)行C程序也可以運(yùn)行C+程序,所以還要選擇文件類型為“C source files”,指定保存的是C程序文件。4.編譯C語(yǔ)言源程序選擇“運(yùn)行”/“編譯”命令,或按Ctrl+F9組合鍵,都可以實(shí)現(xiàn)對(duì)源程序文件的編譯。編譯如果有錯(cuò)誤,源代碼窗口和編譯窗口會(huì)出現(xiàn)圖1.6類似的效果,可以根據(jù)提示信息對(duì)程序進(jìn)行檢查,然后再重新編譯。1.3 C程序的編輯、編

23、譯、連接和運(yùn)行上一頁(yè)下一頁(yè)返回1.3 C程序的編輯、編譯、連接和運(yùn)行如果編譯沒(méi)有錯(cuò)誤會(huì)出現(xiàn)編譯結(jié)束窗口,如圖1.7所示,單擊“關(guān)閉”按鈕編譯結(jié)束。5.運(yùn)行選擇“運(yùn)行”/“運(yùn)行”命令,或按Ctrl+F10組合鍵,都可以運(yùn)行程序,打開(kāi)圖1.8所示的程序運(yùn)行窗口。按下任何一個(gè)鍵盤鍵,該窗口關(guān)閉,回到Dev-C+集成環(huán)境窗口。第4和第5步也可以合并成一步完成。選擇“運(yùn)行”/“運(yùn)行”命令,或按F9鍵。如果編譯沒(méi)有錯(cuò)則直接運(yùn)行程序。上一頁(yè)返回圖1.1 對(duì)象示例返回圖1.2 C程序的運(yùn)行步驟返回圖1.3 Dev-C+的集成開(kāi)發(fā)環(huán)境窗口返回圖1.4 源代碼文件編輯窗口返回圖1.5 “保存文件”對(duì)話框返回圖1.

24、6 編譯出現(xiàn)錯(cuò)誤時(shí)的狀態(tài)返回圖1.7 編譯結(jié)束窗口返回圖1.8 程序運(yùn)行窗口返回第2章 數(shù)據(jù)類型、運(yùn)算符與表達(dá)式2.1 C語(yǔ)言的數(shù)據(jù)類型2.2 常量2.3 變量2.4 變量的初始值2.5 數(shù)值型數(shù)據(jù)間的運(yùn)算2.6 運(yùn)算符、表達(dá)式及常用的數(shù)學(xué)函數(shù)第2章 數(shù)據(jù)類型、運(yùn)算符與表達(dá)式本章要點(diǎn):(1)C語(yǔ)言的基本數(shù)據(jù)類型;(2)常量和變量;(3)不同數(shù)據(jù)類型運(yùn)算的規(guī)則;(4)算術(shù)運(yùn)算及表達(dá)式。返回2.1 C語(yǔ)言的數(shù)據(jù)類型數(shù)據(jù)是程序處理的對(duì)象。程序中對(duì)數(shù)據(jù)的描述,主要表現(xiàn)在對(duì)數(shù)據(jù)類型的定義上,編譯程序根據(jù)定義在內(nèi)存中分配適當(dāng)?shù)目臻g來(lái)存放數(shù)據(jù)。圖2.1給出了C語(yǔ)言的各種數(shù)據(jù)類型。表2.1列出了32位C語(yǔ)言編

25、譯系統(tǒng)中的基本數(shù)據(jù)類型、長(zhǎng)度及取值范圍。返回2.2 常量在程序運(yùn)行過(guò)程中,其值不能被改變的量成為常量。常量有不同的類型。1.整型常量有3種: 十進(jìn)制整數(shù)。 八進(jìn)制整數(shù)。以0開(kāi)頭的是八進(jìn)制數(shù)。 十六進(jìn)制整數(shù)。以0 x開(kāi)頭的是十六進(jìn)制數(shù)。2.實(shí)行常量在C語(yǔ)言中也稱浮點(diǎn)數(shù),有兩種表現(xiàn)形式: 十進(jìn)制數(shù)形式。也稱小樹形式。 指數(shù)形式。也稱科學(xué)記數(shù)法。3.字符常量C語(yǔ)言中的字符常量是用單引號(hào)括起來(lái)的一個(gè)字符,C語(yǔ)言中把以反下一頁(yè)返回2.2 常量斜線“”開(kāi)頭的字符稱為轉(zhuǎn)義字符,常見(jiàn)的轉(zhuǎn)義字符見(jiàn)表2.2。4.字符串常量在C語(yǔ)言中,字符串常量用雙引號(hào)括起來(lái)。我們把雙引號(hào)括起來(lái)的字符個(gè)數(shù)稱為字符串的長(zhǎng)度?!啊笔强?/p>

26、字符串,長(zhǎng)度為0。字符串在存儲(chǔ)時(shí),除了要存儲(chǔ)雙引號(hào)里面的字符之外,C規(guī)定還要多存儲(chǔ)一個(gè)字符“0”,作為“字符串的結(jié)束標(biāo)志”。“0”是ASCII碼為0的字符,是一個(gè)空操作碼,它不引起任何控制動(dòng)作,也不是一個(gè)可顯示的字符。比如字符串“CHINA”的長(zhǎng)度為5,而實(shí)際需要6個(gè)存儲(chǔ)單元。其存儲(chǔ)情況如圖2.2所示。上一頁(yè)下一頁(yè)返回2.2 常量5.符號(hào)常量可以用一個(gè)標(biāo)識(shí)符來(lái)代表一個(gè)常量。符號(hào)常量的定義格式為: #define 符號(hào)常量名 常量一般符號(hào)常量名用大寫,以便與變量名相區(qū)分。上一頁(yè)返回2.3 變量在程序運(yùn)行過(guò)程中,其值可以改變的量稱為變量。要想在程序中使用變量,必須先進(jìn)行變量定義。其一般格式為: 數(shù)

27、據(jù)類型符 變量名表;變量名是用來(lái)標(biāo)識(shí)變量在內(nèi)存中所分配的單元。不同類型的變量,所分配的內(nèi)存單元的個(gè)數(shù)也不同。如char類型需要1個(gè)字節(jié)的存儲(chǔ)單元,而float類型則需要4個(gè)字節(jié)的存儲(chǔ)單元(見(jiàn)表2.1)。如有: short int value; value=10;在內(nèi)存中找到連續(xù)的兩個(gè)字節(jié)的自由內(nèi)存單元分配給變量value,然后將10存入這兩個(gè)字節(jié)中。如圖2.3所示。返回2.4 變量的初始值程序中用到的變量,要先定義后使用。在使用變量時(shí),如果它出現(xiàn)在表達(dá)式中,必須要有一個(gè)初始值,否則該變量的值將是一個(gè)不確定的值。變量的初始值可以通過(guò)賦值語(yǔ)句、讀語(yǔ)句和變量初始化來(lái)獲得。變量的初始值也可以用變量初始

28、化來(lái)獲得,即在說(shuō)明變量的同時(shí)給變量賦值。變量初始化的一般語(yǔ)法格式為: 數(shù)據(jù)類型符 變量名=常量表達(dá)式;其中“常量表達(dá)式”的值即作為變量的初始值。返回2.5 數(shù)值型數(shù)據(jù)間的運(yùn)算在C語(yǔ)言中,不同類型的數(shù)據(jù)可以在同一表達(dá)式中進(jìn)行混合運(yùn)算,但運(yùn)算前要進(jìn)行必要的類型轉(zhuǎn)換。轉(zhuǎn)換方式有兩種:一種是自動(dòng)轉(zhuǎn)換,另一種是強(qiáng)制轉(zhuǎn)換。1.類型的自動(dòng)轉(zhuǎn)化不同類型的數(shù)據(jù)在進(jìn)行運(yùn)算時(shí),按圖2.4的轉(zhuǎn)換規(guī)則自動(dòng)進(jìn)行。圖2.4中橫向向左的箭頭表示即使類型相同也必須轉(zhuǎn)換。如兩個(gè)字符型數(shù)據(jù)在進(jìn)行運(yùn)算時(shí)必定先轉(zhuǎn)換成整型;兩個(gè)float類型的數(shù)據(jù)在運(yùn)算時(shí)全部轉(zhuǎn)換為double類型,以提高運(yùn)算的精度??v向的箭頭表示當(dāng)運(yùn)算對(duì)象為不同類型的

29、數(shù)據(jù)時(shí)轉(zhuǎn)換的方向,并不表示轉(zhuǎn)換過(guò)程。存儲(chǔ)的數(shù)據(jù)越小,類型的級(jí)別越低;否則越高。自動(dòng)轉(zhuǎn)換總是從級(jí)別低的類型向高級(jí)別的類型轉(zhuǎn)換。下一頁(yè)返回2.5 數(shù)值型數(shù)據(jù)間的運(yùn)算2.類型的強(qiáng)制轉(zhuǎn)換強(qiáng)制轉(zhuǎn)換的方法是在需要轉(zhuǎn)換的表達(dá)式前面加上用括號(hào)括起來(lái)的類型符。自動(dòng)轉(zhuǎn)換一般不會(huì)使數(shù)據(jù)受到損失,而強(qiáng)制轉(zhuǎn)換就有可能使數(shù)據(jù)受損或結(jié)果難以理解,這是由于高級(jí)別的類型轉(zhuǎn)換為低級(jí)別的類型時(shí)造成的。類型轉(zhuǎn)換可按下面的方法進(jìn)行: 整型轉(zhuǎn)換為實(shí)型:補(bǔ)足小數(shù)位及精度。 實(shí)型轉(zhuǎn)換為整型:截?cái)嘈?shù)位,只保留整數(shù)部分。 較長(zhǎng)的整數(shù)轉(zhuǎn)換為較短的整數(shù):截?cái)喔呶?,只保留低位?shù)據(jù)。如圖2.5所示。 較短的數(shù)據(jù)轉(zhuǎn)換為較長(zhǎng)的整數(shù):補(bǔ)足高位,數(shù)值不變。

30、等長(zhǎng)的整形之間的轉(zhuǎn)換:各二進(jìn)制位不變。intunsigned時(shí),原來(lái)的符號(hào)位不再作為符號(hào),而變?yōu)閿?shù)據(jù)的一部分; unsigned int時(shí),最高位被當(dāng)做符號(hào)位。如圖2.6所示。上一頁(yè)返回2.6 運(yùn)算符、表達(dá)式及常用數(shù)學(xué)函數(shù)運(yùn)算是對(duì)數(shù)據(jù)的加工。最基本的運(yùn)算形式常??梢杂靡恍┖?jiǎn)潔的符號(hào)記述,這些符號(hào)稱為運(yùn)算或操作符。被運(yùn)算的對(duì)象稱為運(yùn)算量或操作數(shù)。表達(dá)式就是用運(yùn)算符把運(yùn)算量連接起來(lái)所構(gòu)成的式子。C語(yǔ)言表達(dá)式分為算術(shù)表達(dá)式、賦值表達(dá)式、逗號(hào)表達(dá)式、條件表達(dá)式、關(guān)系表達(dá)式和邏輯表達(dá)式等。在求表達(dá)式的值時(shí),C語(yǔ)言按照各運(yùn)算符的優(yōu)先級(jí)與結(jié)合性進(jìn)行運(yùn)算。表2.3概括了全部運(yùn)算符的優(yōu)先級(jí)和結(jié)合性規(guī)則。2.6.

31、1 算術(shù)運(yùn)算符及算術(shù)表達(dá)式由算術(shù)運(yùn)算符與運(yùn)算量構(gòu)成的表達(dá)式稱算術(shù)表達(dá)式。包括基本算術(shù)運(yùn)算符和自增自減運(yùn)算符兩大類。下一頁(yè)返回2.6 運(yùn)算符、表達(dá)式及常用數(shù)學(xué)函數(shù)1.基本算術(shù)運(yùn)算符有+(加)、-(減)、*(乘)、/(除)和%(取余)5個(gè)運(yùn)算符,前4個(gè)是四則運(yùn)算符。注意:兩個(gè)整數(shù)相除的結(jié)果仍為整數(shù)。2.自增、自減運(yùn)算符有+(自增)、-(自減)兩個(gè)運(yùn)算符,它們只能用在變量的前面或后面,分別稱為前綴形式和后綴形式。其作用是使變量的值增1或減1.2.6.2 常用數(shù)學(xué)函數(shù)C語(yǔ)言提供了豐富的數(shù)學(xué)函數(shù),函數(shù)存在于math.h頭文件中。常用的數(shù)學(xué)函數(shù)見(jiàn)表2.4.上一頁(yè)下一頁(yè)返回2.6 運(yùn)算符、表達(dá)式及常用數(shù)學(xué)函

32、數(shù)在使用數(shù)學(xué)函數(shù)之前,首先要用編譯預(yù)處理命令“#include”將math.h頭文件包含到用戶源程序中。為了在C程序中完成數(shù)學(xué)計(jì)算,經(jīng)常要使用數(shù)學(xué)公式。C語(yǔ)言要求把數(shù)學(xué)公式轉(zhuǎn)換為C語(yǔ)言能夠接受的式子,即C語(yǔ)言表達(dá)式。數(shù)學(xué)公式轉(zhuǎn)換為C語(yǔ)言表達(dá)式舉例見(jiàn)表2.52.6.3 賦值運(yùn)算符及其表達(dá)式1.賦值運(yùn)算符和賦值表達(dá)式賦值運(yùn)算符“=”,有它構(gòu)成的表達(dá)式稱賦值表達(dá)式。其語(yǔ)法格式為: 變量名=表達(dá)式其作用是將“=”右邊的表達(dá)式的值賦給左邊的變量。如果表達(dá)式值的類型與變量的,類型不同,將會(huì)把表達(dá)式的值自動(dòng)轉(zhuǎn)換為變量的類型上一頁(yè)下一頁(yè)返回這種轉(zhuǎn)換是強(qiáng)制性的。2.復(fù)合賦值運(yùn)算符及其表達(dá)式賦值運(yùn)算符可以與所有的

33、雙目運(yùn)算符合在一起,構(gòu)成一種新的運(yùn)算符,稱復(fù)合的賦值運(yùn)算符。使用賦值運(yùn)算符有兩大好處:a.簡(jiǎn)化程序,使程序的可讀性更好。b.提高程序的編譯效率。2.6.4 其他運(yùn)算符1.逗號(hào)運(yùn)算符由逗號(hào)運(yùn)算符與運(yùn)算量構(gòu)成的表達(dá)式稱為逗號(hào)表達(dá)式。其語(yǔ)法格式為2.6 運(yùn)算符、表達(dá)式及常用數(shù)學(xué)函數(shù)上一頁(yè)下一頁(yè)返回2.6 運(yùn)算符、表達(dá)式及常用數(shù)學(xué)函數(shù) 表達(dá)式1,表達(dá)式2,表達(dá)式n其求值過(guò)程是:從左向右逐個(gè)計(jì)算每一個(gè)表達(dá)式,把最右側(cè)表達(dá)式的值作為整個(gè)表達(dá)式的值。逗號(hào)運(yùn)算符是所有運(yùn)算符中優(yōu)先級(jí)最低的。2.求字節(jié)運(yùn)算符運(yùn)算符sizeof是用來(lái)計(jì)算變量或數(shù)據(jù)類型所占的內(nèi)存字節(jié)數(shù)。3.位運(yùn)算符C語(yǔ)言中提供了對(duì)位的運(yùn)算,是通過(guò)位

34、運(yùn)算符來(lái)實(shí)現(xiàn)的。所謂位運(yùn)算是指按位來(lái)進(jìn)行的運(yùn)算。所以應(yīng)該先把參與運(yùn)算的數(shù)據(jù)轉(zhuǎn)換為二進(jìn)制數(shù)再進(jìn)行相應(yīng)的運(yùn)算。位運(yùn)算符及其含義見(jiàn)表2.6.上一頁(yè)返回圖2.1 C語(yǔ)言的數(shù)據(jù)類型返回表2.1 32位C語(yǔ)言編譯系統(tǒng)中的基本數(shù)據(jù)類型、長(zhǎng)度及取值范圍下一頁(yè)表2.1 32位C語(yǔ)言編譯系統(tǒng)中的基本數(shù)據(jù)類型、長(zhǎng)度及取值范圍(續(xù)表)返回上一頁(yè)表2.2 轉(zhuǎn)義字符返回圖2.2 字符串“CHINA”在內(nèi)存的存儲(chǔ)形式返回圖2.3 變量的內(nèi)存分配與存儲(chǔ)(a)實(shí)際分配情況; (b)簡(jiǎn)化表達(dá)返回圖2.4 類型自動(dòng)轉(zhuǎn)換規(guī)則返回圖2.5 較長(zhǎng)整數(shù)轉(zhuǎn)換為較短整數(shù)返回圖2.6 等長(zhǎng)整形數(shù)據(jù)間的轉(zhuǎn)換返回表2.3 運(yùn)算符的優(yōu)先級(jí)及結(jié)合性返回

35、表2.4 math.h頭文件中的常用數(shù)學(xué)函數(shù)返回表2.5 數(shù)學(xué)公式轉(zhuǎn)換為C語(yǔ)言表達(dá)式舉例返回表2.6 位運(yùn)算符及其含義返回第3章 順序結(jié)構(gòu)設(shè)計(jì)3.1 機(jī)構(gòu)化程序概述3.2 C語(yǔ)言語(yǔ)句3.3 字符的輸入與輸出3.4 格式數(shù)據(jù)的輸入與輸出第3章 順序結(jié)構(gòu)設(shè)計(jì)本章要點(diǎn):(1)結(jié)構(gòu)化程序概述(2)C語(yǔ)言語(yǔ)句(3)數(shù)據(jù)的輸入輸出。返回3.1 結(jié)構(gòu)化程序概述結(jié)構(gòu)化程序設(shè)計(jì)方法,采用自頂向下逐步求精的設(shè)計(jì)原則和單入口單出口的結(jié)構(gòu)來(lái)構(gòu)造程序。自頂向下逐步求精,就是先把一個(gè)復(fù)雜的問(wèn)題逐步分解和細(xì)化為許多小的、容易解決的模塊,然后再把模塊的功能逐步細(xì)化為一系列具體的處理步驟和將其實(shí)現(xiàn)的程序語(yǔ)句。結(jié)構(gòu)化程序支持三種

36、基本程序結(jié)構(gòu),即順序結(jié)構(gòu)、選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu)。圖3.1、圖3.2和圖3.3分別用流程圖的方法表示了這三種程序結(jié)構(gòu)。C語(yǔ)言是一種結(jié)構(gòu)化程序設(shè)計(jì)語(yǔ)言,其程序結(jié)構(gòu)也是由這三種程序結(jié)構(gòu)組成的。返回3.2 C語(yǔ)言語(yǔ)句語(yǔ)句是構(gòu)成程序的基本成分,用它可以描述程序的流程控制,對(duì)數(shù)據(jù)進(jìn)行處理。C語(yǔ)句可分為5大類。1.控制類語(yǔ)句在程序中主要是完成程序的流程控制,有以下幾種:if-else for while do-while continueswitch break goto return2.函數(shù)調(diào)用語(yǔ)句函數(shù)調(diào)用語(yǔ)句是在函數(shù)調(diào)用后面加分號(hào)構(gòu)成。3.表達(dá)式語(yǔ)句表達(dá)式語(yǔ)句是在表達(dá)式后面加分號(hào)構(gòu)成。4.空語(yǔ)句單獨(dú)的一個(gè)

37、分號(hào)即為空語(yǔ)句。 下一頁(yè)返回3.2 C語(yǔ)言語(yǔ)句5.復(fù)合語(yǔ)句復(fù)合語(yǔ)句也稱分程序或程序塊,用大括號(hào)括起來(lái)的一系列語(yǔ)句,在語(yǔ)法上等效于一個(gè)語(yǔ)句。即解決語(yǔ)法中只允許寫一個(gè)語(yǔ)句的地方,卻需要寫多個(gè)語(yǔ)句的要求。C語(yǔ)言本身并沒(méi)有提供輸入輸出語(yǔ)句,輸入和輸出操作是由庫(kù)函數(shù)來(lái)實(shí)現(xiàn)的。在使用系統(tǒng)提供的I/O庫(kù)函數(shù)時(shí),要用預(yù)處理命令“#include”將“stdio.h”文件包含到用戶程序文件中。上一頁(yè)返回3.3 字符的輸入與輸出3.3.1 字符輸出將指定的字符顯示在顯示器上,使用字符輸出函數(shù)。其語(yǔ)法格式為: putchar(ch)其中,ch是要顯示的字符型數(shù)據(jù)。該函數(shù)通常單獨(dú)使用,即在它的后面加分號(hào)構(gòu)成函數(shù)語(yǔ)句。

38、putchar()函數(shù)的參數(shù)可以是常量、變量或表達(dá)式。3.3.2 字符輸入將鍵盤上的輸入以字符方式讀入,使用字符輸入函數(shù)。其語(yǔ)法格式為: getchar()該函數(shù)沒(méi)有參數(shù),函數(shù)的值就是從鍵盤上輸入的字符。該函數(shù)通常使返回3.4 格式數(shù)據(jù)的輸入與輸出用在表達(dá)式中,即將它的值參加某種運(yùn)算。getchar()和putchar()函數(shù)每次只能輸入輸出一個(gè)字符。要想一次輸入或輸出多個(gè)且為任意類型的數(shù)據(jù)就要使用scanf()和printf()函數(shù),這兩個(gè)函數(shù)將按照用戶描述的格式來(lái)完成數(shù)據(jù)的輸入與輸出。1.printf()函數(shù)的一般格式 printf(“格式控制”,輸出項(xiàng)表)(1)“格式控制”是用來(lái)描述輸出

39、結(jié)果格式的一個(gè)字符串。它包括3種字符: 普通字符:輸出時(shí)將原樣照印。 轉(zhuǎn)義字符:即以反斜線“”開(kāi)始的字符,將會(huì)按其功能實(shí)現(xiàn)控制輸下一頁(yè)返回3.4 格式數(shù)據(jù)的輸入與輸出出 格式字符:即以百分號(hào)“%”開(kāi)始的字符,它的作用是將數(shù)據(jù)轉(zhuǎn)換為指定的格式輸出。(2)“輸出項(xiàng)表”是輸出項(xiàng)的列表。輸出項(xiàng)可以是常量、變量或表達(dá)式,其個(gè)數(shù)、類型應(yīng)與“格式控制”字符串中的“格式字符”一一對(duì)應(yīng)。2.格式字符對(duì)不同類型的輸出項(xiàng),應(yīng)該使用不同的格式字符。格式字符以“%”開(kāi)始,常用的格式字符及作用見(jiàn)表3.13.4.2 格式輸入1.scanf()函數(shù)的一般格式上一頁(yè)下一頁(yè)返回3.4 格式數(shù)據(jù)的輸入與輸出 scanf(“格式控制

40、”,地址表)(1)“格式控制”是用來(lái)描述輸入數(shù)據(jù)格式的一個(gè)字符串。它包括以下兩種字符。 普通字符:輸入時(shí)需要原樣輸入。 格式字符:與printf()函數(shù)中的格式字符用法類似。(2)“地址表”是表示變量或數(shù)組的地址列表。變量的地址多數(shù)情況是在變量名的前面使用“取地址”運(yùn)算符(&)來(lái)獲得?!暗刂繁怼敝械刂返膫€(gè)數(shù)、類型應(yīng)與“格式控制”字符串中的“格式字符”一一對(duì)應(yīng)。2.使用scanf()函數(shù)時(shí)應(yīng)注意的幾個(gè)問(wèn)題(1)“格式控制”字符串中如果沒(méi)有任何普通字符 數(shù)據(jù)中間使用一個(gè)或多個(gè)空格。 數(shù)據(jù)中間按跳格鍵(Tab)。 數(shù)據(jù)中間按回車鍵。上一頁(yè)下一頁(yè)返回3.4 格式數(shù)據(jù)的輸入與輸出(2)可以指定輸入數(shù)據(jù)所

41、占的列數(shù),系統(tǒng)自動(dòng)按指定的列數(shù)截取所需的數(shù)據(jù)。(3)使用“%c”時(shí)相當(dāng)于寫成“%lc”,即不必在輸入時(shí)使用“數(shù)據(jù)分隔符”,否則它也會(huì)被當(dāng)做字符讀入。(4)輸入數(shù)據(jù)時(shí)不能規(guī)定精度。(5)在scanf()函數(shù)中不能使用“u”格式字符和“左對(duì)齊”附加字符。(6)scanf()函數(shù)中不能有提示,若要提示可以用printf()。(7)如果輸入的數(shù)據(jù)多于scanf()函數(shù)所要求的個(gè)數(shù),余下的數(shù)據(jù)可以為下一個(gè)scanf()函數(shù)接著使用。(8)在scanf()函數(shù)中某格式字符讀入數(shù)據(jù)時(shí),遇以下情況時(shí)則認(rèn)為該數(shù)據(jù)結(jié)束。 遇“數(shù)據(jù)分隔符”。上一頁(yè)下一頁(yè)返回3.4 格式數(shù)據(jù)的輸入與輸出 遇寬度結(jié)束。 遇非法輸入。上

42、一頁(yè)返回圖3.1 順序結(jié)構(gòu)返回圖3.2 選擇結(jié)構(gòu)返回圖3.3 循環(huán)結(jié)構(gòu)(a)當(dāng)型 (b)直到型返回表3.1 printf()中常用的格式字符返回第4章 選擇結(jié)構(gòu)程序設(shè)計(jì)4.1 關(guān)系運(yùn)算符及其表達(dá)式4.2 邏輯運(yùn)算符及其表達(dá)式4.3 if語(yǔ)句4.4 switch語(yǔ)句第4章 選擇結(jié)構(gòu)程序設(shè)計(jì)本章要點(diǎn):(1)關(guān)系運(yùn)算符及其表達(dá)式(2)邏輯運(yùn)算符及其表達(dá)式(3)if語(yǔ)句(4)switch語(yǔ)句返回4.1 關(guān)系運(yùn)算符及其表達(dá)式1.關(guān)系運(yùn)算符C語(yǔ)言中有6種關(guān)系運(yùn)算符,它們的含義和優(yōu)先級(jí)見(jiàn)表4.1。關(guān)系運(yùn)算符的優(yōu)先級(jí)低于算術(shù)運(yùn)算符,高于賦值運(yùn)算符。2.關(guān)系表達(dá)式由關(guān)系運(yùn)算符與運(yùn)算量構(gòu)成的表達(dá)式稱為關(guān)系表達(dá)式。

43、關(guān)系表達(dá)式用來(lái)對(duì)兩個(gè)運(yùn)算量進(jìn)行比較,比較的結(jié)果是一個(gè)邏輯量,即“真”或“假”。若比較的結(jié)果成立,則關(guān)系表達(dá)式的值為“真”,否則為“假”。在C語(yǔ)言中,邏輯值“真”“假”分別用整數(shù)1和0表示。返回4.2 邏輯運(yùn)算符及其表達(dá)式1.邏輯運(yùn)算符C語(yǔ)言中有3種邏輯運(yùn)算符,它們的含義和優(yōu)先級(jí)見(jiàn)表4.2。邏輯運(yùn)算符的優(yōu)先級(jí)低于關(guān)系運(yùn)算符,高于賦值運(yùn)算符。2.邏輯表達(dá)式用邏輯運(yùn)算符和運(yùn)算量構(gòu)成的表達(dá)式稱邏輯表達(dá)式。運(yùn)算量可以是算術(shù)表達(dá)式、關(guān)系表達(dá)式和邏輯表達(dá)式,但通常是關(guān)系表達(dá)式。如: ?。╝b) 10 x&y3&28b) max=a; else max=b;可以用條件運(yùn)算符寫成條件表達(dá)式來(lái)處理,結(jié)果是一樣的:

44、 max=(ab)?a:b;其中“?:”即為條件運(yùn)算符,它是唯一的一個(gè)三目運(yùn)算符。由條件運(yùn)算符構(gòu)成的表達(dá)式稱為“條件表達(dá)式”,其語(yǔ)法格式為: 表達(dá)式1?表達(dá)式2:表達(dá)式3“表達(dá)式1”一般是關(guān)系表達(dá)式或邏輯表達(dá)式,是把它作為“條件”來(lái)使用的。當(dāng)條件成立時(shí),條件表達(dá)式的值為“表達(dá)式2”的值,否則為“表達(dá)式3”的值。條件運(yùn)算符的優(yōu)先級(jí)僅僅高于賦值運(yùn)算符和逗號(hào)運(yùn)算符,低于所有其他運(yùn)算符。上一頁(yè)返回4.4 switch語(yǔ)句雖然用嵌套if以及if-else-if都能實(shí)現(xiàn)多種情況的判斷選擇,但是隨著嵌套層數(shù)的增多和if結(jié)構(gòu)內(nèi)語(yǔ)句的增多,會(huì)大大地降低程序的可讀性,并且容易出現(xiàn)邏輯混亂。因此,在C語(yǔ)言中可以使用

45、switch語(yǔ)句來(lái)專門處理多情況的判斷選擇。Switch語(yǔ)句在C語(yǔ)言中也稱為開(kāi)關(guān)語(yǔ)句,其語(yǔ)法格式為: switch(表達(dá)式) case 常量1:語(yǔ)句組1 case 常量2:語(yǔ)句組2 case 常量n:語(yǔ)句組n default:語(yǔ)句組n+1 下一頁(yè)返回4.4 switch語(yǔ)句其執(zhí)行過(guò)程是:首先計(jì)算“表達(dá)式”的值,然后與case后面的“常量”逐個(gè)比較是否相等。如果表達(dá)式值與某個(gè)常量相等,就獲得了一個(gè)“入口”,即表示從此處開(kāi)始執(zhí)行所有“語(yǔ)句組”直到switch最后面的右大括號(hào)“”,即“出口”。若表達(dá)式的值與所有case后面的常量都不相等,就執(zhí)行default后面的語(yǔ)句組。如圖4.5所示。(1)swi

46、tch后面的“表達(dá)式”可以是字符型、整型或枚舉型,但不可以是實(shí)型,若為常量則無(wú)分支可言。(2)“常量”必須是不同的,但無(wú)大小順序要求。(3)“語(yǔ)句組”可以是一條語(yǔ)句,也可以是多條語(yǔ)句,且不必用大括號(hào)括起來(lái)。breakt語(yǔ)句是中斷語(yǔ)句,其作用就是中斷switch的執(zhí)行。如果在switch的每個(gè)語(yǔ)句組后面都加上break,則改進(jìn)后的switch語(yǔ)句的執(zhí)行過(guò)程如圖4.6所示。上一頁(yè)返回表4.1 關(guān)系運(yùn)算符及其表達(dá)式返回表4.2 邏輯運(yùn)算符及其表達(dá)式返回表4.3 邏輯運(yùn)算符真值表返回圖4.1 混合運(yùn)算時(shí)運(yùn)算符的優(yōu)先級(jí)返回圖4.2 兩種if語(yǔ)句的執(zhí)行過(guò)程返回圖4.3 嵌套的if語(yǔ)句的執(zhí)行過(guò)程返回圖4.4

47、 if-else-if語(yǔ)句的執(zhí)行過(guò)程返回圖4.5 switch語(yǔ)句的執(zhí)行過(guò)程返回圖4.6 語(yǔ)句組后面帶有break的switch語(yǔ)句的執(zhí)行過(guò)程返回第5章 循環(huán)結(jié)構(gòu)程序設(shè)計(jì)5.1 while語(yǔ)句5.2 do-while語(yǔ)句5.3 for語(yǔ)句5.4 break和continue語(yǔ)句5.5 多重循環(huán)第5章 循環(huán)結(jié)構(gòu)程序設(shè)計(jì)本章要點(diǎn):(1)while語(yǔ)句;(2)do-while語(yǔ)句;(3)for語(yǔ)句;(4)break和continue語(yǔ)句;(5)多重循環(huán)。返回5.1 while語(yǔ)句while語(yǔ)句用來(lái)實(shí)現(xiàn)“當(dāng)型”循環(huán)。其語(yǔ)法格式為: while(表達(dá)式)語(yǔ)句其中“表達(dá)式”可以是任何合法的表達(dá)式,通常為關(guān)

48、系表達(dá)式或邏輯表達(dá)式,是循環(huán)的條件?!罢Z(yǔ)句”只能為一條語(yǔ)句,若有多條語(yǔ)句時(shí)則用大括號(hào)括起來(lái),使之成為復(fù)合語(yǔ)句。當(dāng)“表達(dá)式”為真時(shí)執(zhí)行其后的“語(yǔ)句”;為假時(shí),循環(huán)結(jié)束,其執(zhí)行過(guò)程如圖5.1所示。 返回5.2 do-while語(yǔ)句用do-while來(lái)實(shí)現(xiàn)“直到型”循環(huán)。其語(yǔ)法格式為: do 語(yǔ)句 while(表達(dá)式);其中“語(yǔ)句”只能為一條語(yǔ)句,若有多條語(yǔ)句時(shí)則用大括號(hào)括起來(lái),使之成為復(fù)合語(yǔ)句。“表達(dá)式”可以是任何合法的表達(dá)式,通常為關(guān)系表達(dá)式或邏輯表達(dá)式。先執(zhí)行“語(yǔ)句”,后判斷“表達(dá)式”是否為真。如果為真,返回到“語(yǔ)句”重新執(zhí)行;為假時(shí),循環(huán)結(jié)束。其執(zhí)行過(guò)程如圖5.2所示。一般情況下,用whil

49、e語(yǔ)句和用do-while語(yǔ)句可以處理同一問(wèn)題。do-while語(yǔ)句可以轉(zhuǎn)換為while語(yǔ)句。圖5.2可以改畫成圖5.3的形式,二者完全等價(jià),虛線框部分就是一個(gè)while結(jié)構(gòu)。下一頁(yè)返回5.2 do-while語(yǔ)句但while與do-while之間存在著明顯的不同:while語(yǔ)句是先檢查條件,再?zèng)Q定是否執(zhí)行循環(huán)體;而do-while語(yǔ)句是先執(zhí)行循環(huán)體一次,后檢查條件,再?zèng)Q定是否繼續(xù)執(zhí)行循環(huán)體。當(dāng)循環(huán)變量的初值已經(jīng)使循環(huán)條件不成立時(shí),它們之間的差別非常明顯。上一頁(yè)返回5.3 for語(yǔ)句for語(yǔ)句可以稱為“計(jì)數(shù)式”循環(huán)語(yǔ)句,即如果循環(huán)次數(shù)是確定的,用for語(yǔ)句比較方便。其語(yǔ)法格式為: for(表達(dá)

50、式1;表達(dá)式2;表達(dá)式3)語(yǔ)句執(zhí)行過(guò)程如下:(1)計(jì)算表達(dá)式1.(2)將表達(dá)式2作為條件。若條件不成立,則執(zhí)行“語(yǔ)句”,然后執(zhí)行第(3)步;若不成立則循環(huán)結(jié)束,轉(zhuǎn)到第(4)步。(3)計(jì)算表達(dá)式3,轉(zhuǎn)回到第(2)步繼續(xù)執(zhí)行。(4)執(zhí)行for語(yǔ)句下面的執(zhí)行過(guò)程。用for語(yǔ)句描述循環(huán)次數(shù)固定的循環(huán)比較方便。下一頁(yè)返回5.3 for語(yǔ)句for語(yǔ)句說(shuō)明:(1)for循環(huán)中的“語(yǔ)句”只能是一個(gè)語(yǔ)句,若有多個(gè)語(yǔ)句需要循環(huán)時(shí)應(yīng)把它寫成復(fù)合語(yǔ)句。(2)表達(dá)式1和表達(dá)式3既可以是簡(jiǎn)單的表達(dá)式,也可以是逗號(hào)表達(dá)式??梢耘c循環(huán)變量有關(guān),也可以無(wú)關(guān)。(3)for語(yǔ)句中的3個(gè)表達(dá)式可以全部或部分省略,但分號(hào)“;”不能省。

51、上一頁(yè)返回5.4 break和continue語(yǔ)句1.break語(yǔ)句break語(yǔ)句是中斷語(yǔ)句,其語(yǔ)法格式為: break;它只能用在switch或循環(huán)語(yǔ)句中,其作用是中止當(dāng)前的switch或循環(huán)語(yǔ)句。其執(zhí)行過(guò)程如圖5.5所示。在循環(huán)中,一般是當(dāng)某個(gè)條件成立時(shí)使用break語(yǔ)句。2.continue語(yǔ)句continue語(yǔ)句是繼續(xù)語(yǔ)句,其語(yǔ)法格式為: continue;它只能用在循環(huán)語(yǔ)句中,其作用是結(jié)束本次循環(huán),即跳過(guò)循環(huán)體中尚未執(zhí)行的語(yǔ)句,繼續(xù)進(jìn)行下一次循環(huán)。其執(zhí)行過(guò)程如圖5.6所示。 Continue一般出現(xiàn)在循環(huán)的if語(yǔ)句中。返回5.5 多重循環(huán)在一個(gè)循環(huán)中又包含了另一個(gè)循環(huán),稱為多重循環(huán)(

52、也稱循環(huán)的嵌套)。實(shí)現(xiàn)多重循環(huán)結(jié)構(gòu)仍使用前面講的3種循環(huán)語(yǔ)句,多重循環(huán)的嵌套層數(shù)可以是任意的。按照嵌套層數(shù),分為雙重(二重循環(huán))、三重循環(huán)等。在圖5.7中,圖5.7(a)是雙重循環(huán);圖5.7(b)是三重循環(huán);圖5.7(c)是兩個(gè)并列的循環(huán),是單循環(huán);圖5.7(d)是雙重循環(huán);圖5.7(e)中的循環(huán)出現(xiàn)了交叉,是錯(cuò)誤的。處于內(nèi)部的循環(huán)叫做內(nèi)循環(huán),處于外部的循環(huán)叫做外循環(huán)。在設(shè)計(jì)多重循環(huán)時(shí),要特別注意內(nèi)、外循環(huán)之間的關(guān)系,以及各語(yǔ)句擺放的位置。返回圖5.1 while語(yǔ)句的執(zhí)行流程返回圖5.2 do-while語(yǔ)句的執(zhí)行過(guò)程返回圖5.3 等價(jià)的do-while流程返回圖5.4 for循環(huán)的執(zhí)行過(guò)程

53、返回圖5.5 break的執(zhí)行過(guò)程返回圖5.6 continue的執(zhí)行過(guò)程返回圖5.7 循環(huán)嵌套的形式返回第6章 數(shù)組6.1 數(shù)組概述6.2 一維數(shù)組6.3 二維數(shù)組6.4 字符數(shù)組和字符串第6章 數(shù)組本章要點(diǎn):(1)一維數(shù)組;(2)二維數(shù)組;(3)字符數(shù)組和字符串。返回6.1 數(shù)組概述在C語(yǔ)言中表達(dá)式數(shù)列和矩陣是通過(guò)數(shù)組完成的。與數(shù)列名和矩陣名等價(jià)的是數(shù)組名,數(shù)列對(duì)應(yīng)于一維數(shù)組,而矩陣對(duì)應(yīng)于二維數(shù)組。但有一個(gè)區(qū)別,就是在所有的程序設(shè)計(jì)語(yǔ)言中無(wú)法把下標(biāo)寫的那么小。為了與數(shù)學(xué)上的概念統(tǒng)一,C語(yǔ)言把下標(biāo)寫在方括號(hào)“”里,這樣表示數(shù)學(xué)上的x1和y12在C語(yǔ)言中就可以分別寫成x1和y12了。所謂數(shù)組是

54、指一組有序數(shù)據(jù)的集合,用一個(gè)統(tǒng)一數(shù)組名標(biāo)識(shí)這一數(shù)組,用下標(biāo)來(lái)指示數(shù)組中元素的位置。數(shù)組是最簡(jiǎn)單的一種構(gòu)造類型,其數(shù)組元素為同一類型,即可以為簡(jiǎn)單類型,也可以是構(gòu)造類型。返回6.2 一維數(shù)組6.2.1 一維數(shù)組的定義定義一維數(shù)組的語(yǔ)法格式為: 類型符 數(shù)組名元素個(gè)數(shù);其中“數(shù)組名”應(yīng)為合法的標(biāo)識(shí)符;“元素個(gè)數(shù)”為常量或常量表達(dá)式,不能為變量或由變量組成的表達(dá)式。例如: int a5;定義了一個(gè)數(shù)組a,它有5個(gè)元素,每個(gè)元素的類型為int,可以稱a為整型數(shù)組。注意,在C語(yǔ)言中數(shù)組元素的序號(hào)(下標(biāo))是從0開(kāi)始的。因此a數(shù)組所包含的5個(gè)元素是a0、a1、a2、a3、a4,而不含a5。下一頁(yè)返回6.2

55、一維數(shù)組6.2.2 一維數(shù)組的引用數(shù)組在定義之后即可引用,一般的引用格式為: a0=3*a3-an-2;數(shù)組元素實(shí)際是一種帶下標(biāo)的變量,它與簡(jiǎn)單變量在使用上并無(wú)不同。請(qǐng)比較: int m,n,p,a5; m=10; a2=5; n=2*m; a1=a2*3; scanf(“%d”,&p); scanf(“%d”,&a4);數(shù)組元素最常用的形式是下標(biāo)用一個(gè)整形變量,如ai。如果i=0則ai表示引用了a0;而當(dāng)i=1時(shí),則ai表示引用了a1。訪問(wèn)數(shù)組中所有元素稱“遍歷數(shù)組”,遍歷數(shù)組時(shí)是通過(guò)循環(huán)來(lái)改變下標(biāo)的。 上一頁(yè)下一頁(yè)返回6.2 一維數(shù)組6.2.3 一維數(shù)組的初始化在定義數(shù)組時(shí)給元素賦初值。一

56、般語(yǔ)法為: 類型符 數(shù)組名元素個(gè)數(shù)=常量表;如有: int a5=1,2,3,4,5;由于定義數(shù)組時(shí)編譯系統(tǒng)為所有元素順序分配存儲(chǔ)單元,初始化時(shí)是把常量表中的常量按內(nèi)存分配順序依次存入相應(yīng)的數(shù)組元素,結(jié)果使a0a4分別得到了15,如圖6.1所示。整形數(shù)組a所占的內(nèi)存單元有5*4=20個(gè)字節(jié)。說(shuō)明:(1)若給所有元素賦初值,“元素個(gè)數(shù)”可以省略。(2)可以只給一部分元素賦初值,但元素個(gè)數(shù)不能省略,未被賦初值的元素則為0。上一頁(yè)下一頁(yè)返回6.2 一維數(shù)組(3)若使全部元素都為0,可以將其定義為“全局變量”或“靜態(tài)變量”。(4)若數(shù)組在定義時(shí)未進(jìn)行初始化,則各元素的值是隨機(jī)的。上一頁(yè)返回6.3 二維

57、數(shù)組6.3.1 二維數(shù)組的定義二維數(shù)組定義的一般形式為: 類型符 數(shù)組名行數(shù)列數(shù);例如:int b23;定義了一個(gè)2*3的整型數(shù)組b,它有2行、3列共6個(gè)元素。這6個(gè)元素為:b00 b01 b02 b10 b11 b12C語(yǔ)言中,二維數(shù)組的排列順序是:按行存放,即在內(nèi)存中先順序存放第一行的元素,再存放第二行的元素。上面b數(shù)組的內(nèi)存安排如圖6.2所示,共占有24個(gè)字節(jié)的內(nèi)存單元。C語(yǔ)言允許使用多維數(shù)組。多維數(shù)組的定義格式為:數(shù)組名元素長(zhǎng)度1元素長(zhǎng)度2元素長(zhǎng)度n;下一頁(yè)返回6.3 二維數(shù)組6.3.2 二維數(shù)組的引用二維數(shù)組元素引用的一般格式為: 數(shù)組名行下標(biāo)列下標(biāo)由于二維數(shù)組有兩個(gè)下標(biāo),要遍歷二維

58、數(shù)組一般得用雙重循環(huán)完成。通常外層的循環(huán)變量控制行下標(biāo),而內(nèi)層循環(huán)變量控制列下標(biāo)。6.3.3 二維數(shù)組的初始化在定義二維數(shù)組時(shí)給元素賦初值。一般語(yǔ)法為: 類型符 數(shù)組名行數(shù)列數(shù)=常量表;初始化時(shí)按數(shù)組元素的分配順序是依次存入常量表中的常量,結(jié)果使a00a12分別得到了16。上一頁(yè)下一頁(yè)返回6.3 二維數(shù)組說(shuō)明 :(1)若給所有元素賦初值,“行數(shù)”可以省略,但“列數(shù)”不能省略。(2)可以采用分行賦值,以增加程序的可讀性。(3)可以只給一部分元素賦初值,未被賦初值的元素則為0。(4)若數(shù)組在定義時(shí)未進(jìn)行初始化,則各元素的值是隨機(jī)的。上一頁(yè)返回6.4 字符數(shù)組和字符串6.4.1 字符數(shù)組與字符串的關(guān)

59、系字符數(shù)組的定義、初始化與其他類型的數(shù)組類似。如: char s=C,h,i,n,a;其內(nèi)存分配及賦值情況如圖6.3所示。這樣的內(nèi)存分配與“China”字符串的內(nèi)存分配相似。只是少了字符串的結(jié)束標(biāo)志0。我們對(duì)上述數(shù)組s稍加改變?yōu)椋?char s=C,h,i,n,a,0;字符數(shù)組s存儲(chǔ)的就是一個(gè)字符串。如圖6.4所示。6.4.2 字符數(shù)組的輸入與輸出在使用字符數(shù)組時(shí),可以用普通數(shù)組的方式一個(gè)元素一個(gè)元素的處理下一頁(yè)返回6.4 字符數(shù)組和字符串,也可以對(duì)字符數(shù)組整體處理。1.普通數(shù)組處理方式(1)當(dāng)字符數(shù)組中存儲(chǔ)的字符不是以0結(jié)束時(shí),只能像普通的數(shù)組那樣,一個(gè)元素一個(gè)元素的處理。(2)當(dāng)字符數(shù)組中

60、存儲(chǔ)的字符是以0結(jié)束的,也可以像普通的數(shù)組那樣,一個(gè)元素一個(gè)元素的處理。2.字符數(shù)組的整體處理方式當(dāng)字符數(shù)組存儲(chǔ)的是字符串時(shí),可以與“%s”格式字符配合,完成字符串的輸入/輸出。(1)輸出字符串輸出時(shí),從下標(biāo)為0的元素開(kāi)始輸出,當(dāng)遇到0時(shí)停止輸出,而0并不完全輸出。上一頁(yè)下一頁(yè)返回6.4 字符數(shù)組和字符串(2)輸入字符串Scanf函數(shù)中的輸入項(xiàng)是字符數(shù)組名,它已經(jīng)是數(shù)組的起始地址,此時(shí)不能再加地址運(yùn)算符“&”。6.4.3 字符串處理函數(shù)1.輸出字符串函數(shù)語(yǔ)法格式為: puts(字符串表達(dá)式)其功能是將“字符串表達(dá)式”輸出后并換行。2.輸入字符串函數(shù)語(yǔ)法格式為: gets(字符串變量)其功能是將

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論