簡(jiǎn)單三角函數(shù)胡計(jì)算器ppt課件(完整版)_第1頁(yè)
簡(jiǎn)單三角函數(shù)胡計(jì)算器ppt課件(完整版)_第2頁(yè)
簡(jiǎn)單三角函數(shù)胡計(jì)算器ppt課件(完整版)_第3頁(yè)
簡(jiǎn)單三角函數(shù)胡計(jì)算器ppt課件(完整版)_第4頁(yè)
簡(jiǎn)單三角函數(shù)胡計(jì)算器ppt課件(完整版)_第5頁(yè)
已閱讀5頁(yè),還剩420頁(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、第1篇 基礎(chǔ)篇簡(jiǎn)單三角函數(shù)計(jì)算器項(xiàng)目概述任務(wù)描述采用結(jié)構(gòu)化程序設(shè)計(jì)思想,綜合運(yùn)用C語(yǔ)言知識(shí),完成簡(jiǎn)單三角函數(shù)計(jì)算器的開發(fā)。該系統(tǒng)主要包括輸入要計(jì)算的角度、選擇要計(jì)算的三角函數(shù)(正弦、余弦、正切、余切)、輸出計(jì)算結(jié)果等功能。任務(wù)分析實(shí)現(xiàn)一個(gè)簡(jiǎn)單三角函數(shù)計(jì)算器,能夠完成計(jì)算出正弦、余弦、正切、余切等三角函數(shù)值。除了實(shí)現(xiàn)計(jì)算功能外,還需要實(shí)現(xiàn)基本的人機(jī)交互。比如,程序運(yùn)行后,首先顯示一個(gè)菜單(以下統(tǒng)稱為主菜單),提示用戶選擇要進(jìn)行哪種計(jì)算;用戶選擇后,該系統(tǒng)提示用戶輸入角度,并接收用戶輸入的角度;計(jì)算該角度的三角函數(shù);然后在屏幕上輸出計(jì)算結(jié)果;最后提示用戶“按任意鍵返回主菜單”。在主菜單中,用戶選擇

2、“0”時(shí),退出程序。學(xué)習(xí)目標(biāo)熟悉C語(yǔ)言開發(fā)集成環(huán)境理解將實(shí)際問題中的信息抽象為C語(yǔ)言數(shù)據(jù)類型及變量的方法理解結(jié)構(gòu)化程序設(shè)計(jì)思想掌握C語(yǔ)言中表示數(shù)據(jù)的方法掌握C語(yǔ)言程序人機(jī)交互的實(shí)現(xiàn)方法掌握C語(yǔ)言程序的三種基本結(jié)構(gòu)掌握C語(yǔ)言用戶自定義函數(shù)的定義、調(diào)用方法完成簡(jiǎn)單三角函數(shù)計(jì)算器的開發(fā)知識(shí)要點(diǎn)系統(tǒng)開發(fā)涉及的知識(shí)點(diǎn)包括:基本數(shù)據(jù)類型、常量和變量、運(yùn)算符和表達(dá)式、輸入輸出函數(shù)、順序結(jié)構(gòu)程序設(shè)計(jì)、選擇結(jié)構(gòu)程序設(shè)計(jì)、循環(huán)結(jié)構(gòu)程序設(shè)計(jì)和函數(shù)等內(nèi)容。任務(wù)分解任務(wù)一 構(gòu)建開發(fā)環(huán)境任務(wù)二 主菜單的順序執(zhí)行任務(wù)三 主菜單的選擇執(zhí)行任務(wù)四 主菜單的循環(huán)執(zhí)行任務(wù)五 利用函數(shù)優(yōu)化源代碼任務(wù)一 構(gòu)建開發(fā)環(huán)境本任務(wù)要搭建C語(yǔ)言

3、的集成開發(fā)環(huán)境,并熟悉在該環(huán)境中開發(fā)C語(yǔ)言程序的步驟。后續(xù)任務(wù)均在該環(huán)境中完成。任務(wù)描述選擇一種C語(yǔ)言開發(fā)集成環(huán)境,并完成安裝。熟悉在該環(huán)境中開發(fā)C語(yǔ)言程序的過(guò)程。任務(wù)分析本書中采用VC+6.0開發(fā)環(huán)境。本任務(wù)需要下載VC+6.0安裝包,并完成安裝,構(gòu)建C語(yǔ)言開發(fā)環(huán)境。在該環(huán)境中,運(yùn)行本章例題,熟悉C語(yǔ)言程序的開發(fā)過(guò)程。學(xué)習(xí)目標(biāo)了解C語(yǔ)言的發(fā)展及特點(diǎn)。掌握C語(yǔ)言程序的基本結(jié)構(gòu)。掌握使用VC+6.0開發(fā)C語(yǔ)言程序的過(guò)程。能夠構(gòu)建C語(yǔ)言開發(fā)環(huán)境。相關(guān)知識(shí)一、程序設(shè)計(jì)語(yǔ)言1.低級(jí)語(yǔ)言低級(jí)語(yǔ)言依賴于所在的計(jì)算機(jī)系統(tǒng),也稱為面向機(jī)器的語(yǔ)言。由于不同的計(jì)算機(jī)系統(tǒng)使用的指令系統(tǒng)可能不同,因此使用低級(jí)語(yǔ)言編寫

4、的程序移植性較差。低級(jí)語(yǔ)言主要2.高級(jí)語(yǔ)言高級(jí)語(yǔ)言是面向用戶的、基本上獨(dú)立于計(jì)算機(jī)種類和結(jié)構(gòu)的語(yǔ)言,其最大的優(yōu)點(diǎn)是形式上接近于算術(shù)語(yǔ)言和自然語(yǔ)言。高級(jí)語(yǔ)言編寫的程序易讀、易修改、移植性好。包括機(jī)器語(yǔ)言和匯編語(yǔ)言。相關(guān)知識(shí)二、C語(yǔ)言發(fā)展及特點(diǎn)1.C語(yǔ)言的發(fā)展C語(yǔ)言是1972年由美國(guó)的Dennis M. Ritchie和Ken Thompson設(shè)計(jì)開發(fā)的,由早期的編程語(yǔ)言BCPL(Basic Combined Programming Language)發(fā)展演變而來(lái)。早期的C語(yǔ)言主要用于編寫UNIX操作系統(tǒng)的核心。目前,在計(jì)算機(jī)上廣泛使用的C語(yǔ)言編譯系統(tǒng)有Borland C+、Turbo C、Mic

5、rosoft Visual C+(簡(jiǎn)稱VC+)等。本書使用的開發(fā)環(huán)境是VC+6.0系統(tǒng)。相關(guān)知識(shí)2.C語(yǔ)言的特點(diǎn)和其他語(yǔ)言相比,C語(yǔ)言具有書寫格式自由、數(shù)據(jù)類型豐富、語(yǔ)句功能強(qiáng)大、執(zhí)行速度快和存儲(chǔ)控制能力強(qiáng)等特點(diǎn)。(1)語(yǔ)言簡(jiǎn)潔、緊湊,使用方便、靈活。(2)數(shù)據(jù)結(jié)構(gòu)豐富,具有現(xiàn)代化語(yǔ)言的各種數(shù)據(jù)結(jié)構(gòu)。(3)C語(yǔ)言是結(jié)構(gòu)式語(yǔ)言。(4)把高級(jí)語(yǔ)言的基本結(jié)構(gòu)和語(yǔ)句與低級(jí)語(yǔ)言的實(shí)用性結(jié)合起來(lái)。(5)程序可移植性好。(6)表達(dá)力強(qiáng)。相關(guān)知識(shí)三、C語(yǔ)言程序的基本結(jié)構(gòu)1.幾個(gè)簡(jiǎn)單的C語(yǔ)言程序2.C語(yǔ)言程序的基本結(jié)構(gòu)(1)一個(gè)C語(yǔ)言源程序可以由一個(gè)或多個(gè)源文件組成。(2)源程序中可以有預(yù)處理命令(includ

6、e),通常放在源文件或源程序的最前面。(3)每個(gè)源文件可由一個(gè)或多個(gè)函數(shù)組成。(4)每個(gè)源程序必須有一個(gè)且只能有一個(gè)主函數(shù)main(),由系統(tǒng)自動(dòng)地調(diào)用,是程序執(zhí)行的起始點(diǎn)。主函數(shù)的位置是任意的,可以在程序開頭、兩個(gè)函數(shù)之間或程序的結(jié)尾。(5)所有語(yǔ)句必須以分號(hào)結(jié)束,但預(yù)處理命令、函數(shù)頭和函數(shù)體的花括號(hào)“”之后不能加分號(hào)。(6)可以用“/*/”對(duì)C語(yǔ)言程序的任何部分做注釋,以增強(qiáng)程序的可讀性。VC+中還可以用“/”給程序加注釋。相關(guān)知識(shí)3.C語(yǔ)言程序的書寫規(guī)則(1)C語(yǔ)言源程序一般用小寫字母書寫。(2)一個(gè)說(shuō)明或一條語(yǔ)句占一行。(3)用“”括起來(lái)的部分,通常表示程序的某一層次結(jié)構(gòu)。(4)低一層

7、次的語(yǔ)句或說(shuō)明可比高一層次的語(yǔ)句或說(shuō)明縮進(jìn)若干格后書寫。增加程序的可讀性。(5)對(duì)程序有必要的注釋,以增強(qiáng)程序的可讀性。相關(guān)知識(shí)四、C語(yǔ)言程序的運(yùn)行過(guò)程任務(wù)實(shí)施一、安裝VC+6.0二、利用VC+6.0運(yùn)行C程序拓展提升一、編程時(shí)常犯的錯(cuò)誤二、程序調(diào)試的基本方法小 結(jié)C語(yǔ)言的特點(diǎn)。C語(yǔ)言程序的基本結(jié)構(gòu)。使用VC+6.0開發(fā)C語(yǔ)言程序的過(guò)程。構(gòu)建C語(yǔ)言開發(fā)環(huán)境。第1篇 基礎(chǔ)篇簡(jiǎn)單三角函數(shù)計(jì)算器項(xiàng)目概述學(xué)習(xí)目標(biāo)熟悉C語(yǔ)言開發(fā)集成環(huán)境理解將實(shí)際問題中的信息抽象為C語(yǔ)言數(shù)據(jù)類型及變量的方法理解結(jié)構(gòu)化程序設(shè)計(jì)思想掌握C語(yǔ)言中表示數(shù)據(jù)的方法掌握C語(yǔ)言程序人機(jī)交互的實(shí)現(xiàn)方法掌握C語(yǔ)言程序的三種基本結(jié)構(gòu)掌握C語(yǔ)

8、言用戶自定義函數(shù)的定義、調(diào)用方法完成簡(jiǎn)單三角函數(shù)計(jì)算器的開發(fā)任務(wù)分解任務(wù)一 構(gòu)建開發(fā)環(huán)境任務(wù)二 主菜單的順序執(zhí)行任務(wù)三 主菜單的選擇執(zhí)行任務(wù)四 主菜單的循環(huán)執(zhí)行任務(wù)五 利用函數(shù)優(yōu)化源代碼任務(wù)二 主菜單的順序執(zhí)行在任務(wù)一中,我們已經(jīng)搭建好C語(yǔ)言的集成開發(fā)環(huán)境,從任務(wù)二開始逐步進(jìn)行教學(xué)項(xiàng)目的開發(fā)。本任務(wù)首先完成項(xiàng)目主菜單的顯示與順序執(zhí)行。任務(wù)描述實(shí)現(xiàn)項(xiàng)目主菜單的顯示,接收用戶從鍵盤輸入的角度,按主菜單順序依次計(jì)算其正弦、余弦、正切、余切等4個(gè)三角函數(shù),并輸出計(jì)算結(jié)果。項(xiàng)目主菜單包括四項(xiàng)功能:正弦、余弦、正切、余切,如圖2-1所示。任務(wù)分析該任務(wù)需要解決四個(gè)問題,即如何顯示主菜單、如何接收從鍵盤輸入

9、的數(shù)據(jù)、如何計(jì)算正弦、余弦、正切、余切,以及如何輸出計(jì)算結(jié)果。(1)顯示主菜單。(2)接收從鍵盤輸入的數(shù)據(jù)。(3)計(jì)算正弦、余弦、正切、余切。(4)輸出計(jì)算結(jié)果。學(xué)習(xí)目標(biāo)掌握C語(yǔ)言的基本數(shù)據(jù)類型。理解將實(shí)際問題中的信息抽象為C語(yǔ)言數(shù)據(jù)的方法。掌握常量和變量的概念及使用方法。掌握常用運(yùn)算符的使用方法。掌握數(shù)據(jù)輸入輸出的常用方法。實(shí)現(xiàn)項(xiàng)目主菜單的顯示和順序執(zhí)行。相關(guān)知識(shí)一、數(shù)據(jù)類型相關(guān)知識(shí)二、常量與變量1.常量常量是指在程序運(yùn)行過(guò)程中始終不發(fā)生變化的量,主要包括整型常量、實(shí)型常量、字符型常量和字符串型常量。2.變量變量是指在程序運(yùn)行過(guò)程中其值可以改變的量,通常用變量來(lái)保存程序執(zhí)行時(shí)的輸入數(shù)據(jù)、中間

10、結(jié)果和最終結(jié)果等。相關(guān)知識(shí)三、運(yùn)算符與表達(dá)式用來(lái)表示各種運(yùn)算的符號(hào)稱為“運(yùn)算符”。用運(yùn)算符把操作數(shù)連接在一起組成的式子稱為“表達(dá)式”。表達(dá)式按照運(yùn)算符的運(yùn)算規(guī)則進(jìn)行運(yùn)算,得到一個(gè)結(jié)果,稱為“表達(dá)式的值”。相關(guān)知識(shí)1.算術(shù)運(yùn)算符與算術(shù)表達(dá)式相關(guān)知識(shí)2.賦值運(yùn)算符與賦值表達(dá)式相關(guān)知識(shí)3.關(guān)系運(yùn)算符與關(guān)系表達(dá)式相關(guān)知識(shí)4.邏輯運(yùn)算符與邏輯表達(dá)式相關(guān)知識(shí)四、數(shù)據(jù)類型轉(zhuǎn)換C語(yǔ)言中的數(shù)據(jù)類型轉(zhuǎn)換有兩種方式:自動(dòng)類型轉(zhuǎn)換和強(qiáng)制類型轉(zhuǎn)換。1.自動(dòng)類型轉(zhuǎn)換自動(dòng)類型轉(zhuǎn)換是指C語(yǔ)言的編譯系統(tǒng)按既定的規(guī)則進(jìn)行類型轉(zhuǎn)換。其轉(zhuǎn)換規(guī)則為:(1)在C語(yǔ)言的一般表達(dá)式中,不同類型數(shù)據(jù)進(jìn)行運(yùn)算時(shí),其轉(zhuǎn)換原則是:參加運(yùn)算的各種變量

11、轉(zhuǎn)換成它們之間占用空間最長(zhǎng)的數(shù)據(jù)類型。(2)在C語(yǔ)言的賦值表達(dá)式中,如果賦值號(hào)左右兩邊的類型不一致,則右邊的值先轉(zhuǎn)換成與賦值號(hào)左邊的變量相同的類型,然后再進(jìn)行賦值。相關(guān)知識(shí)2.強(qiáng)制類型轉(zhuǎn)換上面的數(shù)據(jù)類型轉(zhuǎn)換是C語(yǔ)言自動(dòng)完成的。在編寫程序時(shí),可以根據(jù)需要進(jìn)行強(qiáng)制類型轉(zhuǎn)換。一般格式是:()功能:將表達(dá)式的值強(qiáng)制轉(zhuǎn)換為指定的數(shù)據(jù)類型,即在括號(hào)內(nèi)標(biāo)出的數(shù)據(jù)類型。相關(guān)知識(shí)五、格式輸入/輸出函數(shù)1.格式輸出函數(shù)printf()printf()函數(shù)是一個(gè)標(biāo)準(zhǔn)的庫(kù)函數(shù),它的函數(shù)原型在頭文件“stdio.h”中,但不要求在使用printf()函數(shù)前必須使用文件包含命令:#include 。函數(shù)功能:首先計(jì)算輸出

12、表列中各表達(dá)式的值,然后按照中給出的格式說(shuō)明,將各表達(dá)式的值轉(zhuǎn)換成所需要的輸出格式,在顯示器上輸出。調(diào)用形式:printf(格式控制字符串,輸出表列);相關(guān)知識(shí)相關(guān)知識(shí)2.格式輸入函數(shù)scanf()scanf ()函數(shù)是一個(gè)標(biāo)準(zhǔn)的庫(kù)函數(shù),它的函數(shù)原型在頭文件“stdio.h”中,但不要求在使用scanf ()函數(shù)前必須使用文件包含命令:#include stdio.h。函數(shù)功能:從鍵盤按照中規(guī)定的格式輸入若干個(gè)數(shù)據(jù),按中變量的順序,依次賦值給對(duì)應(yīng)的變量。調(diào)用形式:scanf (格式控制字符串,變量地址表列);相關(guān)知識(shí)六、字符輸入/輸出函數(shù)1.字符輸出函數(shù)putchar()putchar()函數(shù)

13、是一個(gè)標(biāo)準(zhǔn)的庫(kù)函數(shù),它的函數(shù)原型在頭文件“stdio.h”中,要求在使用putchar()函數(shù)前必須使用文件包含命令:#include stdio.h。函數(shù)功能:向終端輸出一個(gè)字符或字符變量的值。調(diào)用形式:putchar(c);相關(guān)知識(shí)2.字符輸入函數(shù)getchar()getchar ()函數(shù)是一個(gè)標(biāo)準(zhǔn)的庫(kù)函數(shù),它的函數(shù)原型在頭文件“stdio.h”中,要求在使用getchar ()函數(shù)前必須使用文件包含命令:#include stdio.h。函數(shù)功能:等待用戶從標(biāo)準(zhǔn)輸入設(shè)備鍵盤輸入一個(gè)字符。如果輸入成功,函數(shù)返回這個(gè)字符的ASCII值。任務(wù)實(shí)施一、顯示主菜單#include #include

14、 void main() int x; double sinx,cosx,tanx,cotx; printf(nnnn); printf(ttt 三角函數(shù)計(jì)算器 n); printf(ttt-n); printf(tttt1.正弦n); printf(tttt2.余弦n); printf(tttt3.正切n); printf(tttt4.余切n); printf(ttt-n); printf(ttt請(qǐng)輸入角度(0-180):);任務(wù)實(shí)施二、接收從鍵盤輸入的數(shù)據(jù)修改上面程序,在第15行后增加以下語(yǔ)句:scanf(%d,&x); /接收用戶從鍵盤輸入的角度任務(wù)實(shí)施三、計(jì)算正弦、余弦、正切、余切在語(yǔ)

15、句scanf(%d,&x)之后增加以下語(yǔ)句:sinx=sin(x*3.14/180);cosx=cos(x*3.14/180);tanx=tan(x*3.14/180);cotx=1/tan(x*3.14/180);任務(wù)實(shí)施四、輸出計(jì)算結(jié)果printf(nttt%d的正弦值是:%.2lf。,x,sinx);printf(nttt%d的余弦值是:%.2lf。,x,cosx);printf(nttt%d的正切值是:%.2lf。,x,tanx);printf(nttt%d的余切值是:%.2lf。n,x,cotx);拓展提升一、整型變量的類型二、sizeof運(yùn)算符三、逗號(hào)運(yùn)算符與逗號(hào)表達(dá)式四、條件運(yùn)算

16、符與條件表達(dá)式五、符號(hào)常量六、位運(yùn)算小 結(jié)C語(yǔ)言的基本數(shù)據(jù)類型。將實(shí)際問題中的信息抽象為C語(yǔ)言數(shù)據(jù)的方法。常量和變量的概念及使用方法。常用運(yùn)算符的使用方法。數(shù)據(jù)輸入輸出的常用方法。項(xiàng)目主菜單的顯示和順序執(zhí)行。第1篇 基礎(chǔ)篇簡(jiǎn)單三角函數(shù)計(jì)算器項(xiàng)目概述學(xué)習(xí)目標(biāo)熟悉C語(yǔ)言開發(fā)集成環(huán)境理解將實(shí)際問題中的信息抽象為C語(yǔ)言數(shù)據(jù)類型及變量的方法理解結(jié)構(gòu)化程序設(shè)計(jì)思想掌握C語(yǔ)言中表示數(shù)據(jù)的方法掌握C語(yǔ)言程序人機(jī)交互的實(shí)現(xiàn)方法掌握C語(yǔ)言程序的三種基本結(jié)構(gòu)掌握C語(yǔ)言用戶自定義函數(shù)的定義、調(diào)用方法完成簡(jiǎn)單三角函數(shù)計(jì)算器的開發(fā)任務(wù)分解任務(wù)一 構(gòu)建開發(fā)環(huán)境任務(wù)二 主菜單的順序執(zhí)行任務(wù)三 主菜單的選擇執(zhí)行任務(wù)四 主菜單的

17、循環(huán)執(zhí)行任務(wù)五 利用函數(shù)優(yōu)化源代碼任務(wù)三 主菜單的選擇執(zhí)行在任務(wù)二里,我們完成了項(xiàng)目主菜單的顯示與順序執(zhí)行。運(yùn)行程序后,接收用戶輸入的角度,計(jì)算其正弦、余弦、正切、余切等4個(gè)三角函數(shù),并在屏幕上輸出計(jì)算結(jié)果。但是有時(shí)用戶并不需要計(jì)算全部4個(gè)三角函數(shù),只需要計(jì)算其中1個(gè)。這種情況下,源代碼不需要順序執(zhí)行全部語(yǔ)句,而是根據(jù)用戶的需要有選擇地執(zhí)行部分語(yǔ)句。比如用戶只想計(jì)算正弦,程序只需執(zhí)行正弦的計(jì)算語(yǔ)句和輸出語(yǔ)句,其余3個(gè)三角函數(shù)的計(jì)算和輸出語(yǔ)句則不需執(zhí)行。這就是主菜單的選擇執(zhí)行,需要用C語(yǔ)言中的選擇語(yǔ)句實(shí)現(xiàn)。任務(wù)描述實(shí)現(xiàn)項(xiàng)目主菜單的選擇執(zhí)行。具體為,屏幕輸出主菜單,用戶根據(jù)菜單提示選擇三角函數(shù)類型

18、,并輸入角度,程序計(jì)算并輸出對(duì)應(yīng)的三角函數(shù)值。如圖3-1所示。任務(wù)分析本任務(wù)要根據(jù)用戶對(duì)主菜單的選擇進(jìn)行不同的計(jì)算。主菜單共有4個(gè)選項(xiàng),相應(yīng)地,程序就需要處理4種不同的情況,這在C語(yǔ)言里稱為分支結(jié)構(gòu)。C語(yǔ)言有兩種語(yǔ)句實(shí)現(xiàn)分支結(jié)構(gòu):一是if語(yǔ)句;二是switch語(yǔ)句。本任務(wù)將分別用if語(yǔ)句和switch語(yǔ)句實(shí)現(xiàn)主菜單的選擇執(zhí)行。學(xué)習(xí)目標(biāo)理解C語(yǔ)言的三種程序結(jié)構(gòu)。理解程序流程圖。掌握選擇結(jié)構(gòu)程序設(shè)計(jì)的思想和方法。掌握if語(yǔ)句實(shí)現(xiàn)分支結(jié)構(gòu)的方法。掌握switch語(yǔ)句實(shí)現(xiàn)分支結(jié)構(gòu)的方法。能運(yùn)用C語(yǔ)言分支結(jié)構(gòu)解決實(shí)際問題。相關(guān)知識(shí)一、程序設(shè)計(jì)1.程序設(shè)計(jì)的步驟程序設(shè)計(jì)的一般步驟如下:分析問題。針對(duì)具體的

19、實(shí)際問題,分析問題涉及到的各種數(shù)據(jù)信息及其基本結(jié)構(gòu)。設(shè)計(jì)數(shù)據(jù)結(jié)構(gòu)。數(shù)據(jù)結(jié)構(gòu)是指對(duì)數(shù)據(jù)的描述。通過(guò)分析要解決的任務(wù),確定輸入數(shù)據(jù)和輸出數(shù)據(jù),并在程序中指定數(shù)據(jù)的類型和數(shù)據(jù)的組織形式。設(shè)計(jì)算法。算法是指計(jì)算機(jī)解決問題的操作方法和步驟,即對(duì)計(jì)算機(jī)求解步驟的具體描述。編寫程序。根據(jù)確定的數(shù)據(jù)結(jié)構(gòu)和算法,使用選定的計(jì)算機(jī)語(yǔ)言編寫程序代碼。調(diào)試程序。將編寫好的程序代碼輸入到計(jì)算機(jī)中,對(duì)程序進(jìn)行測(cè)試并修正,直到程序符合任務(wù)要求為止。數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)和算法設(shè)計(jì)處于核心的位置。相關(guān)知識(shí)2.算法的表示(1)自然語(yǔ)言自然語(yǔ)言即人們?nèi)粘J褂玫恼Z(yǔ)言,如漢語(yǔ)、英語(yǔ)或其他國(guó)語(yǔ)言。(2)流程圖流程圖是指用規(guī)定圖形符號(hào)、流程線和文

20、字說(shuō)明表示各種操作的圖形。(3)N-S圖N-S圖去掉了箭頭,全部算法寫在一個(gè)矩形框內(nèi)。做圖簡(jiǎn)單,面積小,適于結(jié)構(gòu)化程序設(shè)計(jì)。(4)偽代碼法偽代碼是用介于自然語(yǔ)言和計(jì)算機(jī)語(yǔ)言之間的文字和符號(hào)來(lái)描述算法。每一行或幾行表示一個(gè)基本操作。書寫方便,格式緊湊,便于向計(jì)算機(jī)語(yǔ)言算法(即程序)過(guò)渡。相關(guān)知識(shí)2.算法的表示(1)自然語(yǔ)言【例3-1】輸入3個(gè)數(shù),輸出其中最大的數(shù)。用自然語(yǔ)言描述算法。分析:定義4個(gè)變量用于存放3個(gè)數(shù)及3個(gè)數(shù)中的最大數(shù),比較是兩兩進(jìn)行的。設(shè)輸入的3個(gè)數(shù)分別為A、B、C,最大數(shù)放在MAX中。第一步:輸入A、B、C的值。第二步:比較A、B的值,把大數(shù)放入MAX中。第三步:比較C、MAX

21、的值,把大數(shù)放入MAX中。第四步:輸出MAX,算法結(jié)束。相關(guān)知識(shí)2.算法的表示(2)流程圖相關(guān)知識(shí)2.算法的表示(3)N-S圖相關(guān)知識(shí)2.算法的表示(4)偽代碼法input A、B、Cif A BMAX=AelseMAX=Bif C MAXMAX=Coutput MAX相關(guān)知識(shí)二、三種基本程序結(jié)構(gòu)程序的三種基本控制結(jié)構(gòu)是順序結(jié)構(gòu)、選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu)。順序結(jié)構(gòu)是最簡(jiǎn)單的一種結(jié)構(gòu),在順序結(jié)構(gòu)程序中,各語(yǔ)句按照書寫的先后順序依次執(zhí)行。選擇結(jié)構(gòu)根據(jù)判斷結(jié)果確定不同的后續(xù)語(yǔ)句,主要用于描述程序中根據(jù)某些數(shù)據(jù)的取值或者計(jì)算結(jié)果選取不同操作的處理方式。循環(huán)結(jié)構(gòu)是指利用給定條件控制某組語(yǔ)句重復(fù)執(zhí)行多次的流程。

22、相關(guān)知識(shí)1.順序結(jié)構(gòu)相關(guān)知識(shí)2.選擇結(jié)構(gòu)相關(guān)知識(shí)3.循環(huán)結(jié)構(gòu)循環(huán)結(jié)構(gòu)又稱為重復(fù)結(jié)構(gòu),即在一定條件下反復(fù)執(zhí)行某一部分的操作。這里的一定條件稱為循環(huán)條件,通常用關(guān)系表達(dá)式或邏輯表達(dá)式表示。反復(fù)執(zhí)行的部分稱為循環(huán)體。循環(huán)結(jié)構(gòu)是3種基本結(jié)構(gòu)中較復(fù)雜的一種結(jié)構(gòu)。循環(huán)結(jié)構(gòu)有當(dāng)型和直到型兩種主要形式。(1)當(dāng)型循環(huán)結(jié)構(gòu)功能:先判斷條件是否成立,若條件成立則執(zhí)行循環(huán)體,然后重新去判斷條件是否成立,若條件成立則繼續(xù)執(zhí)行循環(huán)體,如此反復(fù)直到條件不成立為止。如圖3-9所示。 (2)直到型循環(huán)結(jié)構(gòu)功能:先執(zhí)行循環(huán)體,再去判斷條件是否成立,若成立則去執(zhí)行循環(huán)體,直到條件不成立為止。如圖3-10所示。 循環(huán)結(jié)構(gòu)一般包含以

23、下4個(gè)部分。(1)初始化部分:為循環(huán)變量及各種有關(guān)變量賦初值。(2)循環(huán)體:重復(fù)執(zhí)行的部分。(3)修改部分:修改循環(huán)變量的值,為下一次重復(fù)執(zhí)行做準(zhǔn)備。(4)判斷檢查部分:判斷檢查循環(huán)變量的值,是否已超過(guò)循環(huán)變量的終值,若未超過(guò)則繼續(xù)重復(fù)執(zhí)行循環(huán)體,否則結(jié)束。相關(guān)知識(shí)三、if語(yǔ)句if語(yǔ)句有種形式:?jiǎn)畏种f語(yǔ)句、雙分支if語(yǔ)句、多分支if語(yǔ)句。1.單分支if語(yǔ)句格式如下:if(表達(dá)式) 語(yǔ)句;功能:若表達(dá)式的值為真,則執(zhí)行其后的語(yǔ)句,否則不執(zhí)行語(yǔ)句。相關(guān)知識(shí)2.雙分支if語(yǔ)句格式如下:if(表達(dá)式) 語(yǔ)句1;else語(yǔ)句2;功能:若表達(dá)式的值為真,則執(zhí)行語(yǔ)句1,否則執(zhí)行語(yǔ)句2。相關(guān)知識(shí)3.多分支

24、if語(yǔ)句格式如下:if(表達(dá)式1) 語(yǔ)句1;else if(表達(dá)式2)語(yǔ)句2;else if(表達(dá)式m)語(yǔ)句m;else語(yǔ)句n; 功能:由上而下,依次判斷表達(dá)式的值,當(dāng)某個(gè)表達(dá)式的值為真時(shí),就執(zhí)行其對(duì)應(yīng)的語(yǔ)句。執(zhí)行完畢后,跳出if選擇語(yǔ)句,繼續(xù)執(zhí)行其下一條語(yǔ)句。如果所有的表達(dá)式全為假,則執(zhí)行else后的語(yǔ)句n。相關(guān)知識(shí)4.if語(yǔ)句的嵌套在if語(yǔ)句中,語(yǔ)句1和語(yǔ)句2本身也可以是if語(yǔ)句,此時(shí)稱為if語(yǔ)句的嵌套。格式如下:if(表達(dá)式1) if(表達(dá)式2)語(yǔ)句1;else語(yǔ)句2;elseif(表達(dá)式3)語(yǔ)句3;else語(yǔ)句4;相關(guān)知識(shí)四、switch語(yǔ)句使用if語(yǔ)句實(shí)現(xiàn)復(fù)雜問題的多分支選擇時(shí),程序

25、的結(jié)構(gòu)顯得不夠清晰,因此,C語(yǔ)言提供了一種專門用來(lái)實(shí)現(xiàn)多分支選擇結(jié)構(gòu)的switch語(yǔ)句,又稱開關(guān)語(yǔ)句。switch語(yǔ)句的一般形式如下:switch(表達(dá)式)case 常量1:語(yǔ)句1;case 常量2:語(yǔ)句2;case 常量n:語(yǔ)句n;default:語(yǔ)句n+1;任務(wù)實(shí)施一、使用if語(yǔ)句實(shí)現(xiàn)二、使用if嵌套語(yǔ)句實(shí)現(xiàn)使用switch語(yǔ)句實(shí)現(xiàn)拓展提升一、用條件表達(dá)式實(shí)現(xiàn)簡(jiǎn)單的選擇結(jié)構(gòu)二、在程序中使用條件表達(dá)式小 結(jié)C語(yǔ)言的三種程序結(jié)構(gòu)。選擇結(jié)構(gòu)程序設(shè)計(jì)的思想和方法。if語(yǔ)句實(shí)現(xiàn)分支結(jié)構(gòu)的方法。switch語(yǔ)句實(shí)現(xiàn)分支結(jié)構(gòu)的方法。C語(yǔ)言分支結(jié)構(gòu)解決實(shí)際問題的方法。第1篇 基礎(chǔ)篇簡(jiǎn)單三角函數(shù)計(jì)算器項(xiàng)目概

26、述學(xué)習(xí)目標(biāo)熟悉C語(yǔ)言開發(fā)集成環(huán)境理解將實(shí)際問題中的信息抽象為C語(yǔ)言數(shù)據(jù)類型及變量的方法理解結(jié)構(gòu)化程序設(shè)計(jì)思想掌握C語(yǔ)言中表示數(shù)據(jù)的方法掌握C語(yǔ)言程序人機(jī)交互的實(shí)現(xiàn)方法掌握C語(yǔ)言程序的三種基本結(jié)構(gòu)掌握C語(yǔ)言用戶自定義函數(shù)的定義、調(diào)用方法完成簡(jiǎn)單三角函數(shù)計(jì)算器的開發(fā)任務(wù)分解任務(wù)一 構(gòu)建開發(fā)環(huán)境任務(wù)二 主菜單的順序執(zhí)行任務(wù)三 主菜單的選擇執(zhí)行任務(wù)四 主菜單的循環(huán)執(zhí)行任務(wù)五 利用函數(shù)優(yōu)化源代碼任務(wù)四 主菜單的循環(huán)執(zhí)行在任務(wù)三里,我們完成了項(xiàng)目主菜單的選擇執(zhí)行,接收用戶的選擇,并執(zhí)行對(duì)應(yīng)的功能。但是每次運(yùn)行程序只能選擇主菜單中的一項(xiàng)功能,執(zhí)行完這項(xiàng)功能后直接退出程序。我們希望程序開始運(yùn)行后,只要不選擇“

27、退出”功能,程序就一直運(yùn)行。具體為,程序運(yùn)行后,顯示主菜單,根據(jù)用戶選擇執(zhí)行完一項(xiàng)功能后,返回到程序主菜單,等待用戶再次選擇,直到用戶選擇“退出”,程序結(jié)束。在這個(gè)過(guò)程中,主菜單的顯示是重復(fù)性的操作。在C語(yǔ)言中,稱為循環(huán)執(zhí)行,可以利用C語(yǔ)言提供的循環(huán)語(yǔ)句實(shí)現(xiàn)。任務(wù)描述本任務(wù)中實(shí)現(xiàn)項(xiàng)目主菜單的循環(huán)執(zhí)行,即每執(zhí)行完一項(xiàng)功能后,返回到程序主菜單,等待用戶再次選擇,直到用戶選擇“退出”,整個(gè)程序運(yùn)行結(jié)束,如圖4-1所示。這是典型的循環(huán)結(jié)構(gòu),只要用戶不輸入“0”,則計(jì)算并輸出三角函數(shù)值(當(dāng)輸入14時(shí))或者提示選擇錯(cuò)誤(當(dāng)輸入14之外的數(shù)值時(shí))后,就再次顯示主菜單,等待用戶再次選擇;直到用戶輸入“0”,程

28、序才結(jié)束。任務(wù)分析無(wú)論采用哪種循環(huán)語(yǔ)句,循環(huán)結(jié)構(gòu)必須指定循環(huán)條件和循環(huán)體。在本任務(wù)中,循環(huán)條件是:用戶輸入的選項(xiàng)不為“0”。循環(huán)體包括:三角函數(shù)的計(jì)算及輸出、項(xiàng)目主菜單的顯示、接收用戶輸入的選項(xiàng)。即,只要用戶不選擇“0”,每執(zhí)行完一項(xiàng)功能,就會(huì)顯示項(xiàng)目主菜單;如果用戶選擇了“0”,則退出循環(huán)體,不再顯示項(xiàng)目主菜單。任務(wù)四將用三種方法實(shí)現(xiàn)項(xiàng)目主菜單的循環(huán)執(zhí)行。學(xué)習(xí)目標(biāo)理解循環(huán)結(jié)構(gòu)程序設(shè)計(jì)的思想和方法掌握while、dowhile和for語(yǔ)句的使用格式和執(zhí)行過(guò)程掌握while、dowhile和for語(yǔ)句實(shí)現(xiàn)循環(huán)結(jié)構(gòu)的方法掌握break和continue語(yǔ)句的使用方法和區(qū)別能運(yùn)用C語(yǔ)言中的循環(huán)語(yǔ)句解

29、決實(shí)際問題相關(guān)知識(shí)一、while語(yǔ)句1.while語(yǔ)句的語(yǔ)法格式while語(yǔ)句的一般形式為:while(表達(dá)式)循環(huán)體2.while語(yǔ)句的執(zhí)行過(guò)程相關(guān)知識(shí)3.while語(yǔ)句應(yīng)用舉例相關(guān)知識(shí)二、dowhile語(yǔ)句1.dowhile語(yǔ)句的語(yǔ)法格式dowhile語(yǔ)句的一般形式為:do循環(huán)體 while(表達(dá)式);其中,do是C語(yǔ)言的關(guān)鍵字,必須和while聯(lián)合使用。dowhile語(yǔ)句由do開始,到while結(jié)束。注意,在while的表達(dá)式后必須有分號(hào),表示該語(yǔ)句的結(jié)束。其他同while語(yǔ)句。相關(guān)知識(shí)2.dowhile語(yǔ)句的執(zhí)行過(guò)程(1)首先執(zhí)行循環(huán)體語(yǔ)句,然后判斷表達(dá)式的值為真(非0)還是為假(0)

30、。(2)如果表達(dá)式的值為真,則重復(fù)步驟(1);如果表達(dá)式的值為假,則循環(huán)結(jié)束,執(zhí)行while語(yǔ)句之后的語(yǔ)句。相關(guān)知識(shí)3.dowhile語(yǔ)句應(yīng)用舉例相關(guān)知識(shí)三、for語(yǔ)句相關(guān)知識(shí)3.for語(yǔ)句應(yīng)用舉例相關(guān)知識(shí)四、break語(yǔ)句break語(yǔ)句通常用在循環(huán)語(yǔ)句和switch語(yǔ)句中。break在switch語(yǔ)句中的用法在前面已經(jīng)講過(guò),這里不再重復(fù)。當(dāng)break語(yǔ)句用于while、dowhile和for循環(huán)語(yǔ)句中時(shí),可使程序終止break語(yǔ)句所在層的循環(huán),提前退出循環(huán)。相關(guān)知識(shí)五、continue語(yǔ)句相關(guān)知識(shí)2.continue語(yǔ)句應(yīng)用舉例相關(guān)知識(shí)3.break和continue語(yǔ)句的區(qū)別相關(guān)知識(shí)六、幾

31、種循環(huán)的比較13種循環(huán)都可以用來(lái)處理同一問題,一般情況下它們可以互相代替。2在while循環(huán)和dowhile循環(huán)中,只在while后面的括號(hào)內(nèi)指定循環(huán)條件,因此為了使循環(huán)能正常結(jié)束,應(yīng)在循環(huán)體中包含使循環(huán)趨于結(jié)束的語(yǔ)句。for循環(huán)可以在“表達(dá)式3”中包含使循環(huán)趨于結(jié)束的操作,甚至可以將循環(huán)體中的操作全部放到表達(dá)式3中,因此,for語(yǔ)句的功能更強(qiáng),凡用while循環(huán)能完成的,用for循環(huán)都能實(shí)現(xiàn)。3用while和dowhile循環(huán)時(shí),循環(huán)變量初始化的操作應(yīng)在while和dowhile語(yǔ)句之前完成。而for語(yǔ)句可以在表達(dá)式1中實(shí)現(xiàn)循環(huán)變量的初始化。4 while循環(huán)、dowhile循環(huán)和for循環(huán)

32、,都可以用break語(yǔ)句跳出循環(huán),用continue語(yǔ)句結(jié)束本次循環(huán)。任務(wù)實(shí)施一、使用while語(yǔ)句實(shí)現(xiàn)二、使用dowhile語(yǔ)句實(shí)現(xiàn)三、使用for語(yǔ)句實(shí)現(xiàn)拓展提升一、循環(huán)嵌套二、while循環(huán)和dowhile循環(huán)的比較三、循環(huán)結(jié)構(gòu)的測(cè)試小 結(jié)循環(huán)結(jié)構(gòu)程序設(shè)計(jì)的思想和方法while、dowhile和for語(yǔ)句的使用格式和執(zhí)行過(guò)程while、dowhile和for語(yǔ)句實(shí)現(xiàn)循環(huán)結(jié)構(gòu)的方法break和continue語(yǔ)句的使用方法和區(qū)別運(yùn)用C語(yǔ)言中的循環(huán)語(yǔ)句解決實(shí)際問題第2篇 提高篇學(xué)生信息管理系統(tǒng)項(xiàng)目概述采用結(jié)構(gòu)化程序設(shè)計(jì)思想,綜合運(yùn)用C語(yǔ)言知識(shí),完成學(xué)生信息管理系統(tǒng)的開發(fā)。該系統(tǒng)主要包括學(xué)生信息

33、的錄入與瀏覽、成績(jī)的統(tǒng)計(jì)分析、補(bǔ)考名單的輸出、學(xué)生信息的查詢與修改等功能。任務(wù)分析根據(jù)系統(tǒng)主要功能,可以將系統(tǒng)劃分為錄入學(xué)生信息、瀏覽學(xué)生信息、成績(jī)統(tǒng)計(jì)分析、輸出補(bǔ)考名單、查詢學(xué)生信息、修改學(xué)生信息等6個(gè)模塊。任務(wù)分析(1)錄入學(xué)生信息。接收用戶從鍵盤輸入的學(xué)生信息,包括姓名、班級(jí)、學(xué)號(hào)、成績(jī)。(2)瀏覽學(xué)生信息。輸出所有學(xué)生的信息,包括姓名、班級(jí)、學(xué)號(hào)、成績(jī)。(3)成績(jī)統(tǒng)計(jì)分析。輸出最高分、最低分、平均分,統(tǒng)計(jì)各分?jǐn)?shù)段人數(shù)及比例。分?jǐn)?shù)段共有優(yōu)秀、良好、中等、及格、不及格五個(gè)等級(jí),分別對(duì)應(yīng)百分制的90 x100、80 x90、70 x80、60 x70、x60。(4)輸出補(bǔ)考名單。查找不及格學(xué)

34、生,輸出其學(xué)號(hào)及姓名。(5)查詢學(xué)生信息。按學(xué)號(hào)查找并輸出指定學(xué)生的信息。(6)修改學(xué)生信息。按學(xué)號(hào)查找并修改指定學(xué)生的信息,比如班級(jí)、姓名、成績(jī)。學(xué)習(xí)目標(biāo)理解將實(shí)際問題中的信息抽象為C語(yǔ)言數(shù)組、結(jié)構(gòu)體變量的方法理解指針的概念和使用方法掌握數(shù)組、結(jié)構(gòu)體表示數(shù)據(jù)的方法掌握文件讀寫操作的方法完成學(xué)生信息管理系統(tǒng)的開發(fā)知識(shí)要點(diǎn)系統(tǒng)開發(fā)涉及的知識(shí)點(diǎn)主要包括程序的3種基本結(jié)構(gòu)、函數(shù)、數(shù)組、指針、結(jié)構(gòu)體、文件等內(nèi)容。其中程序的3種基本結(jié)構(gòu)、函數(shù)已經(jīng)在第一篇進(jìn)行了介紹。數(shù)組、指針、結(jié)構(gòu)體、文件的知識(shí)將在本篇詳細(xì)介紹。任務(wù)分解任務(wù)六 學(xué)生成績(jī)信息的統(tǒng)計(jì)分析利用數(shù)組處理學(xué)生信息里的數(shù)值類數(shù)據(jù)(成績(jī))。任務(wù)七 學(xué)

35、生綜合信息的管理利用結(jié)構(gòu)體處理學(xué)生綜合信息,包括數(shù)值型及字符型數(shù)據(jù)。任務(wù)八 學(xué)生信息的存儲(chǔ)利用磁盤文件保存學(xué)生信息。任務(wù)六 學(xué)生成績(jī)信息的管理本章我們將進(jìn)行學(xué)生成績(jī)統(tǒng)計(jì)分析系統(tǒng)的開發(fā)。系統(tǒng)功能主要包括:輸入學(xué)生成績(jī)、瀏覽學(xué)生信息、找出最高分、最低分、計(jì)算平均分、統(tǒng)計(jì)各分?jǐn)?shù)段人數(shù)及比例、輸出需補(bǔ)考學(xué)號(hào)、按學(xué)號(hào)查詢成績(jī)、按學(xué)號(hào)修改成績(jī)等。任務(wù)描述本任務(wù)實(shí)現(xiàn)學(xué)生成績(jī)信息的統(tǒng)計(jì)分析。從系統(tǒng)具體功能可知,系統(tǒng)主模塊應(yīng)包含顯示主菜單、輸入學(xué)生成績(jī)、瀏覽學(xué)生成績(jī)、成績(jī)統(tǒng)計(jì)分析、輸出補(bǔ)考學(xué)號(hào)、查詢學(xué)生成績(jī)、修改學(xué)生成績(jī)等7項(xiàng)。任務(wù)分析采用結(jié)構(gòu)化程序設(shè)計(jì)思想,每個(gè)模塊都定義為一個(gè)功能相對(duì)獨(dú)立的函數(shù),各模塊對(duì)應(yīng)函

36、數(shù)如下:(1)顯示主菜單。函數(shù)為MainMenu()。(2)錄入學(xué)生成績(jī)。函數(shù)為Input()。(3)瀏覽學(xué)生成績(jī)。函數(shù)為Display()。(4)成績(jī)統(tǒng)計(jì)分析。函數(shù)為Analyze()。(5)輸出補(bǔ)考名單。函數(shù)為Output()。(6)查詢學(xué)生成績(jī)。函數(shù)為Search()。(7)修改學(xué)生成績(jī)。函數(shù)為Modify()。學(xué)習(xí)目標(biāo)理解利用數(shù)組存放信息的思想和方法能將實(shí)際問題中的數(shù)據(jù)信息抽象為數(shù)組掌握數(shù)組的定義與初始化的操作方法掌握對(duì)數(shù)組元素輸入、輸出、查找、修改的操作方法完成學(xué)生成績(jī)信息統(tǒng)計(jì)分析系統(tǒng)的開發(fā)相關(guān)知識(shí)通常,在程序中參與操作的數(shù)可以分為兩種形式:一種是單一數(shù)據(jù);另一種是批量數(shù)據(jù)。單一數(shù)據(jù)

37、是指用于描述一個(gè)事物或一個(gè)概念且相對(duì)獨(dú)立的數(shù)據(jù);而批量數(shù)據(jù)是指將若干個(gè)具有相同性質(zhì)的數(shù)據(jù)組織在一起且共同參與某項(xiàng)操作的數(shù)據(jù)集合。數(shù)組是C語(yǔ)言提供的一種專門用來(lái)組織批量數(shù)據(jù)的數(shù)據(jù)類型,它可以將性質(zhì)相同且需要共同參與某項(xiàng)操作的多個(gè)數(shù)據(jù)有效地組織起來(lái),是一種應(yīng)用十分頻繁且非常重要的數(shù)據(jù)類型。相關(guān)知識(shí)一、一維數(shù)組1.一維數(shù)組的定義一維數(shù)組變量的定義格式如下:元素類型 數(shù)組變量名;例如:float score6;相關(guān)知識(shí)2.一維數(shù)組的初始化數(shù)組初始化的基本格式為元素類型 數(shù)組變量名 =元素初值1,元素初值2,.,元素初值n;例如,float score6=70,68,82,58,92,89;相關(guān)知識(shí)3.

38、一維數(shù)組元素的引用及基本操作對(duì)數(shù)組元素的引用格式如下數(shù)組變量名下標(biāo)表達(dá)式其中,“數(shù)組變量名”是一個(gè)已經(jīng)定義的數(shù)組變量,“下標(biāo)表達(dá)式”的結(jié)果應(yīng)該是一個(gè)介于數(shù)組下標(biāo)取值范圍內(nèi)的整型數(shù)值。例如,score0、score1、score5分別表示score數(shù)組的各個(gè)元素。相關(guān)知識(shí)(1)數(shù)組的賦值數(shù)組的賦值有三種方法,一是在定義數(shù)組型變量的同時(shí)對(duì)其進(jìn)行初始化;二是利用賦值語(yǔ)句為數(shù)組賦值;三是調(diào)用標(biāo)準(zhǔn)輸入函數(shù)為數(shù)組賦值。當(dāng)為數(shù)組中的某個(gè)特定元素賦值時(shí),需要通過(guò)數(shù)組變量名和下標(biāo)值指出相應(yīng)的數(shù)組元素。例如:score5=78;scanf(%f,&score2); /程序等待用戶通過(guò)鍵盤輸入1個(gè)實(shí)型數(shù)值,賦給sc

39、ore數(shù)組中下標(biāo)是2的元素。相關(guān)知識(shí)當(dāng)需要為數(shù)組中的每個(gè)元素賦值時(shí),應(yīng)該使用循環(huán)結(jié)構(gòu)。例如:int i;for(i=0;i6;i+) /給score數(shù)組中的每個(gè)元素賦值20scorei=20;C語(yǔ)言除了在定義數(shù)組時(shí)可以為數(shù)組整體賦值之外,不能在其他情況對(duì)數(shù)組進(jìn)行整體賦值。例如,下面的用法是錯(cuò)誤的。int array10;for(i=0;i10;i+)scanf(%d,array);相關(guān)知識(shí)(2)數(shù)組的輸出與數(shù)組型變量賦值一樣,數(shù)組的輸出是通過(guò)輸出數(shù)組型變量中的每一個(gè)元素值實(shí)現(xiàn)的。例如:int i;for(i=0;i6;i+)/依次輸出score數(shù)組中的6個(gè)元素printf(%.2f,score

40、i);相關(guān)知識(shí)【例6-1】從鍵盤輸入10個(gè)整數(shù),找出最大值并輸出。相關(guān)知識(shí)例6-2】從鍵盤輸入10個(gè)學(xué)生的百分制成績(jī),計(jì)算平均成績(jī)并輸出。相關(guān)知識(shí)【例6-3】從鍵盤輸入某班(每班最多50人)學(xué)生的百分制成績(jī)(輸入-1時(shí)表示該班成績(jī)輸入完畢),求平均成績(jī)并輸出。相關(guān)知識(shí)【例6-4】從鍵盤輸入10個(gè)學(xué)生的百分制成績(jī),統(tǒng)計(jì)各分?jǐn)?shù)段人數(shù)及比例。分?jǐn)?shù)段共有優(yōu)秀、良好、中等、及格、不及格五個(gè)等級(jí),分別對(duì)應(yīng)百分制的90 x100、80 x90、70 x80、60 x70、x60。相關(guān)知識(shí)【例6-5】從鍵盤輸入10個(gè)學(xué)生的百分制成績(jī),判斷是否有不及格的學(xué)生。相關(guān)知識(shí)【例6-6】從鍵盤輸入10個(gè)學(xué)生的百分制成績(jī)

41、,查找不及格的學(xué)生,輸出其在數(shù)組中的順序號(hào)及成績(jī)。相關(guān)知識(shí)【例6-7】計(jì)算選手得分。假設(shè)有10位評(píng)委打分,計(jì)算選手最終得分的方法是:首先去掉一個(gè)最高分和一個(gè)最低分,然后計(jì)算剩余8個(gè)分?jǐn)?shù)的平均值,所得結(jié)果就是選手的最終得分。編程實(shí)現(xiàn)該功能。相關(guān)知識(shí)【例6-8】統(tǒng)計(jì)選舉結(jié)果。假設(shè)有5位候選人,編程統(tǒng)計(jì)每位候選人的得票數(shù)目及選舉結(jié)果。相關(guān)知識(shí)二、字符數(shù)組前面介紹的數(shù)組都是數(shù)值型的數(shù)組,數(shù)組中的每一個(gè)元素都是用來(lái)存放數(shù)值型的數(shù)據(jù)。數(shù)組不僅可以是數(shù)值型的,也可以是字符型的或其他類型的(比如指針類型、結(jié)構(gòu)體類型)。用來(lái)存放字符數(shù)據(jù)的數(shù)組是字符數(shù)組。字符數(shù)組中的一個(gè)元素存放一個(gè)字符。相關(guān)知識(shí)1.字符數(shù)組的定

42、義及初始化(1)先定義數(shù)組再逐個(gè)賦值相關(guān)知識(shí)(2)定義字符數(shù)組時(shí)對(duì)各元素賦值,即初始化。char str10= I, , a, m, , L, i, l, y, . ;char str10= L, i, l, y;相關(guān)知識(shí)2.字符串字符串是一種常用的數(shù)據(jù)形式,是指一個(gè)有限長(zhǎng)度的字符序列。在C語(yǔ)言中,并沒有直接提供字符串?dāng)?shù)據(jù)類型,而是借助于字符型數(shù)組實(shí)現(xiàn)字符串的組織。在C語(yǔ)言中,字符串常量用一對(duì)雙引號(hào)括起來(lái)。例如,“Lily Xu”、“張三”、“山東職業(yè)學(xué)院”、“男”都是字符串常量。相關(guān)知識(shí)在C語(yǔ)言中,字符串用字符型數(shù)組存儲(chǔ),并且以0作為結(jié)束標(biāo)志。例如char s11=I am Lily.;相關(guān)

43、知識(shí)3.字符數(shù)組的輸入輸出字符數(shù)組的輸入輸出有兩種方法。一種是逐個(gè)字符輸入輸出;另一種是整個(gè)字符串輸入輸出。相關(guān)知識(shí)(1)逐個(gè)字符輸入輸出。用字符輸入輸出函數(shù)getchar()和putchar(),或者用格式化輸入輸出函數(shù)scanf()和printf()的格式符“%c”,結(jié)合循環(huán)實(shí)現(xiàn)逐個(gè)字符輸入或輸出。例如,char name10;for(i=0;i10;i+)scanf(%c,&namei);/或者 namei=getchar();for(i=0;i10;i+)printf(%c,namei);/或者 putchar(namei);相關(guān)知識(shí)(2)整個(gè)字符串輸入輸出用格式化輸入輸出函數(shù)scan

44、f()和printf()的格式符“%s”將整個(gè)字符串一次輸入或輸出。char name10;scanf(%s,name);printf(%s,name);用gets()和puts()函數(shù)實(shí)現(xiàn)整個(gè)字符串的輸入輸出。相關(guān)知識(shí)三、字符串標(biāo)準(zhǔn)函數(shù)相關(guān)知識(shí)四、數(shù)組作函數(shù)參數(shù)1.數(shù)組元素作函數(shù)參數(shù)數(shù)組元素作函數(shù)的實(shí)參,與普通變量作實(shí)參一樣,傳遞方式是單向值傳遞方式。相關(guān)知識(shí)2.數(shù)組名作為函數(shù)參數(shù)在C語(yǔ)言程序中,有時(shí)需要把數(shù)組的全部元素傳遞到另一個(gè)函數(shù)中去處理,此時(shí)可以用數(shù)組名作為函數(shù)參數(shù)。任務(wù)實(shí)施一、搭建系統(tǒng)整體框架二、具體函數(shù)的實(shí)現(xiàn)(1)錄入學(xué)生成績(jī)函數(shù)(2)瀏覽學(xué)生成績(jī)函數(shù)(3)成績(jī)統(tǒng)計(jì)分析函數(shù)(4)

45、輸出補(bǔ)考名單函數(shù)(5)查詢學(xué)生成績(jī)函數(shù)(6)修改學(xué)生成績(jī)函數(shù)拓展提升一、二維數(shù)組1.二維數(shù)組的定義定義二維數(shù)組的一般形式為:類型名 數(shù)組名常量表達(dá)式1常量表達(dá)式2;拓展提升2.二維數(shù)組的初始化二維數(shù)組的初始化形式有以下幾種。(1)對(duì)每個(gè)元素進(jìn)行初始化int a34=12,11,10,9,8,7,6,5,4,3,2,1;int a34=12,11,10,9,8,7,6,5,4,3,2,1;int a4=12,11,10,9,8,7,6,5,4,3,2,1;拓展提升(2)只對(duì)二維數(shù)組中的部分元素初始化。int array134=,1,2,3,4,5,6;int array234=1,2,3,4,5

46、,6;拓展提升3.二維數(shù)組元素的引用定義二維數(shù)組型變量之后,就可以通過(guò)引用二維數(shù)組的每個(gè)元素對(duì)其實(shí)現(xiàn)各類操作。由于每個(gè)二維數(shù)組元素需要由兩個(gè)下標(biāo)才能夠惟一確定,因此引用二維數(shù)組元素的格式為:數(shù)組名下標(biāo)1下標(biāo)2拓展提升二、排序排序就是將一組無(wú)序的數(shù)列重新排列成非遞減或非遞增的順序。拓展提升1.選擇排序選擇排序是一種最簡(jiǎn)單的排序方法。假設(shè)有n個(gè)數(shù)據(jù)要排序,其基本思路是:首先從n個(gè)數(shù)據(jù)中選擇一個(gè)最小的數(shù)據(jù),并將它交換到第1個(gè)位置;然后再?gòu)暮竺鎛-1個(gè)數(shù)據(jù)中選擇一個(gè)最小的數(shù)據(jù),并將它交換到第2個(gè)位置;以此類推,直至最后從兩個(gè)數(shù)據(jù)中選擇一個(gè)最小的數(shù)據(jù),并將它交換到第n-1個(gè)位置為止,整個(gè)排序操作結(jié)束。拓

47、展提升2.冒泡排序冒泡排序的基本思路是:先將第1個(gè)數(shù)和第2個(gè)數(shù)比較,如果第1個(gè)數(shù)比第2個(gè)數(shù)大,就將兩個(gè)數(shù)互換,這樣,第2個(gè)數(shù)就是2個(gè)數(shù)中最大的了;然后再將第2個(gè)數(shù)和第3個(gè)數(shù)比較,如果第2個(gè)數(shù)比第3個(gè)數(shù)大,就將兩個(gè)數(shù)互換,這樣,第3個(gè)數(shù)就是3個(gè)數(shù)中最大的了;依此規(guī)律,將相鄰兩個(gè)數(shù)比較,將大的調(diào)到后頭。最終實(shí)現(xiàn)將所有的數(shù)據(jù)按照非遞減的順序重新排列。拓展提升三、二分查找查找是指根據(jù)某個(gè)給定的條件,在一組數(shù)據(jù)中搜索是否存在滿足該條件的數(shù)據(jù)的過(guò)程。如果存在,則表示查找成功,給出成功的標(biāo)志;否則表示查找不成功,給出失敗的標(biāo)志。順序查找是按照從前往后的順序依次查看每個(gè)數(shù)據(jù),如果找到,則終止查找;如果所有數(shù)據(jù)

48、都查看完畢,仍沒有找到符合條件的數(shù)據(jù),說(shuō)明該數(shù)據(jù)不存在。拓展提升如果參加查找操作的所有數(shù)據(jù)已經(jīng)是排好順序的(稱為有序數(shù)列),可以充分利用它的有序性,采用更快捷的二分查找法。二分查找法是指每次將要查找的數(shù)(以下用key代替)與位于查找區(qū)間中央位置的元素進(jìn)行比較,比較結(jié)果將會(huì)產(chǎn)生下面3種情形之一(以非遞減有序數(shù)列為例)。(1)如果相等,說(shuō)明查找成功。(2)如果key小于中央位置的元素,說(shuō)明如果存在這樣的元素,應(yīng)該位于查找區(qū)間的前半部分。此時(shí)可以將查找區(qū)間縮減為原來(lái)的一半,并在這一半的區(qū)間中繼續(xù)用相同的方式查找。(3)如果key大于中央位置的元素,說(shuō)明如果存在這樣的元素,應(yīng)該位于查找區(qū)間的后半部分。

49、此時(shí)可以將查找區(qū)間縮減為原來(lái)的一半,并在這一半的區(qū)間中繼續(xù)用相同的方式查找。可以看出,用key與當(dāng)前查找區(qū)間中央位置的元素比較后,不是找到了,就是將查找區(qū)間縮小了一半。直到查找區(qū)間不存在了,說(shuō)明沒有要找的key。小 結(jié)利用數(shù)組存放信息的思想和方法將實(shí)際問題中的數(shù)據(jù)信息抽象為數(shù)組數(shù)組的定義與初始化的操作方法對(duì)數(shù)組元素輸入、輸出、查找、修改的操作方法學(xué)生成績(jī)信息統(tǒng)計(jì)分析系統(tǒng)的開發(fā)第2篇 提高篇學(xué)生信息管理系統(tǒng)項(xiàng)目概述采用結(jié)構(gòu)化程序設(shè)計(jì)思想,綜合運(yùn)用C語(yǔ)言知識(shí),完成學(xué)生信息管理系統(tǒng)的開發(fā)。該系統(tǒng)主要包括學(xué)生信息的錄入與瀏覽、成績(jī)的統(tǒng)計(jì)分析、補(bǔ)考名單的輸出、學(xué)生信息的查詢與修改等功能。任務(wù)分析根據(jù)系統(tǒng)

50、主要功能,可以將系統(tǒng)劃分為錄入學(xué)生信息、瀏覽學(xué)生信息、成績(jī)統(tǒng)計(jì)分析、輸出補(bǔ)考名單、查詢學(xué)生信息、修改學(xué)生信息等6個(gè)模塊。任務(wù)分析(1)錄入學(xué)生信息。接收用戶從鍵盤輸入的學(xué)生信息,包括姓名、班級(jí)、學(xué)號(hào)、成績(jī)。(2)瀏覽學(xué)生信息。輸出所有學(xué)生的信息,包括姓名、班級(jí)、學(xué)號(hào)、成績(jī)。(3)成績(jī)統(tǒng)計(jì)分析。輸出最高分、最低分、平均分,統(tǒng)計(jì)各分?jǐn)?shù)段人數(shù)及比例。分?jǐn)?shù)段共有優(yōu)秀、良好、中等、及格、不及格五個(gè)等級(jí),分別對(duì)應(yīng)百分制的90 x100、80 x90、70 x80、60 x70、x60。(4)輸出補(bǔ)考名單。查找不及格學(xué)生,輸出其學(xué)號(hào)及姓名。(5)查詢學(xué)生信息。按學(xué)號(hào)查找并輸出指定學(xué)生的信息。(6)修改學(xué)生信

51、息。按學(xué)號(hào)查找并修改指定學(xué)生的信息,比如班級(jí)、姓名、成績(jī)。學(xué)習(xí)目標(biāo)理解將實(shí)際問題中的信息抽象為C語(yǔ)言數(shù)組、結(jié)構(gòu)體變量的方法理解指針的概念和使用方法掌握數(shù)組、結(jié)構(gòu)體表示數(shù)據(jù)的方法掌握文件讀寫操作的方法完成學(xué)生信息管理系統(tǒng)的開發(fā)知識(shí)要點(diǎn)系統(tǒng)開發(fā)涉及的知識(shí)點(diǎn)主要包括程序的3種基本結(jié)構(gòu)、函數(shù)、數(shù)組、指針、結(jié)構(gòu)體、文件等內(nèi)容。其中程序的3種基本結(jié)構(gòu)、函數(shù)已經(jīng)在第一篇進(jìn)行了介紹。數(shù)組、指針、結(jié)構(gòu)體、文件的知識(shí)將在本篇詳細(xì)介紹。任務(wù)分解任務(wù)六 學(xué)生成績(jī)信息的統(tǒng)計(jì)分析任務(wù)七 學(xué)生綜合信息的管理任務(wù)八 學(xué)生信息的存儲(chǔ)任務(wù)七 學(xué)生綜合信息的管理上一章我們開發(fā)的學(xué)生成績(jī)信息管理系統(tǒng),只能處理學(xué)生的成績(jī)信息,即數(shù)值類

52、信息。本章我們將對(duì)成績(jī)系統(tǒng)進(jìn)行功能擴(kuò)充,完成對(duì)學(xué)生綜合信息的管理,除了學(xué)生的數(shù)值型信息外,還包括學(xué)生的學(xué)號(hào)、姓名、性別、專業(yè)、出生日期、3門課的成績(jī)及平均成績(jī)等信息。系統(tǒng)主要功能和任務(wù)一類似,主要包括:輸入學(xué)生信息、瀏覽學(xué)生信息、成績(jī)統(tǒng)計(jì)分析、輸出補(bǔ)考名單、按學(xué)號(hào)查詢學(xué)生信息、按學(xué)號(hào)修改學(xué)生信息等。任務(wù)描述本任務(wù)實(shí)現(xiàn)學(xué)生綜合信息的管理。系統(tǒng)主模塊與任務(wù)一類似,功能進(jìn)行了擴(kuò)充。包括顯示主菜單、輸入學(xué)生信息、瀏覽學(xué)生信息、成績(jī)統(tǒng)計(jì)分析、輸出補(bǔ)考名單、查詢學(xué)生信息、修改學(xué)生信息等7項(xiàng)。任務(wù)分析采用結(jié)構(gòu)化程序設(shè)計(jì)思想,每個(gè)模塊都定義為一個(gè)功能相對(duì)獨(dú)立的函數(shù),各模塊對(duì)應(yīng)函數(shù)如下:(1)顯示主菜單。函數(shù)為

53、MainMenu()。(2)錄入學(xué)生信息。函數(shù)為Input()。(3)瀏覽學(xué)生信息。函數(shù)為Display()。(4)成績(jī)統(tǒng)計(jì)分析。函數(shù)為Analyze()。(5)輸出補(bǔ)考名單。函數(shù)為Output()。(6)查詢學(xué)生信息。函數(shù)為Search()。(7)修改學(xué)生信息。函數(shù)為Modify()。學(xué)習(xí)目標(biāo)理解結(jié)構(gòu)體類型、結(jié)構(gòu)體變量、結(jié)構(gòu)體數(shù)組變量的含義掌握結(jié)構(gòu)體變量、結(jié)構(gòu)體數(shù)組變量的定義、初始化的操作方法掌握結(jié)構(gòu)體變量、結(jié)構(gòu)體數(shù)組變量的輸入、輸出、查找、修改的操作方法掌握指針變量的定義、初始化的操作方法掌握利用指針變量引用數(shù)組元素、結(jié)構(gòu)體變量的操作方法完成學(xué)生綜合信息管理系統(tǒng)的開發(fā)相關(guān)知識(shí)本任務(wù)中,學(xué)生

54、的學(xué)號(hào)、姓名、性別、專業(yè)、出生日期、三門課的成績(jī)及平均成績(jī)的數(shù)據(jù)類型不一致。其中的學(xué)號(hào)、姓名、性別、專業(yè)為字符型數(shù)據(jù);出生日期包括年、月、日三項(xiàng),均為整型數(shù)據(jù);成績(jī)?yōu)閷?shí)型數(shù)據(jù)。為了將不同類型的數(shù)據(jù)組合成一個(gè)整體,C語(yǔ)言提供了一種構(gòu)造類型的數(shù)據(jù)結(jié)構(gòu)體,它可以將某些有相互聯(lián)系的、不同類型的數(shù)據(jù)存放在一起。結(jié)構(gòu)體由若干“成員”組成。每一個(gè)成員可以是一個(gè)基本類型或者是一個(gè)已經(jīng)定義過(guò)的構(gòu)造類型。相關(guān)知識(shí)一、結(jié)構(gòu)體類型在C語(yǔ)言中,將結(jié)構(gòu)體中的變量稱為“成員”,結(jié)構(gòu)體類型聲明的語(yǔ)法格式為:struct 結(jié)構(gòu)體類型名數(shù)據(jù)類型 成員名1;數(shù)據(jù)類型 成員名2;數(shù)據(jù)類型 成員名n;其中,struct是保留字,它是聲

55、明結(jié)構(gòu)體類型的開始標(biāo)志,“結(jié)構(gòu)體類型名”、“成員名”應(yīng)該符合C語(yǔ)言的自定義標(biāo)識(shí)符規(guī)則;結(jié)構(gòu)體所包含的所有成員都封裝在一對(duì)花括號(hào)之間;對(duì)每個(gè)成員必須做類型說(shuō)明,可以是基本數(shù)據(jù)類型,也可以是已定義的結(jié)構(gòu)體類型。相關(guān)知識(shí)相關(guān)知識(shí)相關(guān)知識(shí)相關(guān)知識(shí)相關(guān)知識(shí)二、結(jié)構(gòu)體變量1.結(jié)構(gòu)體變量的定義聲明結(jié)構(gòu)體類型之后,就可以定義結(jié)構(gòu)體變量了。C語(yǔ)言提供了兩種定義結(jié)構(gòu)體變量的方式:一種是利用結(jié)構(gòu)體類型名定義變量;一種是在聲明結(jié)構(gòu)體類型的同時(shí)定義變量。相關(guān)知識(shí)(1)利用已聲明的結(jié)構(gòu)體類型定義變量格式為:結(jié)構(gòu)體類型名 變量名1,變量名2,.,變量名n;例如:POINT p1, p2; /等價(jià)于struct point_

56、type p1, p2;RECT rect;/等價(jià)于struct rectangle_type rect;相關(guān)知識(shí)(2)在聲明結(jié)構(gòu)體類型的同時(shí)定義變量格式為:struct 結(jié)構(gòu)體類型名數(shù)據(jù)類型 成員名1;數(shù)據(jù)類型 成員名2;數(shù)據(jù)類型 成員名n;變量名1,變量名2,變量名n;例如:struct point_typefloat x;/x坐標(biāo)float y;/y坐標(biāo) p1,p2;相關(guān)知識(shí)(3)直接定義結(jié)構(gòu)體變量。格式為:struct 數(shù)據(jù)類型 成員名1;數(shù)據(jù)類型 成員名2;數(shù)據(jù)類型 成員名n;變量名1,變量名2,變量名n;例如:structfloat x;/x坐標(biāo)float y;/y坐標(biāo) p1,p2

57、;相關(guān)知識(shí)2.結(jié)構(gòu)體變量的初始化在定義結(jié)構(gòu)體變量的同時(shí)也可以進(jìn)行初始化。對(duì)結(jié)構(gòu)體變量進(jìn)行初始化的格式為:struct 結(jié)構(gòu)體類型名 變量名=成員值列表;相關(guān)知識(shí)3.結(jié)構(gòu)體變量的引用定義結(jié)構(gòu)體變量之后,就可以對(duì)變量進(jìn)行操作了。一般不能直接使用結(jié)構(gòu)體變量,對(duì)結(jié)構(gòu)體變量的引用包括賦值、輸入、輸出和運(yùn)算等都是通過(guò)對(duì)結(jié)構(gòu)體變量的成員進(jìn)行操作來(lái)實(shí)現(xiàn)的。引用結(jié)構(gòu)體變量成員的格式為結(jié)構(gòu)體變量名.成員名相關(guān)知識(shí)(1)引用結(jié)構(gòu)體變量應(yīng)遵循的規(guī)則不能將一個(gè)結(jié)構(gòu)體變量作為一個(gè)整體變量進(jìn)行輸入輸出,只能對(duì)結(jié)構(gòu)體變量中的各個(gè)成員分別進(jìn)行輸入輸出。如果某個(gè)結(jié)構(gòu)體變量成員的數(shù)據(jù)類型又是一個(gè)結(jié)構(gòu)體類型,則只能對(duì)最低級(jí)的成員進(jìn)行

58、賦值、輸入、輸出以及運(yùn)算。結(jié)構(gòu)體變量的成員可以像普通變量一樣進(jìn)行各種運(yùn)算可以引用結(jié)構(gòu)體變量成員的地址,其引用格式為: &結(jié)構(gòu)體變量名.成員名相關(guān)知識(shí)(2)結(jié)構(gòu)體變量的輸入與輸出(3)結(jié)構(gòu)體變量的賦值C語(yǔ)言提供了2種方式給結(jié)構(gòu)體變量賦值,一種是對(duì)每個(gè)成員分別賦值;另一種是整體賦值。相關(guān)知識(shí)4.結(jié)構(gòu)體與函數(shù)在函數(shù)間傳遞結(jié)構(gòu)體變量與傳遞其他類型數(shù)據(jù)的方法完全相同,結(jié)構(gòu)體變量可以直接作為函數(shù)參數(shù),也屬于單向值傳遞。相關(guān)知識(shí)三、結(jié)構(gòu)體數(shù)組結(jié)構(gòu)體數(shù)組是指數(shù)組的每一個(gè)元素都是具有相同結(jié)構(gòu)的結(jié)構(gòu)體變量,比如一個(gè)單位的所有員工信息、一個(gè)班級(jí)學(xué)生的信息等,都要用結(jié)構(gòu)體數(shù)組來(lái)描述。相關(guān)知識(shí)1.結(jié)構(gòu)體數(shù)組的定義定義結(jié)

59、構(gòu)體數(shù)組的方法與定義結(jié)構(gòu)體變量的方法相似,只需多加一個(gè)方括號(hào),表示其為數(shù)組。(1)先聲明結(jié)構(gòu)體類型,再定義結(jié)構(gòu)體數(shù)組。(2)在聲明結(jié)構(gòu)體類型的同時(shí)定義結(jié)構(gòu)體數(shù)組。(3)直接定義結(jié)構(gòu)體數(shù)組。相關(guān)知識(shí)2.結(jié)構(gòu)體數(shù)組的初始化其一般形式是:在定義數(shù)組的后面加上“=初值表列”。注意,要將每個(gè)元素的數(shù)據(jù)分別用花括號(hào)括起來(lái)。相關(guān)知識(shí)3.結(jié)構(gòu)體數(shù)組的引用一個(gè)結(jié)構(gòu)體數(shù)組的元素相當(dāng)于一個(gè)結(jié)構(gòu)體變量,所以前述的關(guān)于結(jié)構(gòu)體變量的引用方法對(duì)結(jié)構(gòu)體數(shù)組元素均適用。相關(guān)知識(shí)四、指針類型指針類型是C語(yǔ)言提供的一種特殊的基本數(shù)據(jù)類型。其特殊性在于:在指針型變量中存放的不是待操作的數(shù)據(jù),而是待操作數(shù)據(jù)的存儲(chǔ)地址。簡(jiǎn)單說(shuō),指針就是

60、內(nèi)存地址。相關(guān)知識(shí)五、指針與數(shù)組數(shù)組是由若干類型相同的元素構(gòu)成的有序序列,這些元素在內(nèi)存中占據(jù)了一組連續(xù)的存儲(chǔ)空間,每個(gè)元素都有一個(gè)地址。數(shù)組的地址指的是數(shù)組的起始地址,即數(shù)組中第一個(gè)元素的地址。C語(yǔ)言規(guī)定,數(shù)組名代表數(shù)組的地址。C語(yǔ)言規(guī)定,如果指針變量p指向數(shù)組中的一個(gè)元素,則p+1指向同一數(shù)組中的下一個(gè)元素。相關(guān)知識(shí)六、指針與結(jié)構(gòu)體1.指向結(jié)構(gòu)體變量的指針結(jié)構(gòu)體變量的地址就是該結(jié)構(gòu)體變量所占內(nèi)存單元的起始地址??梢远x一個(gè)指針變量來(lái)指向一個(gè)結(jié)構(gòu)體變量,即將結(jié)構(gòu)體變量的地址賦值給指針變量。定義一個(gè)指向結(jié)構(gòu)體變量的指針變量的一般形式為:struct 結(jié)構(gòu)體類型名 *指針變量名;相關(guān)知識(shí)2.指向

溫馨提示

  • 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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 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)論