2003年(秋)Visual FoxPro 二級考試上機試卷(VFP05)
(本試卷上機考試時間為70分鐘)
說明:1.首先運行考試軟盤A中的“上機考試”應(yīng)用程序文件以輸入考生的準(zhǔn)考證號、姓名、試卷代號。 2. 啟動VFP系統(tǒng)后,首先在命令窗口中執(zhí)行命令: set default to A: 以設(shè)置默認(rèn)的工作目錄,然后再開始作題。 |
一。項目、數(shù)據(jù)庫和表操作(12分) 打開軟盤根目錄下的項目文件TEST,在該項目中已有一數(shù)據(jù)庫SJK。 1. 按如下要求修改SJK中工資(GZ)表的結(jié)構(gòu): 。1) 為崗位津貼(gwjt)字段設(shè)置標(biāo)題:崗位津貼。 。2) 設(shè)置工號(gh)字段的輸入掩碼:工號以1個任意英文字母開頭,后跟4位數(shù)字。 。3) 增加一個邏輯型字段,其字段名為yhdf。 。4) 創(chuàng)建一個普通索引jbgw,要求按基本工資(jbgz)字段與崗位津貼(gwjt)的和降序排列。 。5) 為GZ表設(shè)置注釋信息:“職工工資表”。 2. 把A:\B0001.GIF文件添加到TEST項目中的適當(dāng)位置,并將包含狀態(tài)設(shè)置為“排除”。 3. 計算GZ表中所有教師的住房公積(zfgi),計算方法是:住房公積是基本工資(jbgz)的8%。 4. 設(shè)置GZ表的記錄有效性規(guī)則:住房公積(zfgi)字段的值必須為基本工資(jbgz)字段的8%。 5. 設(shè)GZ表的更新權(quán)限由一個全局的邏輯變量ispassed控制,當(dāng)ispassed的值為.T.是允許更新。設(shè)置GZ表的更新觸發(fā)器。 6. SJK中教師(JS)表已存在主索引jsgh,索引表達式為gh,GZ表已存在普通索引gzgh,索引表達式為gh,以JS表為主表、GZ表為子表按gh建立“一對一”的永久關(guān)系,并設(shè)置JS表和GZ表之間的參照完整性:更新級聯(lián)。
二.設(shè)計查詢(8分) 在TEST項目中已存在查詢CHAXUN,按如下要求修改查詢: 基于兩個工資表(數(shù)據(jù)庫表GZ和自由表GZC)查詢同一個教師在兩個表中的基本工資(jbgz)不一致的記錄。要求輸出5個字段:gh、xm、兩個表中的jbgz字段以及差額(差額是指兩個表中jbgz字段值差的絕對值),并按差額的降序排列。
三.設(shè)計菜單(5分) 項目TEST中已存在菜單MENUE,其中已定義了“文件”、“數(shù)據(jù)維護”、“數(shù)據(jù)統(tǒng)計”、和“退出”四個菜單欄,按如下要求修改菜單,完成后的運行效果如圖所示。 1. 在“文件”菜單欄下插入系統(tǒng)菜單“打印預(yù)覽”。 2. 在“數(shù)據(jù)維護”菜單下增加一個菜單項“教師信息維護”,并用分隔線隔開。 3. 廢止“數(shù)據(jù)統(tǒng)計”菜單欄下的“教師工資統(tǒng)計”菜單項。 4. 為“學(xué)生成績統(tǒng)計”菜單項設(shè)置SQL命令,要求當(dāng)執(zhí)行該菜單項時,在瀏覽器窗口中顯示成績(CJ)
表中所有學(xué)生的學(xué)號(XH)和總成績。 5. 為“退出”菜單欄設(shè)置訪問鍵“ALT+X”。
|
 |
四.設(shè)計菜單(10分) TEST項目中已經(jīng)存在表單FORMS,該表單用來進行人員信息查詢。根據(jù)下列要求修改表單,完成以后運行菜單,效果如圖所示。 1. 將表單設(shè)置為固定對話框。 2. 為“退出”按鈕設(shè)置一個訪問鍵“ALT+X”。 3. 設(shè)置表格的有關(guān)屬性,使表格不顯示刪除標(biāo)記列。 4. 將表單數(shù)據(jù)環(huán)境中的USER表設(shè)置為獨占方式打開。 5. 在表單的Load事件中創(chuàng)建一個名為USER-CUR的臨時表,要求包含工號(no)、姓名(name)、職務(wù)(title)、部門(department)和說明(remark)字段,括號中的字符表示相應(yīng)的字段名稱,字段的類型及長度與數(shù)據(jù)環(huán)境中的用戶信息表(USER)中對應(yīng)的字段相同。 6. 為“退出”按鈕編寫Click事件代碼,要求當(dāng)點擊“退出”按鈕時先關(guān)閉USER-CUR臨時表,然后再關(guān)閉表單!
五.程序改錯(5分)
下列程序的功能是:對于數(shù)列1,1,2,3,5,8,……(從第3項開始,每一數(shù)列項的值為前2項之和),求前多少項的和剛好不大于100。要求: 1. 項目中有一個程序文件PCODE,將下列程序輸入到其中并進行修改。 2. 在修改程序時,不允許修改程序的總體框架和算法,不允許增加或減少語句的數(shù)目。 a1=1 a2=1 nSum=a1+a2 &&第1、2項之和 nCount=2 &&項數(shù),初值為2 Do WHILE nSum<100 x=a1 a1=a2 a2=x+a1 nSum=nSum+a1 nCount=nCount+1 Enddo nCount=nCount+1 WAIT WINDOWS’前’+STR(nCount)+’項的和剛好不大于100‘
|