亚洲国产福利在线一二三观看_精品国产伦一区二区三区欲臀_国产a∨视频精品视频护士_精品八戒人妻少妇av

江蘇省高校計算機等級考試命題研究院 江蘇省高校計算機等級考試輔導
2002年(秋)Visual FoxPro二級考試上機試卷 (VFP05)

2002年(秋)Visual FoxPro二級考試上機試卷 (VFP05)

(本試卷上機考試時間為70分鐘)

說明:1.考試語言環(huán)境為Visual FoxPro 5.0/6.0
2. 運行考試軟盤A中的“上機考試”應用程序文件以輸入考生的準考證號、姓名、試卷代號。
3. 啟動VFP系統(tǒng)后,首先在命令窗口中執(zhí)行命令:
set default to A:
以設置默認的工作目錄,然后再開始作題。

一、 項目、數(shù)據(jù)庫和表操作(12分)
打開軟盤根目錄下的項目文件TEST,在該項目中已有一數(shù)據(jù)庫SJK。
1. 按如下要求修改SJK中課程(KC)表的結(jié)構(gòu):
(1) 將必修課(bxk)字段的標題設置為“必修課”;
(2) 設置學分(xf)字段的有效性(驗證)規(guī)則:大于等于0小于等于6;
(3) 設置xf字段的有效性(驗證)信息:某一門課的學分不能大于6。
(4) 為課程代號(kcdh)字段設置輸入掩碼:接受4個字節(jié)的字符,且只接受數(shù)字字符;
(5) 創(chuàng)建一個普通索引xfkcdh,要求先按xf字段排序,xf相同的再按kcdh字段排序;
2. 為KC表添加編輯說明為“課程基本信息表”。
3. 把軟盤根目錄中的表文件GZB.DBF添加為TEST項目中的自由表。
4. 修改GZB表中所有記錄的住房公積金(zfgj)字段的值,規(guī)定為:住房公積金為基本工資(jbgz)的8%。
5. 為KC表設置刪除觸發(fā)器:不允許刪除。
6. SJK中KC表已存在主索引kcdh,索引表達式為kcdh,CJ表已存在普通索引cjkcdh,索引表達式為kcdh。以KC表為主表,CJ表為子表按kcdh建立永久關(guān)系,并設置KC表和CJ表之間的參照完整性:更新級聯(lián)。

二、 設計查詢(8分)
在TEST項目中已存在查詢chaxun,按如下要求修改該查詢:
基于教師(JS)表和工資(GZ)表查詢每個教師的基本工資(JBGZ)、崗位津貼(GWJT)、綜合津貼(ZHJT)以及前三項之和(即,基本工資、崗位津貼及綜合津貼之和)。要求輸出字段為:gh、xm、xb、jbgz、gwjt、zhjt、前三項之和,查詢結(jié)果按gh的降序排序,且只輸出前三項之和大于等于3000的記錄。

三、 設計菜單(5分)
TEST項目中已存在菜單menu,其中已定義了“文件”菜單欄及其中的“恢復系統(tǒng)菜單”項。按如下要求設計菜單,完成后的運行效果如圖1所示。


1. 在“文件”菜單中創(chuàng)建“瀏覽表”菜單項;
2. 為“瀏覽表”菜單項創(chuàng)建子菜單,子菜單中包含“教師表”、“課程表”和“學生表”菜單項;
3. 為“教師表”菜單項創(chuàng)建過程,執(zhí)行如下兩行命令:
USE JS
BROWSE
4. 在“瀏覽表”和“恢復系統(tǒng)菜單”菜單項之間插入分組線;
5. 創(chuàng)建“編輯”菜單欄,并設置熱鍵“ALT+E”。

四、 設計表單(10分)
TEST項目中已存在表單formE,用來瀏覽學生信息,數(shù)據(jù)源是學生表(XS)。按如下要求修改表單,完成后表單的運行界面如圖2所示。
1. 修改表格,使表格不顯示刪除標記,表格數(shù)據(jù)只讀;
2. 將表格第一列的列標頭的標題“xh”改為“學號”,居中對齊,前景色為藍色(0,0,255)
3. 已知學生表已建有按學號排序的索引xsxh。設置表格第一列列標頭的有關(guān)事件代碼,使得當單擊該列標頭時完成如下功能:(1)表格中的數(shù)據(jù)按xsxh索引的順序排序;(2)表格中的數(shù)據(jù)指向第一行;(3)將表單的標題改為:“按學號順序瀏覽學生信息”;
4. 項目中已包含Mylib類庫,將類庫中的cmdClose類添加到表單中適當位置。

五、 程序改錯(5分)
下列程序的功能是將二進制轉(zhuǎn)換成十進制數(shù)表示。要求:
(1) 項目中有一個程序文件Pcode,將下列程序輸入到其中并進行修改;
(2) 在修改程序時,不允許修改程序的總體框架和算法,不允許增加或減少語句數(shù)目。
nNumber=1011001 &&賦初值(認定它為二進制數(shù))
cNumber=ALLTRIM(STR(nNumber))
nResult=0
FOR n=LEN(cNumber) TO 1
  c=LEFT(cNumber,1)
    IF c=’0’
    nResult=nResult*2+1
  ELSE
    nResult=nResult*2
  ENDIF
  cNumber=SUBSTR(cNumber,2)
ENDFOR
WAIT WINDOWS’十進制數(shù)表示為’+STR(nResult)