三、綜合應(yīng)用(1小題,計(jì)30分)
在考生文件夾下有學(xué)生管理數(shù)據(jù)庫(kù)stu_five
(1)CHENGJI表(學(xué)號(hào)C(9)、課程號(hào)C(3)、成績(jī)I)用于記錄學(xué)生的考試成績(jī),其中
一個(gè)學(xué)生可以有多項(xiàng)記錄(登記一個(gè)學(xué)生的多門成績(jī))。
(2)KECHENG表(課程號(hào)C(3)、課程名 C(10)、最高分I、學(xué)號(hào)C(9))的內(nèi)容是所開(kāi)課程,一門課程只有一個(gè)記錄(表中有固定的已知數(shù)據(jù))。
請(qǐng)編寫并運(yùn)行符合下列要求的程序:
設(shè)計(jì)一個(gè)名為form_my的表單,表單中有兩個(gè)命令按鈕,按鈕的名稱分別為
cmdYes和cmdNo,標(biāo)題分別為"統(tǒng)計(jì)"和"關(guān)閉"。
程序運(yùn)行時(shí),單擊"統(tǒng)計(jì)"按鈕應(yīng)完成下列操作:
(1)計(jì)算每門課程的最高分,并將結(jié)果存入KECHENG表的最高分字段,同時(shí)將得此最高分的學(xué)生的學(xué)號(hào)存入該表的學(xué)號(hào)字段。
(2)根據(jù)上面的計(jì)算結(jié)果,生成一個(gè)新的表jiangli,該表按順序含有來(lái)自KECHENG表的課程名和最高分兩個(gè)字段,并且按最高分降序排序。
單擊"關(guān)閉"按鈕,程序終止運(yùn)行。
本題主要考核點(diǎn):
表單的建立、程序設(shè)計(jì)中循環(huán)結(jié)構(gòu)、條件結(jié)構(gòu)的應(yīng)用、SELECT語(yǔ)句的應(yīng)用等知識(shí)點(diǎn)
解題思路:
第一步:利用表單設(shè)計(jì)器建立所要求的表單,將在表單上添加兩個(gè)按鈕控件。分別設(shè)置兩個(gè)按鈕控件的標(biāo)題和名字屬性。
第二步:雙擊標(biāo)題為"統(tǒng)計(jì)"的按鈕控件,在新打開(kāi)的窗口中添加此按鈕的CLICK事件代碼:
SET TALK OFF
SELECT 2
USE KECHENG
&&在B工作區(qū)打開(kāi)KECHENG表
INDEX ON 課程號(hào) TO KC
&&以課程號(hào)為排序的依據(jù)對(duì)表KECHENG進(jìn)行排序
SELECT 1
USE CHENGJI
&&在A工作區(qū)打開(kāi)CHANEGJI表
DO WHILE NOT EOF() &&遍歷CHENGJI表
SELECT 2
SEEK A->課程號(hào) &&在KECHENG表中查找當(dāng)前成績(jī)表所在的課程號(hào)
IF 最高分
REPLACE 最高分 WITH A->成績(jī),學(xué)號(hào) WITH A->學(xué)號(hào)
ENDIF
SELECT 1
SKIP
ENDDO
SELECT 課程名,最高分 FROM KECHENG ORDER BY 最高分 INTO TABLE JIANGLI
&&SELECT語(yǔ)句的ORDER BY 子句可以指定查詢結(jié)果的排序依據(jù),默認(rèn)是以指定排序依據(jù)的升序排序,
&&如果要指定為降序需要用DESC;INTO TABLE 表名 可以將結(jié)果集放入一個(gè)永久表中。結(jié)果集也可以
&&放入一個(gè)臨時(shí)表中:INTO CURSOR 臨時(shí)表名 ,也可以放入一個(gè)數(shù)組之中:INTO ARRAY 數(shù)組變量名
SET TALK ON
第三步:為標(biāo)題為"退出"的按鈕控件加入CLICK事件代碼:
THISFORM.RELEASE &&退出表單
第三步:以form_my保存表單
相關(guān)推薦:2010年9月計(jì)算機(jī)等級(jí)考試沖刺備考指導(dǎo)專題北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |