




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、精選優(yōu)質(zhì)文檔-傾情為你奉上Visual FoxPro程序設(shè)計課程學生自主學習報告( 學年 第二學期)班級: 學號: 姓名: 組 別組長任課老師小組成員浙江萬里學院基礎(chǔ)學院計算機部Visual FoxPro程序設(shè)計課程組討論一 VFP基礎(chǔ)知識一.討論準備:學生分組討論VFP數(shù)據(jù)類型、表達式、運算符、常用函數(shù)及表的基本操作命令等基礎(chǔ)知識,由組長安排時間地點組織分組研究學習并完成基礎(chǔ)知識練習題。二.討論目的:使學生熟練掌握VFP數(shù)據(jù)類型、表達式、常用函數(shù)等基礎(chǔ)知識,為后續(xù)的算法設(shè)計打好堅實的語法知識。三.討論要求:各分組由學生小組長負責記錄成員任務(wù)分工及學習討論學習情況,并完成小組活動記錄手冊。各組
2、成員在討論學習基礎(chǔ)上完成自主學習報告一。四.討論內(nèi)容:(1)VFP提供的數(shù)據(jù)類型有哪些?可用于字段變量、內(nèi)存變量和常量的數(shù)據(jù)類型分別有哪些?(2) VFP提供的運算符有哪些?運算符可分為幾類?VFP表達式有幾類,VFP表達式與數(shù)學表達式有何區(qū)別?(3)VFP常用函數(shù)有哪些?對常用函數(shù)按其功能分類并舉例說明函數(shù)使用格式及其功能。(4)VFP有關(guān)表操作的常用命令有哪些?對常用命令分類并舉例說明命令使用格式及作用。五. VFP基礎(chǔ)知識練習題1) 數(shù)據(jù)庫DB、數(shù)據(jù)庫系統(tǒng)DBS、數(shù)據(jù)庫管理系統(tǒng)DBMS三者之間的關(guān)系是:AA) DBS包括DB和DBMSB) DBMS包括DB和DBSC) DB包括DBS和D
3、BMSD) DBS就是DB,也就是DBMS2) Visual FoxPro 6.0數(shù)據(jù)庫系統(tǒng)是(C)型數(shù)據(jù)庫系統(tǒng)。A) 網(wǎng)絡(luò)B) 層次C) 關(guān)系D) 鏈狀3) 設(shè)A=“123”,B=“234”,表達式(C)的值為假(.F.)。A) .NOT.(A=B) .OR.(B$“ABC”)B) .NOT.(A$“ABC”).AND.(A<>B)C) .NOT.(A<>B) D) .NOT.(A>=B)4) 將邏輯假值賦給內(nèi)存變量DY的正確方法是BA) DY=FALSE B) STORE .F. TO DYC) DY=“.F.” D) STORE “F” TO DY5) 假定
4、Y=2,執(zhí)行命令 ?Y=Y+2 后,其結(jié)果是CA) 3B) 4C) .F.D) .T.6) 在下列Visual FoxPro表達式中,結(jié)果為日期型的正確表達式是BA) DATE()+TIME ()B) DATE()+120C) DATE()-CTOD(02/01/99)D) 288-DATE ()7) 變量string=“1999年上半年全國計算機等級考試”,能夠顯示”1999年上半年計算機等級考試”的命令是CA) ?string-”全國”B) ?SUBSTR(string,1,8)+SUBSTR(string,11,17)C) ?SUBSTR(string,1,12)+SUBSTR(stri
5、ng,17,14)D) ?STR(string,1,12)+ STR(string,17,14)8) 如果沒有定義變量F,執(zhí)行下列命令后,其結(jié)果為U的表達式是BA) ?TYPE(”.F.”)B) ?TYPE(”F”)C) ?TYPE(.F.)D) ?TYPE(F)9) 命令序列W1=“GOOD MORNING!”W2=SUBSTR(STUFF(W1,6,0,”LUCKY”),1,10)?W2執(zhí)行后,其結(jié)果為CA) GOOD MORNINGB) GOOD LUCKY MORNINGC) GOOD LUCKYD) LUCKY MORNING10) 安全可靠地退出Visual Foxpro系統(tǒng)地正確
6、方法是AA) 在命令窗口中執(zhí)行QUIT命令B) 關(guān)掉計算機電源C) 在命令窗口執(zhí)行EXIT命令D) 在”文件”菜單中執(zhí)行”關(guān)閉”11) 使用DIMENSION命令定義數(shù)組后,各數(shù)組元素在沒有賦值之前數(shù)據(jù)類型是CA) 字符型B) 數(shù)值型C) 邏輯型D) 未定義12) 在下列Visual Foxpro表達式中,運算結(jié)果一定是邏輯值的是CA) 字符表達式B) 數(shù)值表達式C) 關(guān)系表達式D) 日期表達式13) 在Visual Foxpro中,MIN(ROUND(8.89,1),9)的值是BA) 8B) 8.9C) 9D) 8.8914) 函數(shù)LEN(ABC-ABC)的值是BA) 0B) 6C) 7D)
7、 315) 若變量X=10,KK=“X=123”,則函數(shù)TYPE(“KK”)的值為CA) LB) NC) CD) 錯誤16) 條件函數(shù)IIF(LEN(SPACE(1)-“1”)=2),1,-1)的值是AA) 1B) 2C) -1D) 017) 順序執(zhí)行以下賦值命令X=“50”,Y=6*8,Z=LEFT(“Visual Foxpro”,3)之后,下列表達式中,合法的表達式只有DA) X+Y B) Y+Z C) X-Z+YD) &X+Y18) 執(zhí)行下列命令序列ABC=“萬里學院”? SUBSTR(ABC,LEN(ABC)/2+1,4)結(jié)果是BA) 萬里B) 學院C) 里學D) 變量未找到1
8、9) 表達式ASC(“APPEND”)的值為CA) 128B) 97C) 65D) “A”20) 執(zhí)行以下命令序列(設(shè)今天為2005年2月1日)B?YEAR(DATE()-365) 的結(jié)果為A) 其中有語法錯誤B) 2004C) 2000D) 2002-1-5 21) 下列4個表達式中,運算結(jié)果為數(shù)值型的是DA) ? ”9988”-”1255”B) ? 200+800=1000C) ? 2015/05/16-20D) ? LEN(SPACE(3)22) 設(shè)變量X=12345.678,現(xiàn)欲求變量X的整數(shù)位數(shù),應使用表達式 CA) LEN(INT(X)B) LEN(STR(INT(X)C) LEN
9、(LTRIM(STR(X)D) LEN(ALLTRIM(INT(X)23) 將字符型數(shù)據(jù)轉(zhuǎn)換成日期型數(shù)據(jù),使用的函數(shù)是CA) dtocB) strC) ctodD) val24) 2005/01/05+15是一個( C )A) 日期常量B) 數(shù)值常量C) 日期表達式D) 非法表達式25) 以下選項中,( A )是合法的字符型常量A) 123+E456B) 123C) 123.456D) 123*1026) 下面哪個不是給內(nèi)存變量賦值的正確語句DA) x35 B) x=“35”C) x=int(3+5)D) x=val(“3+5”)27) 與其它三個關(guān)系運算符不等價的是DA) <>B
10、) #C) !=D) ><28) 建立一個表文件結(jié)構(gòu)時,若該庫文件中有備注型字段,則保存時會(D ) A) 只創(chuàng)建一個表文件,擴展名為. dbfB) 在創(chuàng)建一個表文件同時還創(chuàng)建一個備注文件,擴展名為.CDXC) 在創(chuàng)建一個表文件同時還創(chuàng)建一個備注文件,擴展名為.txtD) 在創(chuàng)建一個表文件同時還創(chuàng)建一個備注文件,擴展名為.fpt 29) 要求數(shù)據(jù)表文件某數(shù)值型字段的整數(shù)是5位,小數(shù)是1位,該字段的寬度至少定義為(B ) A) 8位B) 7位C) 6位D) 5位 30) 一個表的全部備注字段的內(nèi)容存儲在(D )中A) 同一數(shù)據(jù)表文件B) 不同表備注文件C) 同一文本文件D) 同一表備
11、注文件31) 下述命令中的哪一條不能關(guān)閉表( A)A) CLEARB) CLOSE DATABASEC) USED) CLEAR ALL32) 建立一個表文件結(jié)構(gòu),表中有編號字段(C型,6字節(jié)),出生年月字段(D型)和團員否字段(L型),則表中總的字段寬度是(C)A) 18B) 17C) 16D) 1533) 下列命令中,修改表文件結(jié)構(gòu)的命令是(B )A) MODIFY FILEB) MODIFY STRUCTUREC) MODIFY COMMANDD) CREATE STRUCTURE34) 在Visual FoxPro 的表結(jié)構(gòu)中,邏輯型,日期型和備注型字段的寬度分別為(A)A) 1,8,
12、4 B) 1,8,10 C) 3,8,10D) 3,8,任意35) 要顯示表中當前記錄的內(nèi)容,可使用命令( B)A) LISTB) DISPLAYC) BROWSED) modify36) 用APPEND 命令插入一條記錄時,被插入的記錄在表中的位置是( A)A) 表最后面B) 表最前面C) 當前記錄之前D) 當前記錄之后37) 不能對記錄進行編輯修改的命令是( C)A) BROWSEB) CHANGEC) MODIFY STRUCTURED) EDIT38) Visual FoxPro表文件由兩部分組成,即(B )A) .DBF文件和.FPT文件B) 表結(jié)構(gòu)和記錄數(shù)據(jù)C) .DBF文件和.B
13、AK文件D) PRG文件和.FXP文件39) XS.DBF是一個具有一個備注字段和一個通用字段的表文件,使用COPY TO PXS 命令進行復制操作,其結(jié)果為(B )A) 得到一個新表文件B) 得到一個新的表文件和一個新的表備注文件C) 得到一個新的表文件和一個新的表備注文件,以及一個新的表通用文件D) 得到一個新的表文件和兩個新的表備注文件40) 在Visual FoxPro系統(tǒng)中,”DBF”文件被稱為(B )A) 數(shù)據(jù)庫文件B) 表文件C) 程序文件D) 項目文件41) 如果要給當前表增加一個字段,應使用的命令是( B)A) APPENDB) MODIFY STRUCTUREC) INSE
14、RTD) EDIT42) 在表的備注字段中可以輸入的內(nèi)容有( D)A)圖像 B)波形聲音 C)視頻剪輯 D)文字43) 當RECALL命令不帶任何范圍和條件時,表示(D )。A)恢復所有帶刪除標記的記錄B)恢復從當前記錄以后所有帶刪除標記的記錄C)恢復當前記錄開始下一條帶刪除標記的記錄D)恢復當前記錄44) 在已打開表文件的第3條記錄前插入一條記錄,可使用( B)命令。A)GO 3 B)GO 3 INSERT INSERT BEFOREC)GO 3 D)GO 4 INSERT BLANK INSERT BEFORE45) 下列敘述正確的是(C)A)只能打開一個數(shù)據(jù)庫 B)備注字段的數(shù)據(jù)保存在表
15、文件中C)可以使用多個工作區(qū)打開多個表 C)一個工作區(qū)可以同時打開多個表46) 已建立一個”學生”表Student.dbf,并輸入5名學生的記錄,用APPEND命令追加一條新記錄,這個新記錄的記錄號是(B ):A) 5 B) 6 C) 7 D) 447) 將邏輯真值賦給內(nèi)存變量X的正確方法是(D)。A)X=True B)STORE “.T.” TO XC)X=T D)STORE .T. TO X48) 在下列函數(shù)中,函數(shù)值為數(shù)值的是( C )。A) BOF() B) CTOD('01/01/96')C) AT('人民','中華人民共和國') D)
16、 SUBSTR(DTOC(DATE(),7)49) 在Visual FoxPro的表文件中,每條記錄總長度比定義的所有字段寬度之和多一個字節(jié),該字節(jié)用于( D )。A) 存放索引關(guān)鍵字 B) 存放記錄號C) 存放記錄寬度 D) 存放刪除標記50) 在命令窗口中,已打開學生表,要將記錄指針定位在第一個獎學金大于75元的記錄上,用命令( B )。 A) FIND FOR 獎學金>75 B) LOCATAE FOR獎學金>75 C) SEEK FOR 獎學金>75 D) LIST FOR 獎學金>7551) 現(xiàn)有以下命令:T=23400M=MOD(T,60) HH=INT(T
17、/60) H=MOD(HH,24) D=INT(HH/24) ? D,H,M執(zhí)行上述命令后的結(jié)果為( C)。A)0 616 B)6 16 0C)16 6 0D)6 0 1652) 在Visual FoxPro中,Max(ROUND(9.26, 1),8)的值是(A )。A)9.3B)9C)1D)853) 命令序列A=8B=6? IIF(A<>B,8,6)的值是( B)。A)6B)8C).T.D)054) 在下列Visual FoxPro表達式中,結(jié)果為字符串的正確表達式是( A )。A)“1234”-”43” B)”ABCD”+“XYZ”=“ABCDXYZ”C)DTOC(DATE(
18、)>“09/24/09” D)DATE()55) Visual FoxPro中,打開表文件后,若要瀏覽表中的數(shù)據(jù),可以執(zhí)行(C)命令。A)CREATE B)MODIFY C)BROWSE D)SKIP56) 設(shè)當前已打開表文件X.DBF,執(zhí)行命令COPY STRU TO Y的作用是( D)。A)僅將當前一條記錄拷貝到Y(jié).DBF中B)將X.DBF的全部記錄拷貝到Y(jié).DBF中C)將X.DBF和Y.DBF的內(nèi)容連接后再存入Y.DBF中D)僅將表文件X.DBF的結(jié)構(gòu)復制到新建立的Y.DBF文件中57) 表文件中有10條記錄,當前記錄號為3,執(zhí)行命令LIST Next 4(回車)所顯示的記錄的序號
19、為( C)。A)47 B)58 C)36 D)31058) 設(shè)當前記錄號是10,執(zhí)行命令SKIP -6后,當前記錄號變?yōu)椋ˋ)A)4 B)5 C)6 D)359) 已建立一個學生表Student.dbf,并輸入10名學生的記錄,當前記錄為5,用ZAP命令刪除記錄,刪除的記錄是(C):A) 第5條記錄 B)第510條記錄 C)全部記錄 D)沒有記錄刪除60) ? “化學” $ “北京語言文化學院”的運算結(jié)果是( A )。 A).T. B).F. C)9 D)561) 執(zhí)行下面命令序列后,最后一條命令顯示的結(jié)果為( A)。USE 庫存表DISPDISPDISP NEXT 2? RECNO()A)2
20、 B)3 C)4 D)562) 表文件中有數(shù)學,英語,計算機和總分四個數(shù)值型字段,要將當前記錄的三科成績匯總后存入總分字段中,應使用命令( B)。A)TOTAL 數(shù)學+英語+計算機 TO 總分B)REPLACE 總分 WITH 數(shù)學+英語+計算機C)SUM 數(shù)學+英語+計算機 TO 總分D)REPLACE ALL 數(shù)學+英語+計算機 WITH 總分63) 在當前表中,查找第2個男同學的記錄,應使用命令( C )。A) locate for 性別=“男” next 2B) locate for 性別=“男”C)先執(zhí)行l(wèi)ocate for 性別=“男”,然后再執(zhí)行 continueD) list
21、for 性別=“男” next 264) 設(shè)表TXL.DBF中有 20 條記錄。在VFP命令窗口中執(zhí)行以下命令序列,最后顯示的結(jié)果是( D)。 USE TXL SKIP 3 COUNT TO N ? NA) 0 B) 3 C) 4 D) 2065) 下面哪個命令可以同時給多個變量賦值( C )。AINPUT B. ACCEPT C. STORE D. WAIT66) 表文件的表結(jié)構(gòu)中有語文、物理、化學和總分字段,且都是數(shù)值型,要將所有學生的各門成績匯總后存入總分字段中,使用命令(C):A)REPLACE 總分WITH 語文+物理+化學B)REPLACE 總分WITH 語文,物理,化學C)REP
22、LACE ALL 總分WITH 語文+物理+化學 D)REPLACE ALL總分WITH 語文+物理+化學 FOR REST67) 在下列四個選項中,不屬于VFP邏輯運算符的是( D )。A. .AND. B. ! C. .OR. D. .XOR.關(guān)系中的屬性對應于二維表中的( B)。A. 記錄 B. 字段 C. 行 D. 范圍68) 已知當前表有80個記錄,當前記錄為第10號記錄。執(zhí)行SKIP 3后當前記錄為第(C)號記錄。A. 7 B. 10 C. 13 D. 1569) 表學生.DBF中共有20個記錄,順序執(zhí)行下面命令(C):SET DELETED OFFUSE 學生DELETECOUN
23、T TO AAPACKCOUNT TO AAZAPCOUNT TO AAUSE3次COUNT 得到的AA結(jié)果分別為:A)19,19,1 B)19,19,0 C)20,19,0 D)20,19,1970) 當EOF()函數(shù)的值為真時,記錄指針位于( B )。A. 表文件的頭 B. 表文件的尾 C. 最后一條記錄 D. 第一條記錄71) 在VFP中,最多可以有( C )個工作區(qū)。A. 10 B. 255 C. 32767 D. 任意72) 若想從字符串'計算中心'中取出'算'字,應用函數(shù)( C )。A. SUBSTR(“計算中心”,2,2) B. SUBSTR(“計
24、算中心”,2,1)C. SUBSTR(“計算中心”,3,2) D. SUBSTR(“計算中心”,5,2)73) 數(shù)據(jù)庫系統(tǒng)中的核心是( B)。A. 硬件系統(tǒng) B. 數(shù)據(jù)庫集合 C. 數(shù)據(jù)庫管理系統(tǒng) D. 數(shù)據(jù)庫管理者和用戶74) 下述命令中,不能顯示數(shù)據(jù)表記錄的命令是( D )。A. LIST B. DISP C. BROWSE D. MODI STRU75) 某數(shù)值型字段的寬度為9位,小數(shù)位數(shù)為3位,則該字段的最大值是(C )A) B)999 C)99999.999 D)99999.9976) 下列命令序列輸出結(jié)果為(C)。USE 工資表GO BOTTOM SKIP 1? EOF()A).T
25、. B)T C).F. D)F77) 設(shè)N=“213.4”,? 21+&N的結(jié)果是(B )A)21B)234.4C)213.4D)數(shù)據(jù)類型不匹配78) 執(zhí)行下列命令序列AB=“熱烈慶祝建國60周年”? SUBSTR(AB,LEN(AB)/3-1,4)結(jié)果是( B)。A)建國 B)慶祝 C)周年 D)6079) 在Visual FoxPro中,要將一個數(shù)值型變量轉(zhuǎn)換為字符型變量,應使用的函數(shù)為(D)。A)INT() B)CTOD() C)VAL() D)STR()80) 計算結(jié)果不是字符串”Teacher”的語句是( A)。A)at("ch","MyTeac
26、her") B)substr("MyTeacher",3,7 )C)left("Teacher",7 ) D)right("MyTeacher",7 )自主學習項目報告(一)項目名稱項目類別自主學時(小時)完成項目日期教師評價VFP基礎(chǔ)知識基礎(chǔ)練習理論一、 討論學習內(nèi)容提綱1、VFP提供的數(shù)據(jù)類型2、VFP表達式和運算符3、自由表與數(shù)據(jù)庫表的區(qū)別4、表操作常用命令 5、VFP常用函數(shù)二、討論學習中出現(xiàn)的問題或體會三、討論學習內(nèi)容知識點歸納及舉例說明(可粘貼附頁)要求:1、歸納VFP的運算符種類2、簡述自由表與數(shù)據(jù)庫表的區(qū)別
27、3、歸納表的基本操作命令,描述命令基本格式,并舉例說明命令功能4、歸納VFP常用函數(shù),描述函數(shù)基本格式,并舉例說明函數(shù)功能第一題1.算數(shù)運算符(舉例結(jié)果為.t.)() 分組優(yōu)先運算符 例子:(3+2)*2=10*、 乘方運算符 例子:32=9*、/ 乘除運算符 例子:2*3=6 9/3=3% 求余運算符 例子:5%2=1+、- 加減或單目運算符 例子:2+3=5 8-4=4運算符的優(yōu)先級依次為括號、單目運算、乘冪、乘除、求余、加減。2.字符運算符+ 字符串連接符,功能:將運算符2邊的字符串連接起來,形成一個新字符串。例子:”ab”+”cd”=”abcd”- 串尾空格移位連接符,功能:將2個字符
28、連接時,把第一個字符串的尾部空格(若存在)移到后面字符串的尾部。例子” abc ” -”de”=”abcde ”3.關(guān)系運算符(舉例結(jié)果為.t.)< 小于 例子:3<5 > 大于 例子:5>4= 等于 例子:”asdf”=”asd”= 相等比較 例子:”abcd”=”abcd”<= 小于等于 例子:4<=5>= 大于等于 例子:7>=7<>、#、!= 不等于 例子:2+3<>3+3$ 包含運算 ”ab”$”abcde”4.邏輯運算(按優(yōu)先級順序排列).NOT.或NOT或! 邏輯非 例子:.NOT.T.=.F.AND.或AN
29、D 邏輯與 例子:A=.T. B=.F.,A .AND. B=.F.OR.或OR 邏輯或 例子:A=.T. B=.F.,A .OR. B=.T.第二題歸屬于某個數(shù)據(jù)庫的表稱為數(shù)據(jù)庫表。獨立存在、不與任何數(shù)據(jù)庫相關(guān)聯(lián)的表稱為自由表。兩種表可以相互轉(zhuǎn)化的。區(qū)別:數(shù)據(jù)庫表對于自由表來說具有更加強大的功能以及擁有自由表所沒有的許多特性:長文件名、字段驗證等。所以大多數(shù)應用需要建立數(shù)據(jù)庫,并創(chuàng)建新表或添加自由表到數(shù)據(jù)庫中,即成為數(shù)據(jù)庫表。1.數(shù)據(jù)庫表可以使用長字段名(最多可達到128個字符),而自由表最多只能達到10個字符。2.數(shù)據(jù)庫表可以指定標題和添加注釋,可以指定規(guī)則、提示信息、默認值和輸入掩碼。
30、而自由表沒有以上設(shè)置。3. 數(shù)據(jù)庫表可以建立主索引。而自由表不能建立主索引。第三題(1)<范圍>子句用以確定顯示的記錄(即表中的行) RECORD n 顯示第n條單條記錄 NEXT n 顯示當前記錄開始的共n條連續(xù)記錄 REST 顯示當前記錄開始到表文件尾的所有記錄 ALL 顯示所有記錄(可省略)(2) FIELDS<字段名表>用以確定顯示的字段(即表中的列)若省略“FIELDS<字段名表>”子句,則表示對所有字段進行操作。(3)1.打開表文件USE<文件名>打開指定的表文件,記錄指針指向第一條記錄,表中若有備注字段,相關(guān)的備注文件自動打開(.F
31、PT)例:USE 學生成績記錄表2.關(guān)閉表文件USE關(guān)閉當前工作區(qū)表文件CLOSE TABELS關(guān)閉所有打開的表文件3.記錄指針定位 絕對移動GO/GOTORECORD<記錄號>GO/GOTO TOP 頂GO/GOTO BOTTOM 底 相對移動SKIP<±n>正整數(shù)往文件尾,負整數(shù)往文件頭例;GOTO 3 SKIP 3 ?RECNO()6(4)顯示、瀏覽表文件顯示命令格式:LIST<范圍>FIELDS<字段名表>FOR<條件>WHILE<條件>例:LIST RECO 4顯示第4條記錄瀏覽命令格式:DISPLAY
32、<范圍>FIELDS<字段名表>FOR<條件>WHILE<條件>當省略 “<范圍>”時,LIST命令顯示所有記錄;DISP命令則顯示當前記錄(5)追加與修改記錄APPEND BLANK例:向當前數(shù)據(jù)表尾部追加記錄。 APPEND(6)插入記錄(默認在當前記錄的后面插入記錄)INSERT BLANKBEFORE例:在當前記錄后插入一條空記錄。INSERT BLANK(7)記錄刪除1邏輯刪除給記錄添加一個刪除標記,可恢復DELETE <范圍>FOR 條件 例:GO 7DELE 結(jié)果:邏輯刪除第7條記錄2物理刪除從表中徹底刪除,
33、不可恢復 PACK (物理刪除被邏輯刪除的記錄) ZAP (無條件刪除)例:刪除“職工編號”空白的記錄。DELETE ALL FOR 職工編號=""PACK(8)記錄的尋位定位LOCATE <范圍> FOR <表達式1> 繼續(xù)查找命令:CONTINUE例子:在當前的表中查找姓“張”的記錄。LOCATE FOR 姓名="張"(9)表文件復制COPY TO <文件名> <范圍>FIELDS <字段名表>FOR <條件>WHILE<條件>例子:把當前表中“
34、應發(fā)合計”大于1000元的記錄復制到新數(shù)據(jù)表GZ2中。COPY TO A:GZ2 FOR 應發(fā)合計>1000(10)從文件中追加記錄APPEND FROM <文件名> FOR <條件>FIELDS<字段名表>例子:把GZ1表中“應發(fā)合計”大于1000的記錄復制到當前的表后面。APPEND FROM GZ1 FOR 應發(fā)合計>1000(11)記錄修改用REPLACE命令修改REPLACE <范圍> <字段名1> WITH <表達式>,<字段名2>WITH<表達式2>FOR <條件&g
35、t;例子:計算各記錄“應發(fā)合計”字段的值。REPLACE ALL 應發(fā)合計 WITH 職務(wù)工資+崗位津貼+保留獎金+保留津貼第四題一、數(shù)值和數(shù)學函數(shù) 1取整函數(shù)INT(<數(shù)值表達式> ) 【功能】該函數(shù)取指定數(shù)值表達式計算機結(jié)果的整數(shù)部分例:?INT(22.4+10) 322四舍五入函數(shù) ROUND(<數(shù)值表達式1>,<數(shù)值表達式2>) 【功能】該函數(shù)根據(jù)要求保留小數(shù)位數(shù)。 例:? ROUND(123.456,0)1233. 求余數(shù)函數(shù)MOD(<數(shù)值表達式1>,<數(shù)值表達式2>) 【功能】返回<數(shù)值表達式1>除以<數(shù)
36、值表達式2>的余數(shù)。如<數(shù)值表達式2>為正,則函數(shù)值為正,否則為負。例:?MOD(6*6,10)64. 最大值,最小值函數(shù) MAX/ MIN (<表達式1>,< 表達式2>,< 表達式3>.) 【功能】返回數(shù)值表達式中的最大值或最小值。例:?MAX(1,2,3)35. 絕對值函數(shù)ABS(<數(shù)值表達式>)【功能】返回<數(shù)值表達式>的絕對值。 例:?ABS(-21.4) 21.46.平方根函數(shù)SQRT(<數(shù)值表達式>) 【功能】該函數(shù)返回<數(shù)值表達式>的算數(shù)平方根。例:?SQRT(9) 37. 指
37、數(shù)函數(shù)EXP(<數(shù)值表達式>) 【功能】該函數(shù)返回以e為底的指數(shù)值,<數(shù)值表達式>為e的指數(shù)部分。例:?EXP(1) 2.728. 隨機函數(shù)RAND(<數(shù)值表達式>)【功能】函數(shù)隨機返回一個01.0之間的隨機數(shù)。例:產(chǎn)生a-b之間的隨機整數(shù)?RAND((b-a)*RAND()+a,0)二字符處理函數(shù)1.取消前后空格函數(shù)ALLTRIM(<字符表達式>)【功能】該函數(shù)取消<字符表達式>中的前后空格例:?ALLTRIM( 123 ) 1232.刪除字符串前導空格函數(shù) LTRIM(<字符表達式>)【功能】用于截去<字符表達式
38、>中左邊空格。例:?”abc”+LTRIM(” de”) abcde3. 刪除字符串尾部空格函數(shù)RTRIM(<字符表達式>)/TRIM(<字符表達式>) 【功能】刪除字符串尾部的空格。例:STORE ”計算機 ” TO z ?TRIM(z)+”基礎(chǔ)”計算機基礎(chǔ)4.取左子串函數(shù) LEFT(<字符表達式>,<數(shù)值表達式>) 【功能】截取<字符表達式>最左邊的<數(shù)值表達式>個字符為一個子字符串。 例:?LEFT(“ABCDE”,2) AB5取右子串函數(shù)RIGHT(<字符表達式>,<數(shù)值表達式>) 【
39、功能】截取<字符表達式>最右邊的<數(shù)值表達式>個字符為一個子字符串。例:?LEFT(“ABCDE”,2) DE6取子串函數(shù) SUBSTR (<字符表達式>,<數(shù)值表達式1> ,<數(shù)值表達式2> ) 【功能】這里<數(shù)值表達式1>指定取子字符的起始位置,<數(shù)值表達式2>指定取字符的個數(shù)。例:?SUBSTR(“浙江寧波”,3,2) 江7. 字符串長度函數(shù) LEN(<字符表達式>) 【功能】返回<字符表達式>的長度。輸出值的類型為數(shù)值型。例: ?LEN(“HELLO”) 58空格函數(shù) SPACE
40、 (<數(shù)值表達式>) 【功能】輸出一個<數(shù)值表達式>的值為空格數(shù)的若干空格。輸出值的類型為字符型。例:?”浙江”+SPACE(2+2)+”寧波” 浙江 寧波9字符串替換函數(shù) STUFF(<字符表達式1>,<數(shù)值表達式1>,<數(shù)值表達式2>,<字符表達式2>) 【功能】可用 <字符表達式2>修改<字符表達式1>中任一部分。其中<數(shù)值表達式1>指定修改起始位置,<數(shù)值表達式2>則為要修改的字符的個數(shù)。例;?STUFF(“浙江省寧波”,5,2,” ”) 浙江寧波三日期時間函數(shù)1.系
41、統(tǒng)時間函數(shù) TIME() 【功能】該函數(shù)以24小時,8個字符串格式(hh:mm:ss)時、分、秒返回當前系統(tǒng)時間。例:?TIME 13:20:302日期函數(shù) DATE() 【功能】該函數(shù)返回當前系統(tǒng)日期。例:SET CENTURY ON?DATE ()12/05/20163.日期時間函數(shù) DATETIME()【功能】該函數(shù)返回當前系統(tǒng)日期時間。例:?DATETIME()16/05/12 13:20:304.求年份函數(shù) YEAR(<日期表達式/日期時間表達式>)【功能】該函數(shù)返回<日期表達式>或<日期時間表達式>的年份的值。輸出值的類型為數(shù)值型。例:?YEAR
42、2016/05/12 20165.求月份函數(shù) MONTH/CMONTH(<日期表達式/日期時間表達式>)【功能】該函數(shù)返回<日期表達式>或<日期時間表達式>的月份值。輸出值的類型為數(shù)值型。例:?MONTH2016/05/12 056.求日期函數(shù) DAY(<日期表達式/日期時間表達式>)【功能】該函數(shù)返回<日期表達式>或<日期時間表達式>的日期的數(shù)值。輸出值的類型為數(shù)值型。例:?DAY2016/05/12 127.求時、分、秒函數(shù)HOUR(<日期時間表達式>)MINUTE(<日期時間表達式>)SEC(
43、<日期時間表達式>)【功能】這三個函數(shù)分別返回<日期時間表達式>的時、分、秒值。輸出值的類型為數(shù)值型。例:?HUR(DATETIME() 21四轉(zhuǎn)換函數(shù)1.字母小寫轉(zhuǎn)大寫函數(shù) UPPER (<字符表達式>) 【功能】該函數(shù)將<字符表達式>中所有小寫字母轉(zhuǎn)換成大寫字母。輸出值的類型為字符型。例:?UPPER(“go”) GO2字母大寫轉(zhuǎn)小寫函數(shù) LOWER(<字符表達式>) 【功能】該函數(shù)將<字符表達式>中所有大寫字母轉(zhuǎn)換成小寫字母。輸出值的類型為字符型。例:?LOWER(“Zhe Jiang”) zhe jiang 3字符
44、日期型轉(zhuǎn)換函數(shù)CTOD(<字符表達式> ) 【功能】該函數(shù)把字符型數(shù)據(jù)轉(zhuǎn)換為日期型數(shù)據(jù)。輸出值的類型為日期型。例:?CTOD(“3/26/16”)+10 04/07/16 4日期字符型轉(zhuǎn)換函數(shù)DTOC(<日期表達式>, 1) 【功能】該函數(shù)把日期型數(shù)據(jù)轉(zhuǎn)換為字符型數(shù)據(jù)。輸出值的類型為字符型。例:?DOTC(DATE() 16/05/125. 字符轉(zhuǎn)換ASCII碼函數(shù) ASC (<字符表達式>) 【功能】該函數(shù)返回<字符表達式>中首字母的ASCII碼字符。輸出值的類型為數(shù)值型例:?ASC(“BOY”) 666ASCII碼轉(zhuǎn)換字符型函數(shù)CHR(<
45、;數(shù)值表達式>) 【功能】該函數(shù)把<數(shù)值表達式>的值轉(zhuǎn)換為相應的ASCII碼字符。輸出值的類型為字符型。例:?CHR(97) a7. 數(shù)值字符型轉(zhuǎn)換函數(shù) STR(<數(shù)值表達式1>,<數(shù)值表達式2> ,<數(shù)值表達式3>) 【功能】將<數(shù)值表達式1>轉(zhuǎn)換為字符型數(shù)據(jù), <數(shù)值表達式2>是轉(zhuǎn)換的長度,<數(shù)值表達式3>指定小數(shù)位數(shù)。輸出值的類型為字符型。例:?STR(234.56,6,1) 234.68字符數(shù)值型轉(zhuǎn)換函數(shù) VAL (<字符表達式>) 【功能】該函數(shù)將字符型數(shù)據(jù)轉(zhuǎn)換為數(shù)值型數(shù)據(jù)。輸出值的
46、類型為數(shù)值型。例:?VAL(“a123”) 0.00五字段處理函數(shù)1.字段數(shù)函數(shù)FCOUNT(<工作區(qū)號>/<別名>)【功能】該函數(shù)返回指定工作區(qū)中打開表的字段數(shù)。輸出值的類型為數(shù)值型。例:? FCOUNT(“XSCJ) 4打開的表文件中有4個字段2.字段名函數(shù)FIELD(<數(shù)值表達式>,<工作區(qū)號>/<別名>)【功能】該函數(shù)返回指定工作區(qū)中第<數(shù)值表達式>個字段的名字。輸出值的類型為字符型。例:? FIELD (2,2) 姓名2號工作區(qū)中打開表文件的第二個字段的字段名為“姓名”3.字段長度函數(shù)FSIZE(<字段名&
47、gt;<工作區(qū)號>/<別名>)【功能】該函數(shù)返回指定工作區(qū)中指定字段的大小。輸出值的類型為數(shù)值型。六記錄處理函數(shù)1表起始標識測試函數(shù) BOF (<工作區(qū)號> | <別名>) 【功能】測試表文件開始狀態(tài),并返回一個邏輯值。輸出值的類型為邏輯型。例:?BOF() .T.2表結(jié)束標志測試函數(shù)EOF(<工作區(qū)號> | <別名>) 【功能】該函數(shù)用來測試表文件結(jié)束狀態(tài),如果記錄指針指向變文件最后一天記錄之后,函數(shù)返回.T.,否則為.F. 。輸出值的類型為邏輯型。例:GO BOTTOM ?EOF() .F.3記錄數(shù)函數(shù) RECCOUN
48、T (<工作區(qū)號> | <別名>) 【功能】返回指定工作區(qū)中表文件記錄總數(shù)(包括已作刪除標記的記錄)。如果工作區(qū)中沒有打開表則返回0。輸出值的類型為數(shù)值型。例:? RECCOUNT() 94當前記錄號函數(shù)RECNO(<工作區(qū)號> | <別名>) 【功能】返回指定表中當前記錄號。輸出值的類型為數(shù)值型。例:GO TOP?RECNO()15記錄大小測試函數(shù) RECSIZE( <工作區(qū)號> | <別名> ) 【功能】返回指定工作區(qū)中表文件記錄長度。輸出值的類型為數(shù)值型。6.記錄邏輯刪除標志測試函數(shù) DELETED(<工作區(qū)號
49、> | <別名>) 【功能】若當前記錄已作刪除標記,該函數(shù)返回.T.,否則返回.F.。輸出值的類型為邏輯型。討論二 結(jié)構(gòu)化程序的三種基本控制結(jié)構(gòu)1.討論準備:根據(jù)討論的目的和討論內(nèi)容的要求,設(shè)計結(jié)構(gòu)化程序設(shè)計題庫并在討論課前發(fā)給學生進行小組研究學習,各小組由學生小組長負責記錄成員分工,編程討論學習情況等。2.討論目的:使學生理解結(jié)構(gòu)化程序設(shè)計的三種基本控制結(jié)構(gòu)順序、選擇和循環(huán)結(jié)構(gòu),通過大量結(jié)構(gòu)化程序設(shè)計練習熟悉三大基本結(jié)構(gòu)的特征及基本編程方法。通過編寫程序代碼及程序調(diào)試,驗證程序的正確性及程序算法優(yōu)劣,訓練分析問題解決問題能力。3.討論內(nèi)容:(1)實現(xiàn)選擇結(jié)構(gòu)的語句中,ife
50、ndif語句、do caseendcase語句的區(qū)別,并通過實例說明;(2)多分支選擇結(jié)構(gòu)用ifendif語句嵌套實現(xiàn)與用do caseendcase語句實現(xiàn)的區(qū)別,并通過實例說明;(3)實現(xiàn)循環(huán)結(jié)構(gòu)的語句中,do whileenddo語句、for語句和scanendscan語句的區(qū)別及其應用范圍,并通過實例說明;(4)結(jié)構(gòu)化程序設(shè)計編程實現(xiàn)。5.討論要求 結(jié)構(gòu)化程序設(shè)計題主要以填空或改錯、編程形式練習,在閱讀程序的基礎(chǔ)上理解程序算法。各小組協(xié)作完成練習并完成個人自主學習報告和小組活動記錄報告。要求:(1) 個人自主學習報告中記錄編寫的程序代碼和調(diào)試情況,針對每道結(jié)構(gòu)化程序設(shè)計題,同學可以按自
51、己的算法編寫代碼。(2) 小組活動記錄報告由各小組組長記錄任務(wù)分工及討論情況。并對成員參加討論情況評分。第1題要求:1、給定一個年份(從鍵盤輸入數(shù)值型數(shù)據(jù)),判斷它是否閏年。2、閏年的條件是:能被4整除但不能被100整除,或能被100整除且能被400整除。注意:程序中的錯誤行位于“*”行下,不能添加或刪除程序行。SET TALK OFFCLEAR*1*ACCEPT "Y=" TO Y*2*IF (Y%4 AND Y!%100) AND (Y%100 AND Y!%400) ? Y,"是閏年!"ELSE ? Y,"不是閏年!"ENDIF
52、SET TALK ON第2題已知:學生表結(jié)構(gòu)為:學號,姓名,性別,出生年月,簡歷,獎學金,照片要求:顯示“學生”表中的全部字段名注意:程序中的錯誤行位于“*”行下,不能添加或刪除程序行。SET TALK OFFCLEARUSE 學生*1*FOR N = 1 TO RECCOUNT() *2* FOUND(N) ENDFORUSESET TALK ON第3題要求:從鍵盤輸入一個數(shù)值(09),要求輸出其對應的中文大寫數(shù)字(零玖)。注意:僅在標記"&&"之前填寫所缺代碼,不能添加或刪除程序。SET TALK OFFCLEARC="零壹貳叁肆伍陸柒捌玖&q
53、uot;*1*ACCEPT "N=" TO N*2*? N,"->"+ STR(C,2*N-1,2)SET TALK ON第4題輸出給定的正實數(shù)值表達式的值中組成數(shù)碼的最大數(shù)碼和最小數(shù)碼(如,數(shù)值2345.105中最大數(shù)碼為5,而最小數(shù)碼為0。注意:僅在標記“&&”之前填寫所缺代碼,不能添加或刪除程序。SET TALK OFFCLEARINPUT "M=" TO MN=MDO WHILE &&_ 1N=N*10ENDDOSTORE &&_ 2 &&_ 3R= &&_ 4IF R>DD=RENDI
溫馨提示
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 餐飲行業(yè)員工勞動合同續(xù)簽及競業(yè)限制合同
- 居住小區(qū)24小時安保服務(wù)協(xié)議
- 企業(yè)團隊協(xié)作課件
- 烈士別墅拆除方案
- 餐飲企業(yè)員工勞動合同續(xù)簽與解除合同
- 高效環(huán)保廠房及配套設(shè)施轉(zhuǎn)讓及運營維護協(xié)議
- 地面養(yǎng)護實施方案
- 突發(fā)事件面試題及答案
- 泰州學院面試題及答案
- 油品類考試題及答案
- 黨課課件含講稿:《關(guān)于加強黨的作風建設(shè)論述摘編》輔導報告
- 國家開放大學行管??啤侗O(jiān)督學》期末紙質(zhì)考試總題庫2025春期版
- GB/T 3280-2015不銹鋼冷軋鋼板和鋼帶
- 高中物理選修 分子動理論
- 領(lǐng)軍人才選拔試題答案
- CNC數(shù)控車床操作指導書
- 管道施工主要質(zhì)量保證措施及通病防治措施
- 失火罪消防責任事故罪消防刑事案件移送移交報告
- 斯巴達勇士賽
- 住院醫(yī)師規(guī)范化培訓臨床小講課指南(2021年版)
- T∕CQAP 2002-2022 基于水泡性口炎病毒載體的新型冠狀病毒核酸檢測用陽性假病毒質(zhì)控品
評論
0/150
提交評論