2002年(秋)Visual FoxPro二級考試上機試卷 (VFP06)
(本試卷上機考試時間為70分鐘)
說明:1.考試語言環境為Visual FoxPro 5.0/6.0 2. 運行考試軟盤A中的“上機考試”應用程序文件以輸入考生的準考證號、姓名、試卷代號。 3. 啟動VFP系統后,首先在命令窗口中執行命令: set default to A: 以設置默認的工作目錄,然后再開始作題。 |
一、 項目、數據庫和表操作(12分) 打開軟盤根目錄下的項目文件TEST,在該項目中已有一數據庫SJK。 1. 按如下要求修改SJK中教師(JS)表的結構; (1) 設置工作日期(gzrq)字段的有效性(驗證)規則:工作日期的年份必須小于或等于2001年; (2) 設置gzrq字段的有效性(驗證)信息:輸入的工作日期必須合理; (3) 將簡歷(jl)字段的字段名改為bz; (4) 為工號(gh)字段設置輸入掩碼和格式:接受5個字節的字符,且第一個字符必須為大寫字母,后4個字符只接受數字字符; (5) 創建一個普通索引xdhzc,要求先按系代號(xdh)字段排序,系代號相同的再按職稱代號(zcdh)字段排序。 2. 把軟盤根目錄中的表文件GZB.DBF添加為TEST項目中的自由表,并為其添加說明信息為“職工工資信息”。 3. 將GZB表中所有講師的其它(qt)工資項增加50元。 4. 為JS設置刪除觸發器:僅允許刪除1955年(含1955年)以前參加工作的教師記錄。 5. SJK中JS表已存在主索引jsgh,索引表達式為gh,GZ表已存在普通索引gzgh,索引表達式為gh。以JS表為主表,GZ表為子表按gh建立永久關系,并設置JS表和GZ表之間的參照完整性:刪除級聯。
二、 設計查詢(8分) 在TEST項目中已存在查詢chaxun,按如下要求修改該查詢: 基于學生(XS)表和成績(CJ)表查詢所有學生的選課門數、總成績、平均成績。要求輸出字段為:xh、xm、xb、選課門數、總成績、平均成績,查詢結果按xh升序排序。
三、 設計菜單(5分) TEST項目中已存在菜單menu,其中已定義了“文件”菜單欄及其中的“恢復系統菜單”項。按如下要求設計菜單,完成后的運行效果如圖1所示。
1. 創建“數據處理”菜單欄; 2. 創建“數據處理”菜單中的菜單項:“查詢”和“統計”; 3. 為“統計”菜單設置快捷鍵“CTRL+T”; 4. 創建“查詢”菜單的子菜單,其中包含“學生成績”、“課程成績”和“教師工資”菜單項; 5. 在“課程成績”和“教師工資”菜單項之間插入分組線。
四、 設計表單(10分) TEST項目中已存在表單formF,用來瀏覽學生信息,數據源是學生表(XS)。按如下要求修改表單,完成后的運行界面如圖2所示。 1. 將表單數據環境中的xs表的主控索引設置為“xdh”; 2. 將表單的窗口類型(WindowType)設置為“模式”窗口,將表單數據的緩沖模式設置為“開放式”; 3. 在表單的空白處創建一個名為“LBLZP”標簽控件,使其能根據內容長度自動調節尺寸,創建一個名為“OLBZP”的OLE綁定型控件,使其能顯示學生表照片字段(xs.zp); 4. 編寫表格控件的有關事件代碼,要求:當光標在表格的行之間移動后,能使LBLZP標簽能動態顯示學生的姓名,刷新表單以使OLBZP控件能動態顯示學生的照片。
五、 程序改錯(5分) 下列程序的功能是計算分數數列2/1,3/2,5/3,……,m/n,m+n/m的前20項之和。要求:(1)項目中有一個程序文件Pcode,將下列程序輸入到其中并進行修 (2)在修改程序時,不允許修改程序的總體框架和算法,不允許增加或減少語句數目。 nSum=0 m=2 &&數列中第一項的分子 n=1 &&數列中第一項的分母 FOR x=1 TO 20 nSum=nSum+m/x y=m m=m+n n=y ENDDO WAIT WINDOWS’前20項之和為’+STR(nSum,10,2) |