1. <small id="kntrr"><delect id="kntrr"></delect></small>
    2. <sub id="kntrr"></sub>
        1. <form id="kntrr"><listing id="kntrr"></listing></form>
            江蘇省高校計算機等級考試命題研究院 江蘇省高校計算機等級考試輔導
            2003年(秋)Visual FoxPro 二級考試上機試卷(VFP04)

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

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

            說明:1.運行考試軟盤A中的“上機考試”應用程序文件以輸入考生的準考證號、姓名、試卷代號。
               2.啟動VFP系統后,首先在命令窗口中執行命令:
                set default to A:
                以設置默認的工作目錄,然后再開始作題。

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

            二、設計查詢(8分)

              在TEST項目中已存在查詢CHAXUN,且在SJK中的包含一個名為XSCJVIEW的視圖,該視圖中包含了每個學生所學課程的情況。按如下要求修改該查詢:
              基于XSCJVIEW視圖KC表統計各學生所學必修課的門數和總學分,學生所學課程的學分必須當成績(cj)在60分或60分以上時才能取得。要求輸出字段為:xh 、xm、門數、總分數,其中“課程性質”依據KC表中的bxk字段取值為“必修”或“選修”(若bxk字段值為“.T.”,則“課程性質”取值為“必修”,否則為“選修”)。查詢結果按學號和課程性質升序排序。

            三、設計菜單(5分)

              項目TEST中已存在菜單MENUA,按如下要求修改菜單,完成后的運行效果如圖1所示。

              1. 啟用“數據錄入”菜單欄下的“學生成績錄入”菜單項 。
              2. 為“數據打印”菜單欄下的“學生檔案打印”和“學生成績打印”,并用分隔線隔開。
              3. 為“學生成績打印”菜單項設置命令,要求當執行該菜單項時調用當前目錄下的報表文件BB,并將結果預覽輸出。
              4. 為“退出”菜單欄設置訪問鍵“ALT+X”。
              5. 將 “文件”菜單欄刪除。
               

            四.設計表單(10分)

               TEST 項目中已經存在菜單FORMA,該表單用來進行系統登錄。已知A盤根目錄下存在表文件USER,該表用來存放登錄用戶的工號(no)、姓名(name)、職務(title)、和口令(password)。根據下列要求對表單進行修改,完成以后運行表單,效果如圖2所示。


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

            五.程序改錯(5分)

              下列程序的功能用于將十進制數轉換成十六進制數表示。要求:
              1. 項目中有一個程序文件PCODE,將下列程序輸入到其中并進行修改。
              2. 在修改程序時,不允許修改程序的總體框架和算法,不允許增加或減少語句數目。

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

             

            国产在线精品一区二区三区不卡_亚洲第一极品精品无码_永久免费无码网站在线观看_亚洲av综合日韩