2002年(秋)Visual FoxPro二級考試上機試卷 (VFP03)
(本試卷上機考試時間為70分鐘)
說明:1.考試語言環(huán)境為Visual FoxPro 5.0/6.0 2. 運行考試軟盤A中的“上機考試”應用程序文件以輸入考生的準考證號、姓名、試卷代號。 3. 啟動VFP系統(tǒng)后,首先在命令窗口中執(zhí)行命令: set default to A: 以設(shè)置默認的工作目錄,然后再開始作題。 |
一、項目、數(shù)據(jù)庫和表操作(12分) 打開軟盤根目錄下的項目文件TEST,在該項目中已有一數(shù)據(jù)庫SJK。 1.按如下要求修改SJK中成績(CJ)表的結(jié)構(gòu): (1)將課程代號(kcdh)字段的標題設(shè)置為“課程代號”; (2)設(shè)置成績(cj)字段的有效性(驗證)規(guī)則:大于等于0小于等于100; (3)設(shè)置cj字段的有效性(驗證)信息:學生的成績必須在0—100之間。 (4)創(chuàng)建一個普通索引xhcj,要求先按學號(xh)字段排序,學號相同的再按cj字段排序; (5)為cj字段設(shè)置字段注釋:成績小于等于60分為不及格 2.為CJ表添加編輯說明為“學生成績表”。 3.把軟盤根目錄中的表文件GZB.DBF添加為TEST項目中的自由表。 4.計算GZB表中所有記錄的應發(fā)工資(yfgz),應發(fā)工資的計算公式為: yfgz(應發(fā)工資)=j(luò)bgz(基本工資)+gwjt(崗位津貼)+zhjt(綜合津貼)+zfbt(住房補貼)+qt(其它) 5.為CJ表設(shè)置更新觸發(fā)器:kcdh的值為06的允許更新,否則不允許更新。 6.SJK中KC表已存在主索引kcdh,索引表達式為kcdh,CJ表已存在普通索引cjkcdh,索引表達式為kcdh.。以KC表為主表,CJ表為子表按kcdh建立永久關(guān)系,并設(shè)置KC表和CJ表之間的參照完整性:刪除限制。
二、設(shè)計查詢(8分) 在TEST項目中已存在查詢chaxun,且在SJK中包含一個名為XSST的視圖,該視圖中包含有學生所在的系代號(xdh)、系名稱(ximing)、專業(yè)代號(zydh),另外在SJK的專業(yè)(ZY)表中含有專業(yè)名稱(zymc)字段。按如下要求修改查詢: 基于XSST視圖和ZY表查詢每個系各專業(yè)學生的人數(shù)。要求輸出字段為:xdh、ximing、zydh、zymc、學生人數(shù),查詢結(jié)果按xdh的升序排序,如果xdh相同,則按zydh的升序排序。
三、設(shè)計菜單(5分) TEST項目中已存在菜單menu,其中已定義了“文件”菜單欄及其中的“恢復系統(tǒng)菜單”項。按如下要求設(shè)計菜單,完成后的運行效果如圖1所示。

1.創(chuàng)建“查詢”菜單欄; 2.為“查詢”菜單設(shè)置熱鍵“ALT+Q”; 3.創(chuàng)建“查詢”菜單中的菜單項:“基本信息”、“成績查詢”和“組合查詢”; 4.創(chuàng)建“基本信息”的子菜單,其中包含“學生”、“教師”和“課程”菜單項; 5.在“成績查詢”和“組合查詢”菜單項之間插入分組線。
四、設(shè)計菜單(10分) TEST項目中已存在表單formC,按如下要求修改表單,完成后表單的運行界面如圖2所示。 1. 設(shè)置表單邊框為單線邊框,標題改為:教師任課情況; 2. 將任課教師組合框改為下拉列表框; 3. 將表格第一列中的組合框cboZydh的列數(shù)改為2列; 4. 將表格增加為3列,將第3列的ContrlSource指向kc.kcm,并將該列設(shè)置為只讀; 5. 為“允許添加”復選框chkAllowAdd添加InterActiveChange一行代碼,用來控制“添加”按鈕cmdAdd的啟用與廢止。當chkAllowAdd的值為真時,“添加”按鈕可用,并調(diào)用“添加”按鈕的Click事件代碼。

五、程序改錯(5分) 下列程序用于計算數(shù)列1,1/2,1/3,1/4,1/5,……,1/n之和,當某一數(shù)列項的值小于0.01時停止計算。要求: (1) 項目中有一個程序文件Pcode,將下列程序輸入到其中并進行修改; (2) 在修改程序時,不允許修改程序的總體框架和算法,不允許增加或減少語句數(shù)目。 SET DECIMAL TO 2 n=1 nSum=0 Do WHILE.T. IF 1/n<0.01 LOOP ENDIF nSum=nSum+n n=n+1 ENDDO WAIT WINDOWS’該數(shù)列之和為’+STR(nSum,10,2) |