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

江蘇省高校計(jì)算機(jī)等級(jí)考試命題研究院 江蘇省高校計(jì)算機(jī)等級(jí)考試輔導(dǎo)
2003年(秋)Visual FoxPro 二級(jí)考試上機(jī)試卷(VFP04)

2003年(秋)Visual FoxPro 二級(jí)考試上機(jī)試卷(VFP04)

(本試卷上機(jī)考試時(shí)間為70分鐘)

說(shuō)明:1.運(yùn)行考試軟盤(pán)A中的“上機(jī)考試”應(yīng)用程序文件以輸入考生的準(zhǔn)考證號(hào)、姓名、試卷代號(hào)。
   2.啟動(dòng)VFP系統(tǒng)后,首先在命令窗口中執(zhí)行命令:
    set default to A:
    以設(shè)置默認(rèn)的工作目錄,然后再開(kāi)始作題。

一、項(xiàng)目、數(shù)據(jù)庫(kù)和表操作(12分)
  
  打開(kāi)軟盤(pán)根目錄下的項(xiàng)目文件TEST,在該項(xiàng)目中已有一數(shù)據(jù)庫(kù)SJK。
  1.按如下要求修改SJK中學(xué)生(KC)表的結(jié)構(gòu):
  。1) 設(shè)置必修課(bxk)字段的標(biāo)題:是否必修課。
  。2) 設(shè)置課程代號(hào)(kcdh)字段的輸入掩碼:課程代號(hào)只能是兩位數(shù)字字符。
   (3) 設(shè)置學(xué)分(xf)字段的顯示類(lèi)為微調(diào)控件。
  。4) 增加一個(gè)備注型字段,字段名為“課程簡(jiǎn)介”。
   (5) 為KC表創(chuàng)建記錄級(jí)有效性規(guī)則:課時(shí)數(shù)(kss)不能少于學(xué)分(xf)。
  2.已知數(shù)據(jù)庫(kù)SJK的存儲(chǔ)過(guò)程中有一自定義函數(shù)Ltoc(),功能是將邏輯型數(shù)據(jù)轉(zhuǎn)換為漢字“是”與“否”,例如Ltoc(.T.)的返回值為“是”。利用該函數(shù)KC表創(chuàng)建一個(gè)普通索引bxkxf,要求將所有必修課記錄排在前,非必修課記錄排在后,同類(lèi)型課程中再按學(xué)分(xf)字段排序。
  3.修改KC表中記錄的課時(shí)數(shù)(kss)和學(xué)分(xf)字段的值,修改方法是:所有非必修課(bxk字段的值為.F.)的課時(shí)數(shù)和學(xué)分均減1。
  4.向KC表中增加一條課程代號(hào)(kcdh)為“26”的記錄。。
  5.已知數(shù)據(jù)庫(kù)SJK的存儲(chǔ)過(guò)程中有一自定義函數(shù)kc_del_tri(),該函數(shù)的功能是:對(duì)于打開(kāi)的KC表,如果當(dāng)前記錄在成績(jī)(CJ)表或任課(RK)表中有相關(guān)記錄,則返回.T.,否則返回.F.。設(shè)置KC表的刪除觸發(fā)器,要求如果KC表的當(dāng)前記錄在成績(jī)表或任課表中有相關(guān)記錄,則禁止刪除。
  6.已知KC表已存在主索引kcdh,索引表達(dá)式為kcdh,成績(jī)(CJ)表已存在普通索引cjkcdh,索引表達(dá)式為kcdh。以KC表為主表,CJ表為子表,按kcdh建立永久關(guān)系,并設(shè)置它們之間的參照完整性:更新級(jí)聯(lián)。

二、設(shè)計(jì)查詢(8分)

  在TEST項(xiàng)目中已存在查詢CHAXUN,且在SJK中的包含一個(gè)名為XSCJVIEW的視圖,該視圖中包含了每個(gè)學(xué)生所學(xué)課程的情況。按如下要求修改該查詢:
  基于XSCJVIEW視圖KC表統(tǒng)計(jì)各學(xué)生所學(xué)必修課的門(mén)數(shù)和總學(xué)分,學(xué)生所學(xué)課程的學(xué)分必須當(dāng)成績(jī)(cj)在60分或60分以上時(shí)才能取得。要求輸出字段為:xh 、xm、門(mén)數(shù)、總分?jǐn)?shù),其中“課程性質(zhì)”依據(jù)KC表中的bxk字段取值為“必修”或“選修”(若bxk字段值為“.T.”,則“課程性質(zhì)”取值為“必修”,否則為“選修”)。查詢結(jié)果按學(xué)號(hào)和課程性質(zhì)升序排序。

三、設(shè)計(jì)菜單(5分)

  項(xiàng)目TEST中已存在菜單MENUA,按如下要求修改菜單,完成后的運(yùn)行效果如圖1所示。

  1. 啟用“數(shù)據(jù)錄入”菜單欄下的“學(xué)生成績(jī)錄入”菜單項(xiàng) 。
  2. 為“數(shù)據(jù)打印”菜單欄下的“學(xué)生檔案打印”和“學(xué)生成績(jī)打印”,并用分隔線隔開(kāi)。
  3. 為“學(xué)生成績(jī)打印”菜單項(xiàng)設(shè)置命令,要求當(dāng)執(zhí)行該菜單項(xiàng)時(shí)調(diào)用當(dāng)前目錄下的報(bào)表文件BB,并將結(jié)果預(yù)覽輸出。
  4. 為“退出”菜單欄設(shè)置訪問(wèn)鍵“ALT+X”。
  5. 將 “文件”菜單欄刪除。
   

四.設(shè)計(jì)表單(10分)

   TEST 項(xiàng)目中已經(jīng)存在菜單FORMA,該表單用來(lái)進(jìn)行系統(tǒng)登錄。已知A盤(pán)根目錄下存在表文件USER,該表用來(lái)存放登錄用戶的工號(hào)(no)、姓名(name)、職務(wù)(title)、和口令(password)。根據(jù)下列要求對(duì)表單進(jìn)行修改,完成以后運(yùn)行表單,效果如圖2所示。


  1. 設(shè)置窗口的標(biāo)題為“系統(tǒng)登錄”。
  2. 設(shè)置表單有關(guān)屬性,使表單運(yùn)行時(shí)不可最小化。
  3. 使口令文本框中輸入的字段以“*”號(hào)顯示。
  4. 為“確定”按鈕設(shè)置有關(guān)屬性,使得當(dāng)表單運(yùn)行過(guò)程中按ENTER鍵時(shí),無(wú)論當(dāng)前焦點(diǎn)在哪個(gè)對(duì)象上,“確定”那鈕總能得到焦點(diǎn)并自動(dòng)執(zhí)行它的Click事件代碼。
  5. “年月“下拉列表的RowSourceType為“3-SQL語(yǔ)句”,設(shè)置它RowSource的屬性,使得該下拉列表框中顯示LOGIN表中的年月兩個(gè)字段的數(shù)據(jù),且顯示格式為X X X X年X X月(如圖2所示)。
  6. 假如USER表中姓名(name)字段的值不重復(fù),且已經(jīng)按姓名建立了一個(gè)普通索引name。完善姓名下拉列表框的InterActiveChange事件,使得當(dāng)選擇不同的用戶姓名時(shí),“職務(wù)”文本框中顯示其相應(yīng)的職務(wù)(title)字段的值。

五.程序改錯(cuò)(5分)

  下列程序的功能用于將十進(jìn)制數(shù)轉(zhuǎn)換成十六進(jìn)制數(shù)表示。要求:
  1. 項(xiàng)目中有一個(gè)程序文件PCODE,將下列程序輸入到其中并進(jìn)行修改。
  2. 在修改程序時(shí),不允許修改程序的總體框架和算法,不允許增加或減少語(yǔ)句數(shù)目。

    nNumber=437 &&賦初值(十進(jìn)制數(shù))
    cResult=SPACE(0)
    IF nNumber#0
      DO WHILE nNumber>0
        n=MOD(nNumber,16)
        nNumber=INT(nNumber/16) &&余數(shù)
        IF n<10
          cResult=STR(n,1)+cResult
        ELSE
          cResult=CHR(ASC(‘A’)+n)+cResult
        ENDIF
      NDDO
    ELSE
      cResult=0
    ENDIF
    WAIT WINDOWS‘十六進(jìn)制數(shù)表示為’+cResult