第九章程序結(jié)構(gòu)與常用控件的使用_第1頁
第九章程序結(jié)構(gòu)與常用控件的使用_第2頁
第九章程序結(jié)構(gòu)與常用控件的使用_第3頁
第九章程序結(jié)構(gòu)與常用控件的使用_第4頁
第九章程序結(jié)構(gòu)與常用控件的使用_第5頁
已閱讀5頁,還剩16頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、VFP程序提供了三種基本的控制結(jié)構(gòu),它們是順序結(jié)構(gòu)、分支結(jié)構(gòu)與循環(huán)結(jié)構(gòu)例9-1:鍵盤輸入a、b兩個變量的值,將它們的值進行調(diào)換 v a 汽油b 煤油t 空桶語句1語句2x=(4H-F)/2 y=(F-2H)/2x+y=H2x+4y=F例9-2:雞兔同籠,已知雞兔的總頭數(shù)為H,總腳數(shù)為F,求雞兔各有多少只?雞兔同籠算法為:例9-3:設計一個在任意表中按任意數(shù)據(jù)項(字段)查詢信息(記錄)的程序(日期型字段除外)x=(4H-F)/2 y=(F-2H)/2x+y=H2x+4y=F二 分支結(jié)構(gòu):根據(jù)指定條件的當前值在兩條或多條程序路徑中選擇一條執(zhí)行1、單向選擇 語句格式: I F 條件 命令序列 END

2、I FpAB成立不成立條件命令序列.T.F.endif后的命令 功能:條件取值為“真”,執(zhí)行命令序列;條件取值為“假”,命 令序列就不執(zhí)行 注: 條件是關系表達式或邏輯表達式 例9-4:編程序?qū)崿F(xiàn)表stud中第一個三好生的入??偡旨?0分例9-5:按從鍵盤輸入的記錄號刪除任意表文件中的記錄dele reco rn2.雙向選擇 語句格式: I F條件 命令序列l(wèi) ELSE 命令序列2 ENDIF 功能:根據(jù)條件的值,選擇執(zhí)行兩個命令序列中的一個例9-6:判斷某一年是否是閏年,如是閏年則能被4整除但不能 被100整除,或能被400整除條件命令序列l(wèi)命令序列2.T.F.3.多向選擇 語句格式: DO

3、 CASE CASE條件表達式1 命令序列l(wèi) CASE條件表達式2 命令序列2 : CASE條件表達式n 命令序列n OTHERWISE 命令序列n+1 ENDCASE 功能: 依次判斷命令中列出的條件表達式,只要找到某一條件取值為“真”,就執(zhí)行條件表達式的命令序列;在沒有一個條件表達式取值為“真”時,則執(zhí)行OTHERWISE后的命令序列n+1 說明:若有多個條件表達式為真,也只執(zhí)行第一個為“真”的命令 序列 例8-23:從鍵盤輸入學號,在xk表中根據(jù)成績來判斷該學生的成績屬于優(yōu)(n90)、良(80n90)、合格(60n80) 、還是不合格(n60),并顯示該等級情況說明: (1)I F與EN

4、DI F, I F,ELSE與ENDI F, DO CASE與ENDCASE必須成對出現(xiàn) (2)三種選擇結(jié)構(gòu)不僅自身可以嵌套,而且還能相互嵌套 循環(huán)結(jié)構(gòu)能做到由指定條件來控制程序中某一部分命令序列的重復執(zhí)行。VFP提供了條件循環(huán)、 計數(shù)循環(huán)、掃描循環(huán)等循環(huán)結(jié)構(gòu)1.條件循環(huán) 命令格式: DO WHILE邏輯表達式 命令序列 ENDDO 功能:判斷邏輯表達式(循環(huán)條件)的取值,若為“真”就執(zhí)行 DO與ENDDO之間的命令序列(循環(huán)體),一旦遇ENDDO 就自動返回到DO WHILE重新判斷循環(huán)條件是否成立以決定是否再循環(huán);條件的取值若為“假”,則退出循環(huán)邏輯表達式命令序列 真 假 例9-7:編一程

5、序,要求顯示stud表中入校總分高于580分的所有 記錄 例補:編程要求統(tǒng)計表中入??偡衷?90以上(590)、570590、 570以下(570)等各分數(shù)段的學生人數(shù)2.計數(shù)循環(huán) 命令格式: FOR 循環(huán)變量= 初值 TO 終值 STEP步長 命令序列 ENDFOR | NEXT 功能: 本命令中的初值、終值 、 步長都是數(shù)值表達式。通過判斷循環(huán)變量的取值是否在指定范圍之中來確定循環(huán)體是否重復執(zhí)行FOR 循環(huán)變量= 初值 TO 終值 STEP步長 命令序列ENDFOR | NEXT循環(huán)變量賦初值循環(huán)變量=s=0for i=1 to 100 s=s+inext?s=,ss=0for i=100

6、 to 1 step -1 s=s+inext?s=,s 例:求1+2+3+ + 100的和 a=0b=a+1c=b+2d=c+3 :s=s+ii=i+1 例:求1+2+3+ + 100的和 例9-8:從鍵盤輸入一個數(shù),求該數(shù)的階乘說明: (1) STEP 表達式3表示步長,其值可正可負。步長值缺省, 則默認為1,步長值不能為0,否則造成死循環(huán) (2) 初值、終值與步長都在循環(huán)開始時計算讀入,若其中含有 變量,那末這些變量的值必須在執(zhí)行循環(huán)之前已經(jīng)確定 (3) 一般情況下,循環(huán)體中不應包含改變循環(huán)變量值的命令, 否則循環(huán)執(zhí)行的次數(shù)也將隨之改變s=0for i=1 to 100 s=s+inex

7、t?s=,s3.掃描循環(huán) 命令格式: SCAN 范圍FOR條件WHILE條件 命令序列 ENDSCAN 功能:對當前表進行循環(huán),循環(huán)次數(shù)可由當前表的記錄數(shù)、范圍 子句、條件子句指出use studscan 命令序列endscanuse studdo while not eof( ) 命令序列 skipenddo 例9-9:查詢stud中1984年出生的所有女生的姓名4.循環(huán)輔助語句 LOOP:把控制轉(zhuǎn)到循環(huán)結(jié)構(gòu)的開始 EXIT:能立即跳出循環(huán),執(zhí)行ENDDO的下一條命令 DO WHILE : LOOP :ENDDODO WHILE : EXIT :ENDDO例9-10:編一程序能根據(jù)輸入的記錄號反復顯示stud中的記錄。如果輸入的記錄號為0或負數(shù),則結(jié)束循環(huán);如果記錄號太大超出了范圍,則要求重新輸入5.多重循環(huán) 若在循環(huán)體中又包含其它循環(huán),即形成多重循環(huán),也稱循環(huán)嵌套 例9-11:打印九九乘法口訣表ab=p9.4 數(shù)組應用例9-12:建立一個有10個元素的數(shù)組,在數(shù)組的每個元素中存放一位同學的計算機課成績,并求出平均成績例9-13:從鍵盤上輸入5個數(shù),然后把這5個數(shù)按從小到大的順序在屏幕上顯示(冒泡法排序)5 9 3 12 15 3 9 12 1 第2次 5 3 9 12 1 第3

溫馨提示

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

評論

0/150

提交評論