程序的建立和執(zhí)行方法第三章_第1頁
程序的建立和執(zhí)行方法第三章_第2頁
程序的建立和執(zhí)行方法第三章_第3頁
程序的建立和執(zhí)行方法第三章_第4頁
程序的建立和執(zhí)行方法第三章_第5頁
已閱讀5頁,還剩25頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

程序的建立和執(zhí)行方法第三章知識目標(biāo):1、創(chuàng)建、修改和執(zhí)行程序文件2、程序流程語句1、創(chuàng)建、修改和執(zhí)行程序文件1、建立程序方法2、修改程序文件3、運(yùn)行程序文件例3.1新建一個程序文件:p1.prg,實現(xiàn)從鍵盤上任意輸入3個數(shù),求它們的和以及平均值并且顯示結(jié)果。程序代碼:input"請輸入第一個數(shù):"toAinput"請輸入第二個數(shù):"toBinput"請輸入第三個數(shù):"toC?"A+B+C=",A+B+C?"(A+B+C)/3=",(A+B+C)/32、程序流程語句程序的結(jié)構(gòu)分為3種:順序、分支、循環(huán)1、順序結(jié)構(gòu):是指程序的執(zhí)行順序是按照語句的排列順序由上到下一次執(zhí)行。(如下圖)輸出語句1輸出語句2輸出語句32、程序流程語句2、分支結(jié)構(gòu):是指按照某種條件的判斷結(jié)果來決定程序的執(zhí)行走向,當(dāng)條件成立時執(zhí)行某個程序段,當(dāng)條件不成立時執(zhí)行另一程序段或者什么也不執(zhí)行。(如下圖)輸出語句1判斷語句輸出語句2輸出語句3yesno2、程序流程語句3、循環(huán)結(jié)構(gòu):是指根據(jù)條件的結(jié)果重復(fù)執(zhí)行若干次某個程序段。(如下圖)輸出語句1判斷語句輸出結(jié)果結(jié)束條件分支控制語句-if語句(1)if語句,格式:if邏輯表達(dá)式[then]語句組1[else語句組2]endif備注:執(zhí)行過程,當(dāng)邏輯表達(dá)式的值為真時,執(zhí)行語句組1;否則,執(zhí)行語句組2。其中else部分可以省略的,如果省略else部分,當(dāng)邏輯表達(dá)式為真時,將會執(zhí)行語句組1,否則不執(zhí)行任何操作。例3.3if語句鍵盤輸入任意一個分?jǐn)?shù),如果60分以上,則顯示成績是合格的,否則顯示成績是不合格的,請繼續(xù)努力。程序如下:input"請輸入成績:"toAifA>=60then?"成績是合格的,請繼續(xù)加油!"else?"成績不合格,請繼續(xù)努力吧!"endif輸出結(jié)果:見vf例3.4if語句題目:判斷輸入的數(shù)是正數(shù)、負(fù)數(shù)還是零。程序如下:input"請輸入任意的數(shù):"toAifA==0then?"你輸入的數(shù)字是0"elseifA>0then?"你輸入的數(shù)字大于0"else?"你輸入的數(shù)字小于0"endifendif輸出結(jié)果:見vf例3.5if語句題目:讀取學(xué)生基本信息表中的數(shù)據(jù),判斷當(dāng)前記錄中的性別字段,輸出相應(yīng)的提示信息。程序:SETdefaultto[J:\VFP教學(xué)用課件\《VisualFoxPro7.0》教學(xué)課件\金山信息技術(shù)學(xué)校學(xué)生信息表]

&&設(shè)置默認(rèn)值或用setpathto(設(shè)置默認(rèn)路徑)use學(xué)生基本情況.dbfIF性別="男"?姓名+"是男同學(xué)"ELSE?姓名+"是女同學(xué)"ENDIFuse程序運(yùn)行結(jié)果:郭小名是男同學(xué)例3.6if語句實例題目:使用if語句對輸入的成績進(jìn)行“優(yōu)秀”,“良好”,“中等”,“及格”,“不及格”的評定。程序如下:input"請輸入成績:"toAifA>=90?"你的成績優(yōu)秀"elseifA>=80?"你的成績良好"elseifA>=70?"你的成績中等"elseifA>=60?"你的成績及格"else?"你的成績不及格"endifendifendifendif程序運(yùn)行結(jié)果:見vfp7.0if語句在flash動畫制作中的運(yùn)用1、簡單loading(進(jìn)度加載)代碼:方法1、使用載入字節(jié)數(shù)判斷b=getBytesTotal();//獲取總的字節(jié)數(shù)a=getBytesLoaded();//已經(jīng)下載的字節(jié)數(shù)onEnterFrame=function(){//進(jìn)入幀時,進(jìn)行判斷if(a==b){//如果載入的字節(jié)數(shù)等于總的字節(jié)數(shù)deletethis.onEnterFrame//刪除進(jìn)入幀gotoAndPlay("frame");//轉(zhuǎn)入到你要播放的幀]else{//否則a=getBytesLoaded();//已經(jīng)下載的字節(jié)數(shù)percent=int(a/b*100)+"%";//計算已經(jīng)下載的百分比]}if語句總結(jié)用法:程序中的判斷運(yùn)算。用途:廣且多例如:1、通關(guān)游戲中的通關(guān)設(shè)置(游戲類)2、學(xué)校學(xué)生成績達(dá)不達(dá)標(biāo)判斷(教育類)3、通信系統(tǒng)中打收取費(fèi)(商業(yè)類)缺點:一般只用于2-4種結(jié)果的判斷,語句重復(fù)較多input"請輸入成績:"toAifA>=90?"你的成績優(yōu)秀"elseifA>=80?"你的成績良好"elseifA>=70?"你的成績中等"elseifA>=60?"你的成績及格"else?"你的成績不及格"endifendifendifendif5種結(jié)果需要重復(fù)寫4次ifelse語句憤怒的小鳥游戲分析分?jǐn)?shù)達(dá)到20000分過第一關(guān)ifscore>=20000

進(jìn)入第二個else

重新開始if...else...endif語句一般適用于有兩三種可能的情況需要判斷,若要判斷多種可能的情況,docase...endcase結(jié)構(gòu)將比使用多個if語句方便。docase語句格式:docasecase邏輯表達(dá)式1語句組1[case邏輯表達(dá)式2語句組2...case邏輯表達(dá)式n語句組n][otherwise語句組n+1]endcase條件分支控制語句-docase語句備注:當(dāng)case后面的邏輯表達(dá)式的值為“值”時,執(zhí)行該case后面的語句組;如果所有case后面的邏輯表達(dá)式的值為“假”時,則執(zhí)行otherwise后面的語句組。例3.7docase語句題目:使用docase語句對輸入的成績進(jìn)行“優(yōu)秀”,“良好”,“中等”,“及格”,“不及格”的評定。比較一下if語句和docase語句的各自的優(yōu)點。程序代碼:input"請輸入分?jǐn)?shù):"toAdocasecaseA>=90?"成績優(yōu)秀"caseA>=80?"成績優(yōu)良"caseA>=70?"成績中等"caseA>=60?"成績及格"otherwise?"成績不及格"endcase程序運(yùn)行結(jié)果:見vfp7.0上機(jī)練習(xí)題:1、使用if語句對“學(xué)生基本情況表”中的專業(yè)(計算機(jī)/會計)進(jìn)行判斷。(表如下圖)2、使用if語句對輸入學(xué)生成績進(jìn)行A/B/C/D/E(A:90分以上,B:80分以上,C:70分一上,D:60分以上,E:60分以下)五個級別的判斷。3、使用docase語句對輸入的歲數(shù)進(jìn)行出生年份的計算(只需計算出14——20歲之間的年份,20歲是1993年出生,14歲是1999年,以此類推)。學(xué)生基本情況表(1)循環(huán)結(jié)構(gòu)控制語句—scan(1)scan語句scan語句格式:scan[scope][for邏輯表達(dá)式1][where(while)邏輯表達(dá)式2]語句組[loop][exit]endscan備注:scan語句是一個循環(huán)次數(shù)由數(shù)據(jù)表中記錄條數(shù)決定的特殊的循環(huán),每次執(zhí)行完循環(huán)體內(nèi)的語句組后,表中的記錄指針自動移向下一條記錄,重復(fù)執(zhí)行循環(huán)體內(nèi)的語句,直到表文件尾。例子3.10:scan語句題目:輸出D學(xué)生的總分程序:input"請輸入語文分?jǐn)?shù):"toAinput"請輸入數(shù)學(xué)分?jǐn)?shù):"toBinput"請輸入英語分?jǐn)?shù):"toCD=0scanD=A+B+Cendscan?"該學(xué)生的總分為:",D程序運(yùn)行結(jié)果:見vfp7.0例3.8scan語句題目:在屏幕上輸出學(xué)生的基本信息程序代碼:use"J:\VFP教學(xué)用課件\《VisualFoxPro7.0》教學(xué)課件\金山信息技術(shù)學(xué)校學(xué)生信息表\學(xué)生基本情況.dbf"scan?姓名,性別,專業(yè)ENDSCANuse運(yùn)行結(jié)果:見vfp7.0例3.9scan語句題目:在屏幕上輸出學(xué)生性別信息程序代碼:SETdefaultto[J:\VFP教學(xué)用課件\《VisualFoxPro7.0》教學(xué)課件\金山信息技術(shù)學(xué)校學(xué)生信息表]use學(xué)生基本情況.dbfscanIF性別="男"?姓名+"是男同學(xué)"ELSE?姓名+"是女同學(xué)"ENDIFendscanuse程序運(yùn)行結(jié)果:見vfp7.0循環(huán)結(jié)構(gòu)控制語句—for(2)for語句如果事先知道循環(huán)次數(shù),則可以使用for循環(huán)。語句格式:for循環(huán)變量=初值to終值[step步長]語句組[exit][loop]endfor說明:循環(huán)變量被賦初值后,如果循環(huán)變量沒有超過終值,則執(zhí)行語句組;循環(huán)變量遞增(減),如果沒有超過終值,繼續(xù)執(zhí)行循環(huán);否則,結(jié)束循環(huán)。例子3.11:for語句題目:閱讀以下程序,分析運(yùn)行的結(jié)果程序:forj=1to10?jendfor程序運(yùn)行結(jié)果:12345678910分析:變量j由1變到10,當(dāng)j=1時顯示1,當(dāng)j=2時顯示2.....當(dāng)j=10時顯示10.例3.12for語句題目:使用for語句顯示學(xué)生基本情況表中的所有學(xué)生姓名。程序代碼:SETdefaultto[J:\VFP教學(xué)用課件\《VisualFoxPro7.0》教學(xué)課件\金山信息技術(shù)學(xué)校學(xué)生信息表]use學(xué)生基本情況.dbfFORi=1to6?姓名skipENDFORuse程序運(yùn)行結(jié)果:見vfp7.0例3.13for語句題目:使用for語句求出學(xué)生成績的總分和平均分。程序代碼:use"J:\VFP教學(xué)用課件\《VisualFoxPro7.0》教學(xué)課件\金山信息技術(shù)學(xué)校學(xué)生信息表\學(xué)生基本情況.dbf"fori=1toreccount()sum=語文+數(shù)學(xué)+計算機(jī)replace總分withsumreplace平均分withsum/3skipendforuse程序運(yùn)行結(jié)果:見vfp7.0比較scan和for兩個循環(huán)語句scan與for語句的相同于區(qū)別:相同點:兩者都是循環(huán)執(zhí)行,循環(huán)次數(shù)都是可以判斷的。不同點:(1)scan語句是對表進(jìn)行操作、而for語句不是。(2)scan語句不需要另外移動記錄指針,每次執(zhí)行完循環(huán)體內(nèi)的語句組后,表中的記錄指針自動移向下一條記錄。而for語句需要增加控制記錄指針移動的語句。上機(jī)練習(xí)題:1、使用scan語句對“學(xué)生基本情況表”中的專業(yè)(建筑/設(shè)計)進(jìn)行判斷。(表如下圖)2、使用for語句顯示學(xué)生基本情況表中的所有學(xué)生姓名。學(xué)生基本情況表(2)循環(huán)結(jié)構(gòu)控制語句—dowhile(3)dowhile語句如果想要在某一條件滿足時結(jié)束循環(huán),可以使用dowhile語句。使用dowhile語句事先可以不清楚循環(huán)的次數(shù),但是需要知道結(jié)束循環(huán)的條件。語句格式:dowhile邏輯表達(dá)式語句組[loop][exit]enddo備注:如果邏輯表達(dá)式的值為真(.t.),則執(zhí)行循環(huán)體,如此反復(fù)判斷執(zhí)行循環(huán)體

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論