VF程序設(shè)計復習資料36頁_第1頁
VF程序設(shè)計復習資料36頁_第2頁
VF程序設(shè)計復習資料36頁_第3頁
VF程序設(shè)計復習資料36頁_第4頁
VF程序設(shè)計復習資料36頁_第5頁
已閱讀5頁,還剩31頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、本復習資料內(nèi)所有參考答案皆屬于小小商店打印復印部所有,不得翻版低價出售06級別VF程序設(shè)計復習資料內(nèi)容:VF程序設(shè)計課后習題答案 歷年考試題(帶答案) 使用說明:在資料中,所有答案均為直接在題目中給出,“&&”符號后的內(nèi)容為說明,“*”后的內(nèi)容,為建立的文件。課后題答案主要給出考試重點內(nèi)容。另外,請同學們上機實踐以增強記憶。Visual FoxPro程序設(shè)計教程課后題答案說明:僅重點部分設(shè)置答案第一章 數(shù)據(jù)庫系統(tǒng)基礎(chǔ)知識(P17)2.什么是數(shù)據(jù)庫、數(shù)據(jù)庫管理系統(tǒng)和數(shù)據(jù)庫系統(tǒng)?答:數(shù)據(jù)庫是在數(shù)據(jù)管理系統(tǒng)的集中控制下,按一定的組織方式儲存起來的、相互關(guān)聯(lián)的數(shù)據(jù)集合.數(shù)據(jù)庫(Date

2、base,DB)是數(shù)據(jù)庫系統(tǒng)中按一定法則儲存在外存儲器中的大批數(shù)據(jù).數(shù)據(jù)庫管理系統(tǒng)(Datebase Management System,DBMS)是系統(tǒng)軟件,用來對數(shù)據(jù)進行同意的的控制和管理,從而有效減少數(shù)據(jù)冗余,實現(xiàn)數(shù)據(jù)共享,解決數(shù)據(jù)獨立性問題,并提供統(tǒng)一的安全性和并發(fā)控制功能.數(shù)據(jù)庫系統(tǒng)其實就是數(shù)據(jù)庫應用為基礎(chǔ)的計算機系統(tǒng),是把有關(guān)計算機硬件、軟件、數(shù)據(jù)和人員組合起來的擁護提供信息服務的系統(tǒng).5.實體之間的聯(lián)系有哪幾種,分別舉例說明.答:1對1聯(lián)系,例:一個人有一個身份證,一個身份證也只有一個人可以使用.1對多聯(lián)系,例:一個班主任可以帶很多學生,一個學生只能有一個班主任.多對多聯(lián)系,例:

3、一個人可以去任何酒吧中的任意一個,任意一個酒吧可以為任意多的人提供娛樂場地.6.數(shù)據(jù)庫有哪幾種常用的數(shù)據(jù)模型?Visual FoxPro屬于哪一類?答:層次模型,網(wǎng)絡(luò)模型,關(guān)系模型.Visual FoxPro屬于關(guān)系模型.8.關(guān)系數(shù)據(jù)庫管理系統(tǒng)的3種基本關(guān)系運算是什么?答:關(guān)系運算有3種方式:選擇、投影、聯(lián)接.第二章 操作基礎(chǔ)(P33)3. Visual FoxPro有幾種操作凡是?各有什么特點?答:菜單操作方式 特點:優(yōu)點是直觀易懂,擊鍵簡單(主要是鼠標單、雙擊),對于不熟悉Visual FoxPro命令、又沒有或不想花時間去學習它的最終用戶十分適合.不足是操作環(huán)節(jié)多,步驟繁瑣,因此速度慢,

4、效率低.命令操作方式 特點:輸入命令完成操作比使用菜單和對話框速度更快,效率高,系統(tǒng)菜單不可能包含所有的功能,有些操作只能通過命令窗口輸入;必須熟練掌握Visual FoxPro命令,才能談的上開發(fā)應用程序.程序工作方式 特點:為用戶提供更簡潔的界面,達到操作目的.第三章 數(shù)據(jù)及其運算(P55)2.字段變量與內(nèi)存變量有何區(qū)別?答:字段變量是隨表存取而存取,定義在表中的變量. 內(nèi)存變量是擁護在內(nèi)存中定義的,用來存放程序運行中的中間結(jié)果和最終結(jié)果的變量,是進行數(shù)據(jù)的傳遞和運算的變量.4.求下列表達式的值.(1)LEN(DTOC(DATE()輸出結(jié)果:8(2)STUFF("現(xiàn)代教育中心&q

5、uot;,5,0,LEFT("技術(shù)中心",4)輸出結(jié)果:現(xiàn)代技術(shù)教育中心(3)VARTYPE(08/23/03)輸出結(jié)果:N(4)SPCACE(5)-SPACE(5)輸出結(jié)果:空白(5)"PRO"$"FoxPro" AND "100">"90"輸出結(jié)果:.F.5.針對學生表,寫出下列條件:先制作學生表:學號姓名性別年齡是否少數(shù)民族出生日期入學成績001王*男20否1986/09/20560002李*女19否1987/06/30590003張*男20是1986/02/03610004趙*女2

6、2是1985/12/17620(1)入學成績大于600分的學生;LIST FOR 入學成績>600(2)年齡大于18歲但是小于25歲的學生; LIST FOR 年齡>18 AND 年齡<25(3)少數(shù)民族的男生 LIST FOR 是否少數(shù)民族="是" AND 性別="男"(4)在1985年1月1日至1983年12月31日之間出生的學生; LIST FOR YEAR(DATE()-YEAR(出生日期)>20 AND YEAR(DATE()-YEAR(出生;日期)<23 &&以2007年為例(5)入學成績在580

7、分以上的漢族女生. LIST FOR 入學成績>580 AND 是否少數(shù)民族="否" AND 性別="女"6.寫出下列表達式.(1)求實數(shù)x的小數(shù)部分;x=3.1415926535897932384626? x-INT(x)(2)求自然數(shù)m的十位數(shù)字; m=125 n=INT(m) x=STR(&n) ? RIGHT(&x,2)(3)將實數(shù)x保留兩位小數(shù),第三位小數(shù)進行四舍五入處理; x=3.1415926535897932384626 ? ROUND(x*3,2)(4)將c中的小寫字母轉(zhuǎn)換成相應的大寫字母;CH2="c&

8、quot;CH1=CHR(ASC(ch2)-ASC("a")-ASC("A") ? CH1(5)判斷n是否偶數(shù). ? MOD(n,2), "如果結(jié)果為1,則n是奇數(shù),如果為0,則n是偶數(shù)"第四章 表的基本操作(P86)13.就學生表,寫出實現(xiàn)下列操作的命令.(1)顯示第5號記錄; USE STUDENTS.DBFGO 5DISPLAY(2)顯示第5號至10號之間的全部記錄; USE STUDENTS.DBFGO 5 LIST NEXT 6(3)連續(xù)列出1980年以后出生的學生的姓名與出生年月; USE STUDENTS.DBFLIST

9、 姓名,出生年月 FOR YEAR(DATE()-YEAR(出生年月)<27&&以07年為當前時間.(4)顯示在1985年1月1日至1983年12月31日之間出生的學生記錄; USE STUDENTS.DBF LIST 姓名,出生年月 FOR YEAR(DATE()-YEAR(出生年月)>22 AND; YEAR(DATE()-YEAR(出生年月)<24 &&以07年為當前時間(5)在表的頂部增加一個新記錄 USE STUDENTS.DBF GO TOP INSERT BLANK BEFORE(6)修改最后一個記錄 USE STUDENTS.D

10、BF GO BOTT BROW(7)將16歲以下的少數(shù)民族學生成績提高20分; USE STUDENTS.DBF REPLACE ALL 入學成績 WITH 入學成績+20 FOR 是否少數(shù)民族="是" AND YEAR(DATE()-YEAR(出生年月)<16(8)將學生表原樣復制為xsda.dbf,并物理刪除xsda.dbf中記錄號為偶數(shù)的記錄; USE STUDENTS.DBF COPY TO xsda.dbf USE xsda DELETE FOR MOD(RECNO(),2)=0 PACK(9)顯示入學成績前5名的記錄;USE STUDENTS.DBF SO

11、RT ON 入學成績/D TO CJ.dbf USE CJ.dbf LIST NEXT 5(10)統(tǒng)計1985年出生學生的人數(shù),并把它存在變量number中; USE STUDENTS.DBF COUNT FOR YEAR(DATE()-YEAR(出生年月)=22 TO number(11)分別求男女學生的平均年齡; USE STUDENTS.DBF AVER YEAR(DATE()-YEAR(出生年月) FOR 性別="男" TO x AVER YEAR(DATE()-YEAR(出生年月) FOR 性別="女" TO y ? "男生的平均年齡

12、為:"+STR(x,3)+"歲","女生的平均年齡為:"+STR(y,3)+;"歲"(12)查找并顯示第一位少數(shù)民族學生; USE STUDENTS.DBF INDEX ON 少數(shù)民族否 TO sy1 FOR 少數(shù)民族否="是" GO 1 DISPLAY(13)建立一個結(jié)構(gòu)符合索引文件,其中包括兩個索引:記錄以學號降序排列;記錄按出生年月升序排列; USE STUDENTS.DBF INDEX ON -學號+出生年月 TAG sy2(14)查詢年齡最小和最大的學生; USE STUDENTS.DBF LI

13、ST FOR MIN(出生年月) LIST FOR MAX(出生年月)(15)按性別對入學成績進行匯總. USE STUDENTS.DBF INDEX ON 性別 TAG sy3 TOTAL ON 性別 TO HZ FIELDS 入學成績第六章 SQL語言的應用(P114)2利用第5章習題 中給出的訂貨管理數(shù)據(jù)庫和記錄實例,用SQL語句完成下列操作:(1)列出在北京的供應商名稱; USE 供應商.dbfLIST FOR 地址=”北京”(2)列出發(fā)給供應商S6的訂購單號; USE 訂購單.dbf LIST 訂購單號 FOR 供應商號=”S6”(3)列出職工E6發(fā)給供應商S6的供應商信息; USE

14、 訂購單.dbf LIST 訂購單號,訂購日期 FOR 職工號=”E6” AND 供應商號=”S6”(4)列出向供應商S3發(fā)過訂購單的職工的職工號和倉庫號; SELECT a.職工號,b.倉庫號 FROM 職工b,訂購單a WHERE ;a.職工號=b.職工號 AND b.供應商號=”S3”(5)列出和職工E1、E3都有聯(lián)系的北京的供應商信息; SELECT a.供應商號,b.供應商名,地址 FROM 訂購單a,供應商b WHERE ;a.供應商號=b.供應商號 AND a.職工號=”E1”,a.職工號=”E3”(6)列出與工資在1220元以下的職工沒有聯(lián)系的供應商的名稱; SELECT a.

15、供應商名 FROM 供應商a,職工b,訂購單c WHERE ;b.職工號=c.職工號,c.供應商號=a.供應商號 AND b.工資<1220(7)列出向供應商S4發(fā)出訂購單的倉庫所在的城市; SELECT a.城市 FROM 倉庫a,職工b,訂購單c WHERE a.倉庫號=b.倉庫號,;b.職工號=c.職工號 AND c.供應商號=”S4”(8)列出在上海工作并且向供應商S6發(fā)出了訂購單的職工號; SELECT a.職工號 FROM 職工a,倉庫b,訂購單c WHERE a.倉庫號=b.倉庫號,;a.職工號=c.職工號 AND b.城市=”上?!?c.供應商號=”S6”(9)列出由工資

16、多于1230元的職工向北京的供應商發(fā)出的訂購單號; SELECT a.訂購單號 FROM 訂購單a,職工b,供應商c WHERE ;a.職工號=b.職工號,a.供應商號=c.供應商號 AND b.工資>1230,;c.地址=”北京”(10)列出倉庫的個數(shù); SELECT 倉庫號,COUNT(倉庫號) FROM 倉庫.dbf(11)列出有最大面積的倉庫信息; SELECT a.倉庫號,城市,面積 FROM 倉庫a ORDER BY 面積 GO 1 DISPLAY(12)列出所有倉庫的平均面積; SELECT AVG(面積) AS “所有倉庫的平均面積” FROM 倉庫.dbf(13)列出每

17、個倉庫中工資多于1220元的職工個數(shù); SELECT 職工號,COUNT(職工號) FROM 職工.dbf GROUP BY 倉庫號 WHERE ;工資>1220(14)列出和面積最小的倉庫有聯(lián)系的供應商的個數(shù);SELECT a.職工號,COUNT(a.供應商號) FROM 訂購單a,職工b,倉庫c WHERE ;a.職工號=b.職工號,b.倉庫號=c.倉庫號 AND MIN(c.面積)(15)列出工資低于本倉庫平均工資的職工信息. SELECT a.職工號,b.倉庫號,城市,c.供應商號,訂購單號,訂購日期 FROM ;職工a,倉庫b,訂購單c WHERE a.倉庫號=b.倉庫號,a.

18、職工號=c.職工號 ; AND a.工資<AVG(a.工資)第九章 結(jié)構(gòu)化程序設(shè)計1.寫出下列程序的執(zhí)行結(jié)果.(1)CLEAR SET TALK OFF x=10 y=-3 FOR n=29+x TO x STEP y ENDFOR ? n RETURN執(zhí)行結(jié)果:9(2)主程序:t1.prg SET TALK OFFSTORE ABTO k1,k2DO t2? k1+k2RETURN子程序t2.prgPRIVATE k1k1=k2+”250”? k1RETURN執(zhí)行結(jié)果: AB250 ABAB (3)SET TALK OFFCLEARSTORE 1 TO xSTORE 20 TO yDO

19、 WHILE x<=y IF INT(x/2)<>x/2 x=1+x2 y=y+1 LOOP ELSE x=x+1 ENDIFENDDO? x,ySET TALK ONRETURN執(zhí)行結(jié)果: 122.00 23 (4)主程序:z.prg SET TALK OFF STORE 2 TO x1,x2,x3 x1=x1+1 DO z1 ?x1+x2+x3 RETURN 子程序:z1.prg x2=x2+1 DO z2 x1=x1+1 RETURN 子程序:z2.prg x3=x3+1RETURN TO MASTER執(zhí)行結(jié)果: 9 (5)SET TALK OFFx=15y=7DO s

20、ub WITH x,(y)?x,yRETURNPROCECURE subPARAMETERS a,ba=a+bb=a-bRETURN執(zhí)行結(jié)果: 22 7 (6)SET TALK OFFx=9y=13z=fu(x,y) ? z RETURN FUNCTION fu PARAMETERS a,b a=a*b RETURN(a)執(zhí)行結(jié)果: 117 3.輸入學生成績,若成績大雨80分,則輸出”優(yōu)良”,成績小于60分,則輸出”不及格”,否則輸出”中等”. 參考答案: * CJ.prg SET TALK OFF USE STUDENTS.dbf name=space(10) 10,5 SAY”請輸入學生姓

21、名并查看其成績:” GET name READ LOCATE FOR 學生姓名=name IF .NOT.EOF() DO CASE CASE 成績>=80 ? “該生成績?yōu)閮?yōu)秀” CASE 成績>=60 AND 成績<80 ? “該生成績?yōu)橹械取?OTHERWISE ? “該生成績?yōu)椴患案瘛?ENDCASE ELSE ? ”無此學生”ENDIFSET TALK ONRETURN4.在學生表中,分別統(tǒng)計漢族學生和少數(shù)民族學生的人數(shù). 參考答案: * TJ.prg CLEARSTORE 0 TO x,yUSE STUDENTS.dbfSCAN IF 少數(shù)民族否=”是” x=x+

22、1 ELSE y=y+1 ENDIFENDSCAN? “少數(shù)民族的學生有”+STR(x,3)+”人”? “漢族的學生有”+STR(y,3)+”人”USERETURN2003-2004學年第2學期期末考試試題(A卷)foxpro程序設(shè)計基礎(chǔ)試題使用班級:03級非計算機專業(yè)本科fox班總分得分一、單項選擇題(共20分)每小題2分1.FOXPRO是一種( C )數(shù)據(jù)庫管理系統(tǒng)。A)層次型 B)網(wǎng)狀型 C)關(guān)系型 D)面向?qū)ο笮?.將數(shù)據(jù)庫文件的某一字段變量改名,以下命令正確的是( D )A)Modify B)Use C)Create D)Modify structure3. 在無索引的情況下打開數(shù)據(jù)

23、庫文件,立即使用Display 命令,其功能是( A );A)顯示第一條記錄 B)顯示全部記錄 C)顯示最后一條記錄 D)顯示從當前記錄開始到表尾的所有記錄 4. 以下表達式的結(jié)果為數(shù)值型的是( D );A) "牛"$ "牛群" B) "wish you" "success" C) 98/6/14+15 D) 98/06/14-98/11/125. 關(guān)于索引,下列說法正確的是( B )。A) 通過建立索引可以改變記錄在庫中的實際存儲順序 B) 可以對多個字段的表達式建立索引 C) 一個數(shù)據(jù)庫只能建立一個索引D) 建

24、立索引以后,庫中的記錄就會按照索引規(guī)定的順序重新排列 6. 關(guān)于刪除記錄的說法,不正確的是( B )。A) 在BROWSE窗口中,對于要刪除的記錄,可以單擊每個記錄左邊的框來標記該記錄要被刪除B) 對于添加了刪除標記的紀錄,它們?nèi)匀淮嬖谟诖疟P上,但是不能再恢復原來的狀態(tài)C) 為了避免錯誤刪除有用信息,foxpro把庫中刪除記錄的操作分為兩步:先對記錄作刪除標記,然后再移去要刪除的記錄。D) 刪除當前庫文件中所有記錄時,通常需要用戶進一步確認7. 下述程序段的運行結(jié)果為( C )。 ch="abcdef" do while len(ch)>0 ? right(ch,2)

25、 ch=left(ch,len(ch)-2) enddoA) abcdef B) fedcba C) efcdab D) badcfe 8.設(shè)職工數(shù)據(jù)庫文件已經(jīng)打開,其中有工資字段,要把指針定位在第一個工資大于1000元的記錄上,應使用命令( C )。A) FIND FOR 工資>1000 B) SEEK 工資>1000C) LOCATE FOR 工資>1000 D) FIND 工資>10009.以下程序段共執(zhí)行( D)次循環(huán)k=2.5DO WHILE k<=4 ? kk=k+0.5ENDDOA) 1 B) 2 C) 3 D) 410. 要為當前表所有職工增加10

26、0元工資應該使用( D )命令 。A) CHANGE 工資 WITH 工資+100B) REPLACE 工資 WITH 工資+100C) CHANGE ALL 工資 WITH 工資+100D) REPLACE ALL 工資 WITH 工資+100得分二、填空題(共20分)每空2分1.計算機的中央處理器由運算器和 控制器 構(gòu)成。2.計算機網(wǎng)絡(luò)按通信距離來劃分,通??煞譃開 _廣域 網(wǎng)和_ 局域_ 網(wǎng)。3.結(jié)構(gòu)化程序設(shè)計中的三種基本結(jié)構(gòu)單元是順序結(jié)構(gòu)、_選擇_結(jié)構(gòu)和_循環(huán)_結(jié)構(gòu) 。4.FoxPro系統(tǒng)的三種工作方式有_菜單操作方式_、_命令操作方式_和選單操作方式。5.十進制數(shù)23,對應的二進制數(shù)

27、是: 10110 。十六進制數(shù)F6對應的十進制數(shù)是: 262 。6.foxpro庫文件的備注信息集中存放在一個與庫文件同名但擴展名為: .dct 的備注文件中。7.表達式"ab">"bb" OR "ac"<"ad" 的運算結(jié)果為: .T. 。8.執(zhí)行命令: ?AT("成績","平時成績")顯示的結(jié)果是 _ 5 _。9.能隨著庫文件的打開而自動打開的索引為: 結(jié)構(gòu)復合索引文件 。10.按照不同庫文件的兩個字段表達式值相等來關(guān)聯(lián)的原則,父文件多條記錄對應子文件中一條記

28、錄的關(guān)聯(lián)稱為 多對一 關(guān)系,父文件一條記錄對應子文件中多條記錄的關(guān)聯(lián)稱為 一對多 關(guān)系。得分三、程序理解題(共20分)1 讀程序,寫出運行結(jié)果(8分)主程序 main.prg 子程序 proc.prgpublic m public nset talk off private xm=1 m=m+1x=5 n=2y=2 x=3do proc y=4? "main中: ",m,n,x,y ? "proc中: ",m,n,x,yset talk on returnreturn 運行結(jié)果為: proc中: 2 2 3 4 main中: 2 2 5 4 2程序填空(

29、每空2分,共12分)(1)*本程序用來求組合modify command cmnset talk offinput "輸入m" to minput "輸入n" to nc= jc(m)/ (jc(n)* jc(m-n) ) ?cset talk onreturnfunction jc PARAMETER jcn f=1 for k=1 to jcn _f=f*k_ endfor return f (2)*本程序用來統(tǒng)計學生數(shù)據(jù)庫stud.dbf中成績score大于80分的學生人數(shù) SET TALK OFFCLEARSELECT 0 USE stud.db

30、f S= 0DO WHILE .NOT.EOF() IF SCORE >=80S=S+1ENDIF CONTINUE ENDDOUSE? "成績大于等于80分的學生共有"+STR(S)+ "人"USE SET TALK ON得分四、編程題(每小題10分,共20分)1. (10分)輸入一個數(shù),判斷它能否被3,5整除,并輸出一下信息之一:(1) 能同時被3,5整除;(2) 只能被3整除;(3) 只能被5整除;(4) 既不能被3整除也不被5整除參考答案:*1.prgCLEARINPUT 請輸入數(shù): TO num1IF num1<>0DO CA

31、SE CASE MOD(num1,15)=0 ? "該數(shù)能同時被3和5整除" CASE MOD(num1,3)=0 AND MOD(num1,5)<>0 ? "該數(shù)只能被3整除" CASE MOD(num1,5)=0 AND MOD(num1,3)<>0 ? "該數(shù)只能被5整除" OTHERWISE ? "該數(shù)既不能被3整除也不能被5整除"ENDCASEENDIF 2. (10分)編程序求100到1000之間的所有奇數(shù)之和。參考答案:* 求和.prgSET TALK OFFSTORE 100

32、 TO xSTORE 0 TO yDO WHILE .T.x=x+1DO CASE CASE INT(x/2)=x/2 LOOPCASE x>=1000EXITOTHERWISEy=y+xENDCASEENDDO? "100到1000之間的奇數(shù)和為: ",ySET TALK ONRETURN&&執(zhí)行結(jié)果為: 100到1000之間的奇數(shù)和為:247500得分五、應用題(20分)數(shù)據(jù)庫文件ZGMC.DBF,包含6個字段,分別為SNO(編號)、SNAME(姓名)、SSEX(性別)、ZC(職稱)、GZ(工資)、CSRQ(出生日期)。如下二維表所示: SNOSN

33、AMESSEXZCGZCSRQ9201宋玲剛.F.技術(shù)員801.5078/07/119205郭小勇.T.工程師1133.0070/12/159215王佳鵬.F.高工1560.5065/09/239208張一凡.T.工人1015.0060/08/089206李春媛.F.工程師1008.0073/01/01根據(jù)下列要求寫出命令或程序:1) 顯示第2條記錄(2分)參考答案:USE ZGMC.DBFGO 2DISP2)顯示工資高于1000元全部女職工的姓名、職稱與出生日期(2分)參考答案:LIST SNAME,ZC,CSRQ FOR GZ>=1000 AND SSEX=.F.3)在第1條記錄前插

34、入新記錄9209 李玉 .F. 技術(shù)員 1003.80 73/05/30并顯示結(jié)果;(3分)參考答案: GO 1 INSERT BLANK BEFORE REPLACE SNO WITH "9209" UPDATE ZGMC SET SNAME="李玉",SSEX=.F.,ZC="技術(shù)員",GZ=1003.80; CSQR=1973/05/30 WHERE SNO="9209" LIST4)刪除1965年以前出生的職稱為工人的記錄,并顯示結(jié)果;(2分)參考答案:DELETE FOR YEAR(DATE()-YEAR

35、(CSRQ)>42 &&以07年為當前時間進行計算 PACK LIST5)統(tǒng)計工程師的平均工資,并顯示統(tǒng)計結(jié)果;(2分)參考答案:CALCULATE AVG(GZ) TO x ? x 6)將1970年1月1日及以后出生的工程師復制為庫文件gcs.dbf (2分)參考答案: COPY TO gcs.dbf FOR YEAR(DATE()-YEAR(CSRQ)>37 &&以07年為當;前時間進行計算 7)對所有工資超過1000元的男職工按出生日期降序排序,并要求新文件中只包含編號、姓名、性別、工資字段;(2分) 參考答案: SORT ON CSRQ/D

36、TO new FIELDS SNO,SNAME,SSEX,GZ FOR GZ>10008)為ZGMC.DBF建立索引文件,記錄以職稱降序排序,職稱相同時按出生日期降序排列(3分)參考答案: INDEX ON -ZC-CSRQ TAG sy1 9)按索引查詢方式查詢1970年出生的女職工(2分)參考答案: SET EXACT OFF &&關(guān)閉精確查詢,進行模糊查找INDEX ON CSRQ TAG sy2D=1970-*-*SEEK DDISPSKIP2003-2004學年第2學期期末考試試題(B卷)foxpro程序設(shè)計基礎(chǔ)試題使用班級:03級非計算機專業(yè)本科fox班總分得

37、分一、單項選擇題(共20分)每小題2分1FOXPRO是一種(C )數(shù)據(jù)庫管理系統(tǒng)。A. 層次型 B .網(wǎng)狀型 C .關(guān)系型 D. 面向?qū)ο笮?在學生基本情況表STU.DBF中,"性別"字段為邏輯型,用.T.代表女同學。為了找到第一位姓李的男同學,以下命令正確的是( C );      ASeek 李 and 性別      BFind 李 .and. 男同學     C. Locate for 李 $ 姓名 and not 性別

38、0;    D. Locate for 李 $ 姓名 .and. 男同學 3. 對已經(jīng)打開的學生成績表文件STUCDBF先按字符型字段"性別"升序索引,再按數(shù)值型字段"總分"的降序索引,應當使用的命令是( B )AINDEX ON 性別+總分BINDEX ON 性別-總分CINDEX ON 性別+STR(-總分,3)DINDEX ON 性別+STR(100-總分)4以下表達式的結(jié)果為數(shù)值型的是( D );A. "牛"$ "牛群" B. "wish you" &quo

39、t;success" C. 98/6/14+15 D. 98/06/14-98/11/125. 在語句ACCEPT "姓名: " TO XM中,XM的類型應該是( C );      A. 邏輯內(nèi)存變量            B. 數(shù)值型字段變量      C. 字符型字段變量       

40、;   D. 字符型內(nèi)存變量6. 下面關(guān)于FoxPro數(shù)組的敘述中,錯誤的是 ( )A. 用DIMENSION和DECLARE都可以定義數(shù)組B. FoxPro只支持一維數(shù)組和二維數(shù)組C. 一個數(shù)組中各個數(shù)組元素必須是同一種數(shù)據(jù)類型D. 新定義數(shù)組的各個數(shù)組元素初值為.F.7. 只顯示當前記錄的命令是_C_。A. LISTB. LIST ALLC. DISPLAYD. DISPLAY ALL8. 有如下命令序列 X=1 Y=2 Z=3 ?Z=X+Y執(zhí)行最后一條命令后,顯示的結(jié)果應該是_A_。A. .T. B. .F. C. 3D. X+Y 9. 設(shè)有數(shù)據(jù)庫FILE.DBF,執(zhí)

41、行如下命令序列 SET DELETED OFF USE FILE LIST Recoed# 商品名 金額 1 洗衣機 3100.00 2 電冰箱 2300.00 3 21彩電 1800.00 4 空調(diào)機 4100.00 GO 3 DELETE GO BOTTOM INSERT BLANK REPLACE 商品名WITH "34寸彩電", 金額 WITH 6000 SUM 金額 TO S當前S的值應該是_B_。A. 11300B. 17300C. 11400D. 1550010. 在FoxBASE中,命令X=Y=3的功能是_D_。A. 判斷Y是否等于3,并將判斷結(jié)果保存到X中

42、B. 判斷X是否等于Y,如果等,將3賦值給Y,否則Y保持原來的值不變C. 判斷X和Y是否都等于3D. 將3賦值給Y,然后再賦值給X,使X和Y的值都為3得分二、填空題(共20分)每空2分1. 數(shù)據(jù)庫的英文縮寫為 DB ,數(shù)據(jù)庫系統(tǒng)的英文縮寫為 DBS ,數(shù)據(jù)庫管理的系統(tǒng)英文縮寫為 DBMS 。2. 數(shù)據(jù)庫有三種類型分別為 層次型 、 網(wǎng)狀型 、 關(guān)系型 。3. 表達式"103">"7"的值為 .F. ,"abc"+"abc"的值為 abcabc 。4. 命令?TYPE("12/27/95")

43、的輸出值是_ N _。5. 在數(shù)據(jù)庫文件中,要在某記錄打上刪除標記,應使用命令_DELETE _。6. 在數(shù)據(jù)表中,用于存放圖像、聲音等多媒體對象的數(shù)據(jù)類型是 。7. 程序設(shè)計的三種基本結(jié)構(gòu)是 順序結(jié)構(gòu) 、 選擇結(jié)構(gòu) 、 循環(huán)結(jié)構(gòu) 。8. 執(zhí)行以下命令序列m=len("119")?m=m+1 的顯示結(jié)果是 .F. 。9. 在Foxpro 系統(tǒng)中有兩條語句可以改變循環(huán)體的執(zhí)行控制, 在DO WHILE 循環(huán)體內(nèi), 語句 LOOP 使控制轉(zhuǎn)移到循環(huán)的開始, 語句EXIT使控制轉(zhuǎn)移到循環(huán)體外, 跳轉(zhuǎn)到該循環(huán)結(jié)構(gòu)后的第一個可執(zhí)行語句。10. 表達式"ST"$&q

44、uot;STRING"和表達式"SR"$"STRING"的值分別是 .T. 、 .F. 。得分三、程序理解題(共20分)1 讀程序,寫出運行結(jié)果(8分) clear i=1 stra="" do while i<=5 stra=stra+"*" i=i+1 enddo ?stra strb= "Wish you success! " stra=stra+strb ?strb ?stra return 運行結(jié)果為: * Wish you success! *Wish you suc

45、cess! 2程序填空(每空2分,共12分)(1)下面程序的功能是完成查詢,系統(tǒng)要求用戶輸入書名,然后從圖書管理表(TSB.DBF)中查詢給定書目的信息,要求:若用戶沒有輸入書名,系統(tǒng)要求用戶重新輸入,用戶輸入字符串"000",則結(jié)束查詢。 USE TSB DO WHILE .T. ACCEPT "請輸入書名:" TO SM IF LEN(ALLTRIM(SM)=0 LOOP ENDIF IF ALLTRIM(SM)= "000" EXIT ENDIF LOCATE ALL FOR 書名ALLTRIM(SM) IF FOUND() DO WHILE .NOT. EOF() DISPLAY SKIP ENDDO ELSE ? "查無此書" ENDIF ENDDO RETURN(2)輸入10個分數(shù)(0-100以內(nèi))的值,輸出其所屬等級(>90:優(yōu),80-90:良,70-80:中,60-70:及,<60:不及)。 I

溫馨提示

  • 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

提交評論