![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
二級vfp2005年(秋)上機(jī)4 |
|
江蘇省高等學(xué)校非計算機(jī)專業(yè)學(xué)生 (本試卷完成時間 70分鐘)
一、項目、數(shù)據(jù)庫和表操作(12分) 打開軟盤根目錄中的項目文件TEST,在該項目中已有一數(shù)據(jù)庫SJK及若干表。 1. 按以下要求修改SJK數(shù)據(jù)庫中TS表: (1) 設(shè)置表的觸發(fā)器:當(dāng)冊數(shù)(cs)不為0時,禁止刪除。 (2) 添加一個字段,字段名為publisher,寬度以最多能存儲“外語教學(xué)與研究出版社”字符串為準(zhǔn),并為其設(shè)置默認(rèn)值“出版 社” (3) 設(shè)置國際標(biāo)準(zhǔn)圖書編號(isbn)字段的標(biāo)題屬性,使該字段的字段名在瀏覽窗口中顯示為“國際標(biāo)準(zhǔn)圖書編號”。 (4) 創(chuàng)建一個普通索引abcd,要求冊數(shù)(cs)字段進(jìn)行排序,相同時以價格(jg)字段排序。 (5) 設(shè)置rkrp字段的有效性規(guī)則,要求不超過當(dāng)前系統(tǒng)日期。 2、 將GZ表中qt字段的值全部設(shè)置為0 3、 修改項目TEST的項目信息:附加圖標(biāo)NET.ICO。 4、 XS表和CJ表已存在以學(xué)號(xh)字段為索引表達(dá)式的主索引xsxh和普通索引cjxh。以XS表為主表,CJ表為子表按xh建立永久關(guān)系,并根據(jù)以下要求設(shè)置參照完整性規(guī)則:在XS表中修改和刪除記錄時,若CJ表中有相對應(yīng)的記錄(xh字段的值),則同時修改和刪除CJ表相應(yīng)記錄。 二、 設(shè)計查詢(8分) 在TEST項目中已經(jīng)存在查詢chaxun,已知在SJK的課程(KC)表中含有課程代號(kcdh)、課程名(kcm)字段,成績(CJ)表中含有學(xué)生學(xué)號(xh)、課程代號(kcdh)、成績(cj)等字段。按如下要求修改查詢: 基于KC表和CJ表查詢每門課程選課人數(shù)、成績優(yōu)秀人數(shù)和成績不及格人數(shù),輸出字段包括:KC、kcdh、Kc、kcm、選課人數(shù)、優(yōu)秀人數(shù)、不及格人數(shù)。輸出結(jié)果按選課人數(shù)降序排序(注:成績大于等于90為優(yōu)秀,小于60為不及格) 三、 設(shè)計菜單(5分) 已知項目TEST中已存在菜單menu,利用菜單設(shè)計器,按如下要求修改菜單。 1、 按圖1所示要求為“表操作”菜單欄前增加一個“編輯”菜單欄及其子菜單,并為“教師”菜單設(shè)置訪問鍵: 2、 在“編輯”菜單欄下的“學(xué)生”菜單項添加過程代碼; 當(dāng)執(zhí)行該菜單項時,選擇學(xué)生表(XS)為當(dāng)前使用表(若該表未打開,則首先打開之),并邏輯刪除學(xué)生表中xh前二位為“00”的記錄。 圖 1 四、 設(shè)計表單(10分) 項目管理器中已經(jīng)存在表單FD(如圖2所示)。該表單用來預(yù)覽DBF表記錄,根據(jù)下列要求修改表單,完成以后運(yùn)行表單,效果如圖3所示。 1、 設(shè)置表單可調(diào)整到的最小高度和最小寬度分別為200和250。 2、 設(shè)置Grid1表格的有關(guān)屬性,使表格不顯示刪除標(biāo)記列,并且使顯示的數(shù)據(jù)只讀但可獲得焦點(diǎn)。 3、 在命令按鈕組控件cmg中增加一個命令按鈕,并設(shè)置該按鈕的標(biāo)題為“退出”。 4、 編寫Resize事件的代碼,是表單運(yùn)行后改變表單窗口大小時,表格始終與表單同寬,表格的高度始終比表單高度小45。 5、 根據(jù)“打開表”命令按鈕的Click事件代碼中所指定的打開表的工作區(qū),編寫“關(guān)閉表”命令按鈕的Click事件代碼,要求僅用一天語句使該工作區(qū)中的表關(guān)閉。
圖2 設(shè)計時
圖3 運(yùn)行時 五、 程序改錯題(5分) 下列程序的功能是找出1992至2010年中的閏年年份。判斷閏年的條件是:能被4整除但不能被100整除的年份,或能被400整除的年份。如1989、1900年不是閏年,1992,2000是閏年。要求: (1) 項目中有一個程序文件Pcode,將下列程序輸入到其中并進(jìn)行修改; (2) 在修改程序時,不允許修改程序的總體框架和算法,不允許增加或減少語句數(shù)目 n=1992 y=1 DO WHILE n<=2010 IF INT(n/4)=n/4 IF INT(n/100)<>n/100 y=1 ELSE IF INT(n/400)=n/400 y=1 ELSE y=0 ENDIF ENDIF ENDIF y=0 ENDIF WAIT WINDOW VAL(n)+'是'+IIF(y=1,'閏年','非閏年') n=n+1 ENDDO |
|