Click here to load reader

第 7 章 VFP 程序设计

  • Upload
    duane

  • View
    97

  • Download
    0

Embed Size (px)

DESCRIPTION

第 7 章 VFP 程序设计. 7.1 程序文件的建立、修改与运行 7.1.1 程序文件的建立与修改 程序是能够完成一定任务的若干命令的有序集合,是根据算法步骤把命令、函数、变量、常量、表达式等以逻辑的方式组合成程序文件或系统。确定算法和编写程序是两个重要步骤。 创建 VFP 源程序文件,可使用任何文本编辑器建立。本系统中使用自身编辑器创建编辑源程序文件。 VFP 提供了三种程序文件的建立方法:一是利用文件菜单创建;二是利用项目管理器创建;三是利用命令创建。. - PowerPoint PPT Presentation

Citation preview

  • 7 VFP

    7.1 7.1.1 VFPVFP

  • VFP2. 3.MODIFY COMMAND 1.

  • 7.1CX1.PRG30MODIFY COMMAND CX1R=30S=R^2*PI()?S, 7.1.2 DODO7.2CX1.PRGDO CX12827.4334

  • 7.2

    7.2.1 ACCEPTACCEPT [C] TO C7.3MYNAMEACCEPT "" TO MYNAME?MYNAME

  • 7.2.2 INPUTINPUT [C] TO 7.3INPUTA50BHELLOINPUT ":" TO A:50?A50INPUT ":" TO B:"HELLO" &&HELLO?BHELLO

  • 7.2.3 WAITWAIT[CTO]7.4WAITWAITWAIT (Y/N) TO CHOICE(Y/N)Y?CHOICE Y

  • 7.3

    7.3.1 VFP:1*/NOTE 2&& 1.NOTE/* 2.&& &&

  • 7.3.2 VFPSET7.27.2

    SET TALK ON/offSET CONSOLE ON/offSET PRINTER on/OFFSET SAFETY ON/offSET HEADING ON/offLIST/DISPLAYSET STATUS ON/offSET DEFAULT TO SET DEVICE TO SCREEN/PRINTER

  • 7.3.3

    CLEAR [ALL]CLEAR CLEAR ALL17.3.4 CLOSE ALL/1

  • 7.3.5

    1QUITVFP2CANCEL3RETURN [TO MASTER]7.3.6 TEXT

    ENDTEXT

  • 7.4 7.4.1 ,

  • 7.5(CX3.PRG)

    SET TALK OFF ACCEPT "" TO FILENAMEUSE &FILENAMELIST FOR =""WAITLIST FOR =""WAITCOUNT FOR ="" TO MENCOUNT FOR ="" TO WOMEN?":"+STR(MEN)+""?":"+STR(WOMEN)+""?":"+STR(MEN+WOMEN)+""

  • 7.4.2

    VFP1.IFL 1 [ELSE 2] ENDIFL

  • 7.6XYX>=Y,X-YY>X,Y-X(CX4.PRG)

    SET TALK OFFINPUT "X=" TO XINPUT "Y=" TO YIF X>=YZ=X-YELSEZ=Y-XENDIF?":",Z

  • 7.7STUDENT.DBF2006010101,2006010102,(CX5.PRG)

    SET TALK OFFUSE STUDENTLOCATE FOR ="2006010101"IF FOUND() REPLACE WITH "2006010102" DISPLAYELSE ?""ENDIF

  • 2.

    DO CASE CASEL1 1CASEL22 CASELNN[OTHERWISE]ENDCASE

  • 7.82001005%2008%30010% (CX6.PRG)

    SET TALK OFFP=200INPUT ":" TO QDO CASE CASE Q

  • 7.9,(CX7.PRG)SET TALK OFFACCEPT ":" TO FILENAMEUSE &FILENAME?"1---"?"2---"?"3---"?"4---"INPUT "(1-4)" TO MYSLDO CASE CASE MYSL=1 APPEND CASE MYSL=2 BROWSE CASE MYSL=3 INPUT ":" TO NREC GOTO NREC INSERT BEFO CASE MYSL=4 INPUT ":" TO NREC GOTO NREC DELETE PACKOTHERWISE?"!"ENDCASE

  • 7.4.3

    VFP1.DO WHILEL [[LOOP] [EXIT] ] ENDDOLL

  • 7.101+2+3+...+100(CX8.PRG) SET TALK OFFS=0I=1DO WHILE I
  • 7.11YNCX10.PRG

    SET TALK OFFDO WHILE .T. WAIT "Y/N" TO YN IF UPPER(YN)"Y" AND UPPER(YN)"N" LOOP ELSE EXIT ENDIFENDDO

  • 2.FOR=N1TON2[STEPN3] ENDFOR/NEXTN1N3N217.121+3+5+...+99CX11.PRGSET TALK OFFS=0FOR I=1 TO 99 STEP 2 S=S+INEXT?"1+3+5++99=",S

  • 3.

    SCAN [][FOR/WHILE] ENDSCAN7.13STUDENTCX12.PRGUSE STUDENTSCAN FOR = ?,ENDSCAN

  • 4.7.8

    7.8

  • 7.14CX13.PRG

    CLEARX=1DO WHILE X

  • 7.5 STORE/ACCEPT/INPUT/WAIT?/??/LIST/DISPLAY@[SAY][GET][DEFAULT]1.@2.@ TO 3.@[email protected]

  • 7.1535 @3,57.165101030 @5,10 TO 10,307.1735XM=@3,5 SAY "" GET XMREAD

  • 7.18:(CX14.PRG)

    * *** ***** *******SET TALK OFFI=1J=10DO WHILE I

  • 7.19410STUDENT(CX15.PRG) USE STUDENTGOTO 3@4,10 SAY ""++SPACE(10)+""+

  • 7.6

    7.6.1 MODIFY COMMAND[RETURN [TO MASTER]]DO

  • 7.9

  • 7.20CX16.PRGCX17.PRG

    CX16.PRGX1=5X2=6X3=7DO CX17X4=X1+X2+X3?X4CX17.PRGX1=2X2=X1*5^2DO CX16 59

  • 7.21,(CX18.PRG)SET TALK OFFCLEAR@2,13 TO 7,45@3,15 SAY ""@4,15 SAY "1-- 2--"@5,15 SAY "3-- 4--"@6,15 SAY "0--"DO WHILE .T.INPU "(0--4)" TO SELDO CASECASE SEL=1DO ZJCASE SEL=2DO SCCASE SEL=3DO CXCASE SEL=4DO XGCASE SEL=0EXITOTHERWISE?","ENDCASEENDDO

  • CX.PRG

    ACCEPT ":" TO FNUSE &FNACCEPT ":" TO XMLOCATE FOR =XMDO WHILE NOT EOF()DISPLAYWAITCONTINUEENDDO

  • 7.6.2

  • 1.

    MODIFY COMMAND2.PROCEDUREPROCEDURE [RETURN [TO MASTER]]3.SET PROCEDURE TO4.DO5.1SET PROCEDURE TO2CLOSE PROCEDURE

  • 7.22CX19.PRGCX20.PRG,:

    *********# ## #$$$$$$$$$CX19.PRG:PROCEDURE SUB1?"*********"RETUPROCEDURE SUB2?"$$$$$$$$$"RETU

  • CX20.PRG

    CLEAESET PROCEDURE TO CX22DO SUB1?"# #"?"#"+SPACE(7)+"#"DO SUB2DO CX20

  • 7.7

    7.7.1 DODOWITHPARAMETERS1.PARAMETERS

  • 2.

    DO WITH .F.

  • 7.23(CX21.PRG)

    PARAMETERS A,B,C,DS=MAX(A,B)S=MAX(S,C)S=MAX(S,D)?S ()

  • 7.24CX22.PRG(CX23.PRG)

    CX22.PRG:PARAMETERS R,SS=PI()*R^2CX23.PRG:YMJ=0@5,10 SAY "" GET BJ DEFAULT 0READDO CX22 WITH BJ,YMJ?"=",YMJ

  • 7.7.2

    1.PUBLICPUBLIC .F.

  • 2.

    VFPPRIVATE [][ALL[LIKE/EXCEPT]]3.

    LOCAL .F.LOCALLOCATE

  • 7.25CX24.PRGCX25.PRG

    CX24.PRGRELEASE ALL &&PUBLIC X1 &&X1.F.X1="HELLO" LOCAL X2 &&X2.F.X2="WELCOME" STORE "GOODBYE" TO X3 &&x3GOODBYEDO CX25 &&CX28?"" &&?"X1=",X1?"X2=",X2?"X3=",X3

  • CX25.PRG

    ?"" &&X1X3?"X1=",X1*?"X2=",X2 &&X2?"X3=",X3

    DO CX24X1=HELLOX3=GOODBYEX1=HELLOX2=WELCOMEX3=GOODBYE