2002年(秋)Visual FoxPro 二級(jí)考試上機(jī)試卷(VFP01)
(本試卷上機(jī)考試時(shí)間為70分鐘)
說(shuō)明:1.考試語(yǔ)言環(huán)境為Visual FoxPro 5.0/6.0 2. 運(yùn)行考試軟盤A中的“上機(jī)考試”應(yīng)用程序文件以輸入考生的準(zhǔn)考證號(hào)、姓名、試卷代號(hào)。 3. 啟動(dòng)VFP系統(tǒng)后,首先在命令窗口中執(zhí)行命令: set default to A: 以設(shè)置默認(rèn)的工作目錄,然后再開始作題。 |
一、項(xiàng)目、數(shù)據(jù)庫(kù)和表操作(12分)
打開軟盤根目錄下的項(xiàng)目文件TEST,在該項(xiàng)目文件中已有一數(shù)據(jù)庫(kù)SJK. 1.按如下要求修改sjk中學(xué)生(xs)表的結(jié)構(gòu):
(1)將性別(xb)字段的標(biāo)題設(shè)置為“性別”,默認(rèn)值設(shè)置為“男”;
(2) 設(shè)置xb字段的有效性(驗(yàn)證)規(guī)則,要求性別必須為“男”或“女”; (3) 設(shè)置xb字段的有效性(驗(yàn)證)信息為:“性別必須為男或女”; (4) 創(chuàng)建一個(gè)普通索引xc,要求先按xb字段排序,性別相同的再按出身日期(csrq)字段排序; (5) 為學(xué)號(hào)(xh)字段設(shè)置輸入掩碼:接受8個(gè)字節(jié)的字符,且只接受數(shù)字。 2. 把軟盤根目錄中的表文件GZB.DBF添加為TEST項(xiàng)目中的自由表,并為其添加編輯說(shuō)明為“教師工資表”。 3. 修改GZB表中所有記錄的住房補(bǔ)貼(zfbt)字段的值,規(guī)定為:1998年(含1998年)以后參加工作的教師(注:gzrq字段為工作日期),其住房補(bǔ)貼為基本工資(jbgz)的19%,而其他教師沒有住房補(bǔ)貼。 4. 為XS表設(shè)置刪除觸發(fā)器:不允許刪除。 5. XS表已存在主索引xsxh,索引表達(dá)式為xh,CJ表已存在普通索引cjxh,索引表達(dá)式為xh。以XS表為主表,CJ表為子表按xh建立永久關(guān)系,并設(shè)置XS表和CJ表之間的參照完整性:更新級(jí)聯(lián)。
二、設(shè)計(jì)查詢(8分) 在TEST項(xiàng)目中已存在查詢chaxun,且在SJK 中包含一個(gè)名為JSST的視圖,該視圖中包含教師的各種基本信息,其中含有職稱代號(hào)(zcdh)、職稱(zc)、出生日期(csrq)和教師所在的系代號(hào)(xdh)等字段,另外在系名(XIM)表中含有系名字段(ximing)。按如下要求修改查詢: 基于JSST視圖和XIM表查詢每個(gè)系各種職稱的人數(shù),平均年齡。要求輸出字段為:xdh、ximing、zc、人數(shù)、平均年齡,查詢結(jié)果按xdh的升序排序。
三.設(shè)計(jì)菜單(5分) TEST項(xiàng)目中已存在菜單menu,其中已定義了“文件”菜單欄及其中的“恢復(fù)系統(tǒng)菜單”項(xiàng)。按如下要求設(shè)計(jì)菜單,完成后的運(yùn)行效果如圖1所示。

1. 為“文件”菜單設(shè)置熱鍵“ALT+F”; 2. 在“文件”菜單中創(chuàng)建“打開”菜單項(xiàng),為“打開”菜單項(xiàng)設(shè)置快捷鍵“CTRL+O”; 3. 在“打開”和“恢復(fù)系統(tǒng)菜單”菜單項(xiàng)之間插入分組線; 4. 為“打開”菜單項(xiàng)創(chuàng)建子菜單,子菜單中包含“項(xiàng)目”、“數(shù)據(jù)庫(kù)”和“表”菜單項(xiàng); 5. 創(chuàng)建“程序”菜單。
四、設(shè)計(jì)表單(10分) TEST項(xiàng)目中已存在表單formA,功能是查看各系科教師名單,界面如圖2所示。按如下要求修改表單,完成后表單的運(yùn)行界面如圖3所示。 1. 將表單寬度增加到324,標(biāo)題改為“系科教師名單”; 2. 刪除表格的xdh列,并將表格的寬度和高度縮小到158和100、左邊距改為156、僅顯示垂直滾動(dòng)條; 3. 修改列表框:寬度增加到140,增加一列,以顯示系科代號(hào)和系名兩列; 4. 在表單中添加兩個(gè)控件:標(biāo)簽控件Label3和文本框控件txtRS,將標(biāo)簽的標(biāo)題設(shè)置為“人數(shù):”,將設(shè)置文本框?yàn)椋哼吙驑邮綖闊o(wú)邊框、背景樣式為透明; 5. 已知系科列表框的行數(shù)據(jù)源是系名(XIM),表修改列表框的InterActiveChange事件代碼,使標(biāo)簽Label2能動(dòng)態(tài)顯示:“xx院系教師名單:”,使添加的文本框能動(dòng)態(tài)顯示當(dāng)前系科的人數(shù)。(提示:系科名從XIM表的ximing字段取得)
五、程序改錯(cuò)(5分) 下列程序的功能是統(tǒng)計(jì)所有的“水仙花數(shù)”的個(gè)數(shù),(“水仙花數(shù)”是指一個(gè)三位數(shù),其各位數(shù)字立方和等于該數(shù)本身,例如:153=13+53+33)。要求: (1) 項(xiàng)目中有一個(gè)程序文件Pcode,將下列程序輸入到其中并進(jìn)行修改; (2) 在修改程序時(shí),不允許修改程序的總體框架和算法,不允許增加或減少語(yǔ)句數(shù)目。
nCount=1 FOR n=100 TO 999 n1=VAL(SUBS(STR(n,3),3,1)) n2=VAL(SUBS(STR(n,3),2,1)) n3=VAL(SUBS(STR(n,3),1,1)) IF n=n1^3+n2^3+n3^3 nCount=nCount+1 ENDIF ENDFOR WAIT WINDOWS’“水仙花數(shù)”的個(gè)數(shù)為’+nCount
|