計算機VFP-第八章--程序設(shè)計基礎(chǔ)_第1頁
計算機VFP-第八章--程序設(shè)計基礎(chǔ)_第2頁
計算機VFP-第八章--程序設(shè)計基礎(chǔ)_第3頁
計算機VFP-第八章--程序設(shè)計基礎(chǔ)_第4頁
計算機VFP-第八章--程序設(shè)計基礎(chǔ)_第5頁
已閱讀5頁,還剩37頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、編輯ppt第八章 程序設(shè)計基礎(chǔ)n一、一、VF的工作方式的工作方式n二、程序的建立與運行二、程序的建立與運行n三、程序中的交互語句及輔助語三、程序中的交互語句及輔助語句句n四、程序的基本結(jié)構(gòu)四、程序的基本結(jié)構(gòu)n五、過程設(shè)計五、過程設(shè)計編輯pptVF的工作方式的工作方式nVF的三種工作方式:命令方式、菜單方式、程序文件方式。n程序文件(命令文件)方式:q程序:就是根據(jù)所解決問題的需要,將能完成相應(yīng)功能的命令或語句按照一定的邏輯關(guān)系組織起來的命令集合。q程序文件的擴展名為.PRG。返回編輯ppt程序的建立與運行程序的建立與運行n以命令方式建立、編輯程序文件q格式:MODIFY COMMAND 功能:

2、建立或編輯修改程序文件。說明:n擴展名默認為PRG。n文件名為默認路徑下已有的文件,則使用此命令表示修改指定的程序。文件名為默認路徑下沒有的文件,則使用此命令表示新建指定的程序。n命令:MODI COMM ? 功能:從文件列表中選擇要修改的程序。 q保存程序:1、用“文件”菜單中的”保存“命令。2、工具欄上的”保存“按鈕。 3、按關(guān)閉按鈕。上一頁下一頁編輯ppt程序的建立與運行程序的建立與運行q程序書寫規(guī)則:n程序中的每條命令都必須以回車結(jié)尾。n一行只能寫一條命令,若命令需分行寫,應(yīng)在一行尾加“;”號續(xù)行,然后回車。n以菜單方式建立、編輯程序文件n用“項目管理器”建立、編輯程序文件上一頁下一頁

3、編輯pptn程序文件的調(diào)用q以命令方式調(diào)用格式:DO 說明:程序運行中,遇到以下情況之一,將終止程序運行:n執(zhí)行到程序尾,自然結(jié)束,返回VF系統(tǒng)主窗口。n執(zhí)行了RETURN命令,終止程序執(zhí)行,返回原調(diào)用處的下一語句繼續(xù)執(zhí)行。(主要用于過程中)n執(zhí)行了CANCEL命令,終止程序執(zhí)行返回系統(tǒng)主窗口。n執(zhí)行了QUIT命令,終止程序執(zhí)行,退出VF系統(tǒng)。q以菜單方式調(diào)用程序文件上一頁返回編輯ppt程序中的交互語句及輔助語句n簡單的格式化輸入、輸出命令q格式化輸入命令 (P140) 格式:語句1: SAY GET DEFAULT 語句2:READ功能:語句1的功能是在屏幕指定位置顯示和的值。語句2的功能是

4、重新編輯修改的值。說明:n要輸入編輯數(shù)據(jù),語句1、2必須聯(lián)用,可編輯類型:C、N、D、L型。nSAY 用于對GET 變量作提示性說明。上一頁下一頁編輯ppt程序中的交互語句及輔助語句n變量可為字段名變量,也可為內(nèi)存變量,內(nèi)存變內(nèi)存變量必須有初值量必須有初值,或用或用DEFAULT短語的短語的指指定初值定初值.初值一旦指定初值一旦指定,該變量的類型在編輯期間就該變量的類型在編輯期間就不能改變不能改變,字符型變量的寬度與數(shù)值型變量的小數(shù)字符型變量的寬度與數(shù)值型變量的小數(shù)位數(shù)也無法改變位數(shù)也無法改變。例1:編程在RCDA表中追加記錄,并輸入編號、姓名、性別、出生日期、工資現(xiàn)狀的值。(ZJ.PRG)例

5、2:編程輸入BH、XM、XB、RQ、GZ變量的值,并將其追加到RCDA表中。(ZJ1.PRG)上一頁下一頁編輯ppt程序中的交互語句及輔助語句n格式化輸出命令格式: SAY FUNCTION PICTURE 例:查找王國民并輸出。(CHAZ.PRG)上一頁下一頁編輯pptn人機對話命令q輸入單字符命令輸入單字符命令WAIT格式:WAIT TO 功能:暫停程序執(zhí)行,等待用戶鍵入一字符后繼續(xù)。說明:n輸入的任何數(shù)據(jù),均作為字符型數(shù)據(jù)處理。n只能輸入一個字符或直接回車(回車相當(dāng)于輸入空串)。n一般用字符串說明,不選用則自動提示“按任一鍵繼續(xù)”。n選用TO 時,可將輸入的字符保存在內(nèi)存變量中,以便以后

6、使用。例:若有表文件WJ1.DBF、WJ2.DBF、WJ3.DBF,如何實現(xiàn)只輸入一個字符而能打開這些表。 上一頁下一頁編輯ppt人機對話命令q輸入字符串命令輸入字符串命令A(yù)CCEPT(可輸入多個字符)可輸入多個字符)格式:ACCEPT TO 功能:暫停程序執(zhí)行,等待用戶輸入一串字符后,按回車鍵程序繼續(xù)運行。說明:n輸入的任何數(shù)據(jù),均作為字符型數(shù)據(jù)處理。n提示信息的用法與WAIT語句相同,不選用則不提示(與WAIT不同)。例1:根據(jù)輸入的文件名,打開指定的表文件。例2:在RCDA表中按指定姓名(出生日期、工資)查詢(LOCATE,SEEK)記錄。(XMCZ)上一頁下一頁編輯pptq輸入多種類型

7、數(shù)據(jù)命令輸入多種類型數(shù)據(jù)命令I(lǐng)NPUT格式:INPUT TO 功能:暫停程序執(zhí)行,等待用戶輸入數(shù)據(jù),回車后繼續(xù)。說明:n輸入的數(shù)據(jù)類型可為C、N、D、L。n輸入字符型數(shù)據(jù),必須加定界符;輸入日期型,用yyyy-mm-dd或用CTOD()函數(shù)轉(zhuǎn)換。例1:在RCDA表中按指定姓名查詢。(XMCZ.PRG)例2:在RCDA表中按指定工資(生日)查找。q小結(jié):區(qū)別WAIT、ACCEPT、INPUT三條命令的不同。上一頁下一頁編輯pptn輔助命令qCLEAR 清屏命令qNOTE| * 注釋 必須自成一行,對程序段作說明。& 注釋 接在命令語句后對該語句作說明。 qTEXTENDTEXT功能:原樣

8、輸出TEXT與ENDTEXT之間的內(nèi)容。(CD.PRG)上一頁返回編輯ppt程序的基本結(jié)構(gòu)nVF系統(tǒng)的應(yīng)用程序中,常見的控制結(jié)構(gòu)有:q順序結(jié)構(gòu)順序結(jié)構(gòu)特點:按照語句書寫的先后順序依次執(zhí)行,執(zhí)行到程序尾退出。缺陷:1、一次只能操作一組數(shù)據(jù); 2、不能對數(shù)據(jù)進行判斷。q分支結(jié)構(gòu)分支結(jié)構(gòu)一、簡單分支語句一、簡單分支語句格式:IF ENDIF意義:略。上一頁下一頁編輯ppt一、簡單分支語句一、簡單分支語句q說明:IF、ENDIF必須成對使用。n可以是表達式,也可是函數(shù),但結(jié)果必須為邏輯值。例1:在RCDA表中按姓名查詢記錄,找到則顯示該記錄,沒找到則提示“無此姓名的記錄!”。例2:從鍵盤輸入兩個不同的

9、自然數(shù),輸出其中最大的。例3:按姓名查詢,并提示是否進行修改,回答“Y”則修改,否則退出。(CDXG.PRG)上一頁下一頁編輯ppt 二、選擇分支語句二、選擇分支語句格式:IF ELSE ENDIF意義:略。例1:P150。 例2:修改前面的例2。 上一頁下一頁編輯ppt三、多分支語句三、多分支語句格式:DO CASE CASE CASE OTHERWISE ENDCASE功能說明:略。上一頁下一頁編輯ppt三、多分支語句三、多分支語句注意:nDO CASE與ENDCASE必須成對出現(xiàn)。nDO CASE與CASE之間不能放其它語句。n各條件不能互相包含,即不能讓兩個或兩個以上的值為.T.,因為

10、程序只能執(zhí)行第一個值為.T.的所對應(yīng)的語句序列。 例1:P151。 例2:從鍵盤上輸入三個不同的自然數(shù),輸出其中最大的。 上一頁下一頁編輯ppt四、分支語句的嵌套四、分支語句的嵌套結(jié)構(gòu):略。例1:對DJPD表,根據(jù)學(xué)號查詢,對查到的記錄再根據(jù)平均分定等級,并填寫等級字段,(85分以上為優(yōu),7685為良,6075為中,60分以下為差)若沒找到則顯示:“查無此人!”。例2:對成績表,根據(jù)學(xué)號查詢,對查到的記錄再判斷其民族,若為少數(shù)民族則總分+5,否則不加分,若沒找到指定記錄,則提示:“查無此人!”。注意:nELSE與ENDIF都與最近的IF語句匹配。n各分支結(jié)構(gòu)不能相互交叉。上一頁下一頁編輯ppt

11、q循環(huán)結(jié)構(gòu)程序設(shè)計循環(huán)結(jié)構(gòu)程序設(shè)計一、當(dāng)型循環(huán)一、當(dāng)型循環(huán)格式:DO WHILE LOOP EXIT ENDDO意義:當(dāng)為.T.時,重復(fù)執(zhí)行DO WHILE與ENDDO之間的語句序列,直到為.F.時,退出循環(huán)繼續(xù)執(zhí)行ENDDO之后的語句。上一頁下一頁編輯ppt一、當(dāng)型循環(huán)q注意:nLOOP、EXIT只能在循環(huán)中使用,而不能在循環(huán)外使用。nDO WHILEENDDO語句本身不具有給循環(huán)變量賦初值的功能,因此應(yīng)當(dāng)在該語句之前給循環(huán)變量賦初值,并在循環(huán)體中修改循環(huán)變量的值。nLOOP作用:不再執(zhí)行其后的語句序列,而進入下一次循環(huán),即重新返回DO WHILE處判斷條件的值。nEXIT作用:強制退出循環(huán)

12、,繼續(xù)執(zhí)行ENDDO之后的語句。上一頁下一頁編輯ppt幾種常見的循環(huán)結(jié)構(gòu):幾種常見的循環(huán)結(jié)構(gòu):1、對數(shù)據(jù)表記錄進行操作的循環(huán)、對數(shù)據(jù)表記錄進行操作的循環(huán)特點:特點:n循環(huán)條件一般用.NOT. EOF()。n用SKIP命令修改循環(huán)條件。n循環(huán)體中操作對象是數(shù)據(jù)表中的記錄。例1:逐條顯示RCDA表中性別為女的記錄。(條件分別為.NOT. EOF()與.NOT. BOF()。)例2:在RCDA表中,按性別查找,依次對性別為女的工資加100元。上一頁下一頁編輯ppt1、對數(shù)據(jù)表記錄進行操作的循環(huán)、對數(shù)據(jù)表記錄進行操作的循環(huán)例3:在成績表中,統(tǒng)計解幾成績分別在85分以上,76至85分,小于76分的學(xué)生的

13、人數(shù)。練習(xí):練習(xí):在DJPD表中,按平均分對每人評定等級,并將評定結(jié)果填到等級字段中。( 85分以上為優(yōu),7685為良,6075為中,60分以下為差)上一頁下一頁編輯ppt2、循環(huán)次數(shù)一定的循環(huán)、循環(huán)次數(shù)一定的循環(huán)特點:特點:n循環(huán)次數(shù)一定。n循環(huán)條件多為關(guān)系表達式,其中含控制循環(huán)次數(shù)的循環(huán)變量。n循環(huán)變量有初值和終值。n循環(huán)體中有修改循環(huán)變量的語句,使循環(huán)變量增或減值,否則成為死循環(huán)。例1:求1到100之間所有整數(shù)之和。(兩種方法)例2:求1到100之間的奇數(shù)和。(三種方法)練習(xí):求10!。上一頁下一頁編輯ppt特點:特點:n隨機條件總是為T。(這樣就不能自動退出循環(huán)死循環(huán))n必要時,可使用

14、EXIT、RETURN、CANCEL、QUIT強制退出循環(huán))例:在RCDA表中,實現(xiàn)可連續(xù)按姓名查詢。作業(yè):作業(yè):用循環(huán)語句編程判斷任意一個由鍵盤輸入的數(shù)是否為素數(shù)。3、隨機循環(huán)、隨機循環(huán)上一頁下一頁編輯ppt二、二、“計數(shù)計數(shù)”型循環(huán)控制語句型循環(huán)控制語句格式:FOR = TO STEP LOOP EXIT ENDFOR|NEXT功能:循環(huán)變量首先被賦為變量初值,然后比較循環(huán)變量與終值來決定是否執(zhí)行循環(huán)體內(nèi)的命令語句。步長值為正數(shù)時,若循環(huán)變量值不大于終值,就執(zhí)行循環(huán)體;步長為負數(shù)時,若循環(huán)變量不小于終值,就執(zhí)行循環(huán)體。執(zhí)行一遇到ENDFOR或NEXT,循環(huán)變量立即被加上步長值,然后重新與結(jié)

15、束值比較。說明:如果無STEP短語,默認步長值為1。例:改寫前面當(dāng)型循環(huán)的例子。上一頁下一頁編輯ppt三、三、“指針指針”型循環(huán)控制語句型循環(huán)控制語句格式:SCAN FOR WHILE LOOP EXIT ENDSCAN 功能:程序執(zhí)行到該語句,首先判斷EOF()函數(shù)的值,若為真,則執(zhí)行ENDSCAN之后的語句;否則結(jié)合條件1與條件2執(zhí)行循環(huán)中的,然后指針移到下一條范圍內(nèi)滿足條件的記錄,再判斷EOF()的值,直到EOF()為真結(jié)束循環(huán)。上一頁下一頁編輯ppt四、多重循環(huán):即循環(huán)體中又包含另外一些四、多重循環(huán):即循環(huán)體中又包含另外一些循環(huán)循環(huán)。格式:略。例1:在RCDA表中,按性別查詢,要求能逐

16、條查到所有性別相同的記錄并顯示。例2:打印九九表。練習(xí):輸出3到100之間的所有素數(shù)。(輸出格式:一行輸出5個數(shù),每個數(shù)間用5空格隔開。)上一頁返回編輯ppt過程與過程調(diào)用n引入n定義:我們將以過程說明語句開頭,以返回命令結(jié)束,能完成一定功能,可以被其它程序反復(fù)調(diào)用的程序段叫做過程過程。n過程的分類:1、以獨立文件存在的過程,稱為外部過程。2、若干個過程共存于一個過程文件的過程,稱為內(nèi)部過程。上一頁下一頁編輯pptn過程返回語句1、RETURN TO MASTER功能:返回調(diào)用程序原調(diào)用處的下一語句繼續(xù)執(zhí)行。TO MASTER的作用:用在過程嵌套中,直接返回最高層調(diào)用處,如不選,則逐級返回。2

17、、RETRY功能:返回調(diào)用程序原調(diào)用語句,繼續(xù)執(zhí)行。n外部過程的建立及調(diào)用:1、建立與建立一般程序相同。上一頁下一頁編輯pptn求5!+10!+20!SET TALK OFFS=0N=1T=1DO WHILE N=5 T=T*N N=N+1ENDDOS=S+TN=1T=1DO WHILE N=10 T=T*N N=N+1ENDDOS=S+TN=1T=1DO WHILE N=20 T=T*N N=N+1ENDDOS=S+T?5!+10!+20!=,SSET TALK ON返回編輯ppt 2、過程調(diào)用 格式:DO 說明:可以將過程保存在單獨的程序文件中,也可放在程序的結(jié)尾,但不能把可執(zhí)行的主程序放

18、在過程之后。例:改寫引入程序。思考:求C=M!/(N!*(M-N)!)上一頁下一頁編輯pptn過程文件及使用1、過程文件的建立格式:MODI COMM 2、過程文件的組織形式PROCEDURE ENDPROCPROCEDURE ENDPROC上一頁下一頁編輯ppt 3、過程文件的調(diào)用步驟:打開過程文件格式:SET PROCEDURE TO 注意:同一時刻只允許打開一個過程文件。調(diào)用過程文件中的過程格式:DO 功能:調(diào)用已打開的過程文件中的指定過程。關(guān)閉過程文件格式1:SET PROCEDURE TO格式2:CLOSE PROCEDURE功能:關(guān)閉打開的過程文件。上一頁下一頁編輯pptn過程的嵌

19、套n過程調(diào)用中的數(shù)據(jù)傳遞q利用內(nèi)存變量的屬性傳遞數(shù)據(jù)n全局變量(公共變量)全局變量(公共變量)公共變量是在VF系統(tǒng)的全部范圍內(nèi)均有效的內(nèi)存變量。(包括命令窗口及程序的任何部分主程序及其子程序中)定義格式:定義格式:PUBLIC 功能:把中指定的內(nèi)存變量定義為全局變量。說明:1、全局變量在程序結(jié)束時不釋放,只能使用清除內(nèi)存變量的命令清除。(CLEAR MEMORY,CLEAR ALL)2、定義的全局變量在賦值前,自動賦值為.F.。上一頁下一頁編輯pptn局部變量局部變量局部變量只在定義它的程序段有效,而在此程序段的上級程序段或下級程序段無效。定義格式:定義格式:LOCAL 功能:把中指定的內(nèi)存變

20、量定義為局部變量。說明:1、局部變量在其所在程序段結(jié)束時自動清除。2、定義的局部變量在賦值前,自動賦值為.F.。 上一頁下一頁編輯pptn私有變量私有變量私有變量是在定義它的程序段以及其下級程序段(被調(diào)用過程)的局部范圍內(nèi)都有效的內(nèi)存變量。定義格式定義格式1:PRIVATE 格式格式2:PRIVATE ALL LIKE|EXCEPT 功能:把指定的變量定義為私有變量。說明:1、程序中凡沒有使用PUBLIC、LOCAL和PRIVATE語句定義的變量都是私有變量。 上一頁下一頁編輯ppt2、格式2用法:PRIVATE ALL:定義所有內(nèi)存變量為私有變量。PRIVATE ALL LIKE :定義與相符的變量為私有變量。PRIVATE ALL EXCEPT :定義與不相符的變量為私有變量。3、局部、私有變量在其有效程序段結(jié)束時自動清除。q例子上一頁下一頁編輯ppt set talk off local y priv x1 public z,z1 x=5 y=6 z=9 z1=28 x1=8 ?x=,x,y=,y,x1=,x1,z=,z,z1=

溫馨提示

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

最新文檔

評論

0/150

提交評論