2002年(春)江蘇省等級(jí)考試上機(jī)試卷 二級(jí) Visual FoxPro (VFP04)
(本試卷上機(jī)考試時(shí)間為70分鐘)
說(shuō)明:1.考試語(yǔ)言環(huán)境為Visual FoxPro 5.0/6.0 2.運(yùn)行考試軟盤(pá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)的工作目錄,然后再開(kāi)始作題。 |
一、項(xiàng)目、數(shù)據(jù)庫(kù)和表操作
打開(kāi)軟盤(pán)根目錄中的項(xiàng)目文件TESTD,在該項(xiàng)目中已有一數(shù)據(jù)庫(kù)SJK。 1.按如下要求修改SJK中CJ表(成績(jī))的結(jié)構(gòu): (1)設(shè)置xh字段的標(biāo)題為“學(xué)號(hào)”,默認(rèn)值為“010”; (2)修改cj字段(成績(jī))寬度,使得該字段僅能容納2位整; (3)設(shè)置cj字段(成績(jī))的有效性規(guī)則及提示信息:成績(jī)應(yīng)在0至99之間(包含0和99): (4)創(chuàng)建普通索引kccj,要求先按kcdh排序,如果kcdh相同,再按cj排序,設(shè)置索引的過(guò)濾條件為cj低于60。 :.將軟盤(pán)根目錄中的表文件CJB.DBF添加為T(mén)ESTD項(xiàng)目中的自由表。 3.修改CJB的表結(jié)構(gòu),增加一個(gè)寬度為1的數(shù)值字段cj5,用來(lái)填入5分制成績(jī),用你認(rèn)為最快的方法根據(jù)cj字段的值在cj5字段中填入數(shù)據(jù)。假定百分制到5分制的轉(zhuǎn)換規(guī)則如下:100分對(duì)應(yīng)5分、99~80之間對(duì)應(yīng)4分、79~60之間對(duì)應(yīng)3分、59~40之間對(duì)應(yīng)2分、其余成績(jī)對(duì)應(yīng)1分。 4.在SJK的JS表和RK表之間設(shè)置參照完整性:更新級(jí)聯(lián)。
二、設(shè)計(jì)查詢(xún) 1.在TESTD項(xiàng)目中已存在查詢(xún)chaxuna,數(shù)據(jù)庫(kù)SJK中含有JS表(教師),且JS表中含有csrq(出生日期)字段,假設(shè)教師的工齡都是連續(xù)計(jì)算。按如下要求設(shè)計(jì)查詢(xún): 依據(jù)g1(工齡)字段查詢(xún)各教師參加工作時(shí)的年份和年齡,要求輸出字段為:gh,xm,ximing,gl, 年份,年齡。查詢(xún)結(jié)果按工齡降序排序,工齡相同者再年齡的降序排序。 2.在TESTD項(xiàng)日中己存在查詢(xún)chaxunb,按如下要求設(shè)計(jì)該查詢(xún): 已知SJK數(shù)據(jù)庫(kù)包含JS表(教師)和視圖RKKC(包含任課信息和課程信息),RKKC視圖中kss字段的含義為“每周課時(shí)數(shù)”;bxk字段表示是否是必修課,T表示是必修課。假定必修課一學(xué)期上20周,選修課上18周,且假定所有的任課都是在同一學(xué)期進(jìn)行。試查詢(xún)所有任課教師一學(xué)期的總課時(shí)數(shù)。要求輸出字段:gh,xm,任課門(mén)數(shù),總課時(shí)數(shù)(提示:一門(mén)課程的學(xué)期課時(shí)數(shù)可用表達(dá)式 rkkc.Kss*iif(rkkc.bxk,20,l8)計(jì)算得到)。查詢(xún)結(jié)果按總課時(shí)數(shù)的降序排序。
三、設(shè)計(jì)菜單 TESTD項(xiàng)目中已存在菜單menud,利用菜單設(shè)計(jì)器按如下要求修改菜單: 1.為“編輯”菜單欄設(shè)置熱鍵E; 2.在“文件”菜單欄下的子菜單中插入系統(tǒng)菜單欄“退出”; 3.在“編輯”菜單欄下的子菜單“重做”和“剪切”之間插入分組線; 4. 修改“文件”菜單欄下的“打開(kāi)”項(xiàng)的過(guò)程,將其中的IF…ENDIF語(yǔ)句修改成DOCASE…ENDCASE結(jié)構(gòu): 5.將“文件”菜單欄下的“運(yùn)行”項(xiàng)子菜單中的“程序”項(xiàng)的提示信息文本設(shè)置為“運(yùn)行PRG程序文件”;
四、設(shè)計(jì)表單 根據(jù)下列要求修改項(xiàng)目文件中的表單formd,該表單用來(lái)查看每個(gè)系教師的基本工資及基本工資總額。 1.將組合框名字改成Cboximing: 2.根據(jù)組合框的RowSource屬性值來(lái)設(shè)置它的RowSourceType屬性; 3.將基本工資整數(shù)部分的顯示格式設(shè)置成從小數(shù)點(diǎn)開(kāi)始,從右至左每三位用逗號(hào)分隔; 4.JSB(教師表)已經(jīng)按zc建立一個(gè)結(jié)構(gòu)復(fù)合索引,索引標(biāo)識(shí)為zc,在數(shù)據(jù)環(huán)境中設(shè)置相應(yīng)的屬性,使得表格中的數(shù)據(jù)按zc排序; 5.在組合框的Init事件中編寫(xiě)相應(yīng)的代碼,為組合框設(shè)置初值(即剛運(yùn)行表單時(shí),組合框的內(nèi)容不為空),且表格中的數(shù)據(jù)要與組合框中初值相對(duì)應(yīng); 6.在“平均工資”標(biāo)簽后面增加一個(gè)文本框,運(yùn)行時(shí)該文本框只讀且不能獲得焦點(diǎn),并在組合框的InterActiveChange事件中增加相應(yīng)的代碼,使文本框中顯示該系教師的平均工資。 完成上述修改以后,運(yùn)行表單,屏幕顯示:

|