




已閱讀5頁,還剩12頁未讀, 繼續(xù)免費閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領
文檔簡介
江蘇省高等學校非計算機專業(yè)學生2004年(春)計算機基礎知識和應用能力等級考試上機試卷二級Visual FoxPro (試卷代號 VFP01)(本試卷完成時間 70分鐘)說明:1.首先運行考試軟盤中的“上機考試”應用程序以輸入考生的準考證號、姓名和試卷代號;2.啟動Visual FoxPro系統(tǒng)后,首先在命令窗口中執(zhí)行命令: SET DEALUT TO A:以設置默認的工作目錄,然后再開始做題。一、 項目、數(shù)據(jù)庫和表操作(12分)打開軟盤根目錄下的項目文件TEST,在該項目中已有一數(shù)據(jù)庫SJK。1 按如下要求修改SJK中學生(XS)表的結(jié)構(gòu):(1) 設置姓名(xm)字段的寬度,使之最多能容納4個漢字。(2) 位了使xm字段在輸入數(shù)據(jù)時自動刪除前導空格,設置xm字段的相關(guān)屬性。(3) 設置性別(xb)字段的默認值為“男”。(4) 增加一個備注字段,字段名為“備注”。(5) 創(chuàng)建唯一索引jsjg,要求按籍貫(jg)字段升序排序,且僅對“江蘇”籍的學生記錄排序。(6) 為XS表設置說明信息:學生基本信息表。2 設置TEST項目的作者為考生自己的姓名。3 徹底刪除CJ表中所有xh字段值開頭為“99”的記錄。4 為XS表設置插入觸發(fā)器:學號開頭兩位只能使“00”至“10”。5 如果在XS表中更改了某個學生的xh字段,則要求自動同步更改成績(CJ)表中相應xh字段值,根據(jù)此要求設置兩個表之間的參照完整性。二、 設計查詢(8分)已知班級(BJ)表中含有班級編號(bjbh)、系代號(xdh)和專業(yè)代號(zydh)字段,按如下要求修改TEST項目中的查詢CHAXUN:基于班級(BJ)表和學生(XS)表以系為單位,按性別統(tǒng)計各系男女學生的人數(shù),要求輸出字段為:xdh、xb、人數(shù),查詢結(jié)果按系代號和性別升序排序。三、 設計菜單(5分)項目TEST中已存在菜單MENUK,其中已定義了“文件”、“記錄瀏覽”和“記錄定位”三個菜單欄。按如下要求修改菜單,完成后的運行效果如圖1所示。1 為“文件”菜單欄下的“恢復系統(tǒng)菜單”設置快捷鍵“CTRL+R”。2 在“文件” 菜單欄下插入系統(tǒng)菜單“關(guān)閉”。3 為“記錄瀏覽”菜單欄設置子菜單,改子菜單包括二個菜單項“教師表”和“教師任課表”,并用分隔線隔開。 4 為“記錄定位”菜單欄下的“上一條”設置過程,要求當記錄指針未指向文件頭時,記錄指針向上移動一條記錄。圖15 將下列代碼加到菜單的適當位置,使運行該菜單時,首先執(zhí)行此代碼。代碼如下:IF USED(”js”)SELECT jsELSEUSE jsENDIF四、 設計表單(10分)TEST項目中已存在表單FORMK,該表單用來查詢需補考(成績低于60分)的學生及其成績情況,根據(jù)下列要求修改表單,完成以后運行表單,效果如圖2、圖3所示。1 表單運行時自動居中。2 根據(jù)列表框List1的RowSource屬性值,來設置它的RowSourceType屬性值。3 增加一頁,它的標題為“補考成績”。4 為表單編寫Active事件代碼,使得表單激活時調(diào)用List1的InterActiveChange事件代碼(List1)的InterActiveChange事件代碼的功能是:根據(jù)List1中選定的課程,將頁框第1頁中表格的RecordSource屬性設置為一個SQL語句,該語句生成一個包含bjbh字段和補考人數(shù)的臨時表cBkrstmp。5 完善頁框第2頁的Active事件代碼:要求根據(jù)List1中選定的課程和頁框第1頁中選定的班級,在第2頁的表格中顯示指定課程和指定班級的補考學生清單。例如,第一頁顯示課程號為“01”的課程000403041班有8人補考,010405011班有1人補考,如圖2所示。選定000403041班,然后點擊第二頁,此時第二頁顯示該班8隔學生的補考清單,如圖3所示。圖2 圖3 五、 程序改錯(5分)下列程序的功能是:對英文字符串進行加密處理。加密算法上一:將字符串中的第2、4、6、8(偶數(shù)位)個字符換成其“對稱”字符(a與z對稱,A與Z對稱,b與y對稱,B與Y對稱,等等)。例如,字符串“ABcdEF ”加密后為“AYcwEU”。要求:1 項目中有一個程序文件PCODE,將下列程序輸入到其中并進行修改。2 在修改程序時,不允許修改程序的總體框架和算法,不允許增加或減少語句數(shù)目。cString=”ABcdEF”cResult=SPACE(0)FOR n=1 TO LEN(cString)IF MOD(n,2)=0cResult= cResult+SUBSTR(cString,n,1)ELSEc=SUBSTR(cString,n,1)IF ISUPPER(c) & ISUPPER()函數(shù)的功能是判斷一字符(串)是否為大寫cResult= cResult+STR(25-(ASC(c)- ASC(“A”)+ ASC(“A”)ELSEcResult= cResult+STR(25-(ASC(c)- ASC(“a”)+ ASC(“a”)ENDIFENDIFENDFORWAIT WINDOW “字符串加密后為”+ cResult蘇省高等學校非計算機專業(yè)學生2004年(春)計算機基礎知識和應用能力等級考試上機試卷二級Visual FoxPro (試卷代號 VFP02)(本試卷完成時間 70分鐘)說明:1.首先運行考試軟盤中的“上機考試”應用程序以輸入考生的準考證號、姓名和試卷代號;2.啟動Visual FoxPro系統(tǒng)后,首先在命令窗口中執(zhí)行命令: SET DEALUT TO A:以設置默認的工作目錄,然后再開始做題。一、 項目、數(shù)據(jù)庫和表操作(12分)打開軟盤根目錄下的項目文件TEST,在該項目中已有一數(shù)據(jù)庫SJK。1 如下要求修改SJK中學生(XS)表的結(jié)構(gòu):(1) 設置學號(xh)字段的有關(guān)屬性,使之至多能容納10個字符。(2) 設置xh字段的相關(guān)屬性,使xh字段在輸入數(shù)據(jù)時自動刪除前導空格。(3) 設置xh字段的字段注釋:主關(guān)鍵字,不允許重復或空。(4) 刪除zp字段。(5) 創(chuàng)建一候選索引xh,要求按學號(xh0字段升序排序,且僅對以“01”開頭的學號排序。(6) 設置XS表的插入觸發(fā)器:班級編號(bjbh)字段值不能為空字符串和Null值。2 將“A:GZB.DBF”文件添加為TEST項目中的自由表,并設置說明信息:工資表備份。3 徹底刪除XS表中所有班級編號為“990403022”的記錄。4 在數(shù)據(jù)庫SJK的存儲過程中創(chuàng)建自定義函數(shù)nto(),代碼如下:PARAMETERS pDigit LOCAL cStringcString=”零一二三四五六七八九”return substr(cString, pDigit*2+1,2)5 如果成績(CJ)表中存在某個學號的成績記錄,則不允許刪除XS表中相同學號的學生記錄,根據(jù)此要求設置這兩個表之間的參照完整性。二、 設計查詢(8分)已知班級(BJ)表中含有班級編號(bjbh)、系代號(xdh)和專業(yè)代號(zydh)字段,按如下要求修改TEST項目中的查詢CHAXUN:基于班級(BJ)表和學生(XS)表,以系為單位統(tǒng)計各專業(yè)的人數(shù),要求輸出字段為:xdh、zydh、人數(shù),查詢結(jié)果按系代號和專業(yè)代號升序排序。三、 設計菜單(5分)圖1項目TEST中已存在菜單MENUL,其中已定義了“文件”、“顯示”和“記錄定位”三個菜單欄,按如下要求修改菜單,完成后的運行效果如圖1所示:1 為“文件”菜單欄下的“恢復系統(tǒng)菜單”設置快捷鍵“CTRL+R”。2 在“文件”菜單欄下插入系統(tǒng)菜單“打印預覽”。3 在“記錄定位”菜單欄下增加“第一條”和“最后一條”兩個菜單項,增加位置如圖1所示。4 為“記錄定位”菜單欄下的“下一條”菜單項設置廢止條件:EOF()。5 為“顯示”菜單欄下的“瀏覽”菜單項設置命令:當執(zhí)行菜單項時,在瀏覽窗口中顯示當前表的內(nèi)容。四、 設計表單(10分)TEST項目中已經(jīng)存在表單FORML,該表單用來查詢學生成績信息。根據(jù)下列要求修改表單,完成以后運行表單,效果如圖2所示。1 分別設置Spinner1和Spinner2微調(diào)控件的有關(guān)屬性,使單擊向上箭頭按鈕時的最大值為100,使單擊向下箭頭按鈕時的最小值為0。2 設置Spinner1的默認值為60,Spinner2的默認值為100。3 用戶按回車鍵,則使“查詢”按鈕得到焦點,并自動執(zhí)行它的Click事件代碼。4 使表格中的數(shù)據(jù)不可以更改,但能獲得焦點。5 已知在表單的Load事件中已經(jīng)建立了一可讀寫的臨時表CUR_CJ,且表單中Grid1的RecordSource屬性已設置為該臨時表。完善“查詢”按鈕的Click事件代碼,使得當點擊該按鈕知表格中顯示指定分數(shù)段的學生成績清單。6 為“退出”按鈕編制相應代碼,當點擊該按鈕時,關(guān)閉臨時表CUR_CJ,同時關(guān)閉表單。圖2五、 程序改錯(5分)下列程序的功能是:顯示10000以內(nèi)所有回文數(shù)的個數(shù)及其平均值。所謂回文數(shù)是指左右數(shù)字完全對稱的自然數(shù)。例如,11、121、1221等都是回文數(shù)。要求:1 項目中有一個程序文件PCODE,將下列程序輸入到其中并進行修改。2 在修改程序時,不允許修改程序的總體框架和算法,不允許增加或減少語句數(shù)目。STORE 0 TO nCount,nSumFOR n=11 TO 10000c1=STR(n)c2=SPACE(0)FOR m=1 TO LEN(c1)c2=SUBSTR(c1,m,1)+c2ENDFORIF c1=c2nCount= nCount+1nSum= nSum+c1ENDIFENDFORWAIT WINDOW”回文數(shù)整個數(shù)及其平均值分別為:”+STR(nCount)+”,”+STR(nSum/ nCount)江蘇省高等學校非計算機專業(yè)學生2004年(春)計算機基礎知識和應用能力等級考試上機試卷二級Visual FoxPro (試卷代號 VFP03)(本試卷完成時間 70分鐘)說明:1.首先運行考試軟盤中的“上機考試”應用程序以輸入考生的準考證號、姓名和試卷代號;2.啟動Visual FoxPro系統(tǒng)后,首先在命令窗口中執(zhí)行命令: SET DEALUT TO A:以設置默認的工作目錄,然后再開始做題。一、 項目、數(shù)據(jù)庫和表操作(12分)打開軟盤根目錄下的項目文件TEST,在該項目中已有一數(shù)據(jù)庫SJK。3 按如下要求修改SJK中課程(KC)表的結(jié)構(gòu):(1) 設置課程代號(kcdh)字段的標題:課程代號(2) 設置kcdh字段的相關(guān)屬性,使kcdh字段在輸入數(shù)據(jù)時自動刪除前導空格。(3) 設置學分(xf)字段的顯示類為微調(diào)框控件。(4) 增加一個備注字段,字段名為kcjj。(5) 創(chuàng)建一個普通索引xf,要求按xf字段降序排序,且僅對學分超過3的課程排序。(6) 為KC表創(chuàng)建記錄級有效性規(guī)則:課時數(shù)(kss)不能少于學分(xf)。4 修改KC表中所有記錄的課程名(kcm)字段值,將各課程的kcdh值插入到課程名前面。5 徹底刪除KC表中kcdh為“25”的記錄。6 為了禁止向KC表中插入記錄,設置KC表的相關(guān)觸發(fā)器。7 KC表已存在主索引kcdh,索引表達式為kcdh,成績(CJ)表已存在普通索引cjkcdh,索引表達式為kcdh。以KC表為主表,CJ表為子表,基于kcdh建立永久關(guān)系,并設置它們之間的參照完整性:更新級聯(lián)。二、 設計查詢(8分)已知數(shù)據(jù)庫SJK中含有視圖BJST,視圖中包含班級編號(bjbh)、系代號(xdh)、系名(ximing)、專業(yè)代號(zydh)和專業(yè)名稱(zymc)字段,按如下要求修改TEST項目中的查詢CHAXUN:基于BJST視圖和學生(XS)表以系為單位,按籍貫(jg)統(tǒng)計各系各地學生的人數(shù),要求輸出字段為:ximing、jg、人數(shù),查詢結(jié)果首先按系名升序排序,同一個系再按人數(shù)降序排序。三、 設計菜單(5分)項目TEST中已存在菜單MENUM,其中已定義了“文件”、“顯示”和“表操作”三個菜單欄。按如下要求修改菜單,完成后的運行效果如圖1所示。1 為“文件”下的“恢復系統(tǒng)菜單”設置快捷鍵“CTRL+R”。2在“文件” 菜單欄下插入系統(tǒng)菜單“導出”。3為“表操作” 菜單欄下的“記錄定位”菜單項圖2設置子菜單,該子菜單包含四個菜單項“第一條”、“上一條”、“下一條”和“最后一條”。4為“表操作”菜單欄下的菜單項“增加記錄”設置命令:當執(zhí)行該菜單項時,在當前表文件中增加一個空白記錄。5 為“顯示” 菜單欄設置訪問鍵“ALT+S”。四、 設計表單(10分)TEST項目中已存在表單FORMM,該表單用來進行學生補考成績查詢,根據(jù)下列要求修改表單,完成以后運行表單,效果如圖2、圖3所示。1 列表框List1中顯示課程代號(kcdh)也課程名(kcm)兩列內(nèi)容。2 在List1的上方加一個標簽,標簽的Caption屬性為“課程列表”。3 表單運行時,頁框初始激活第一頁。4 為List1編制Init事件代碼,使得程序剛運行時光標停在List1的第一行上。5 完善List1的InterActiveChange事件代碼:當選擇不同的課程時,頁框的第一頁顯示該課程的補考人數(shù),第二頁顯示該課程補考學生清單。圖2 圖3 五、 程序改錯(5分)下列程序的功能是驗證命題:若一個三位數(shù)是37的倍數(shù),則將這個三位數(shù)的三個數(shù)字循環(huán)移位得到的另兩個三位數(shù)也是37的倍數(shù)(例如,148是37的倍數(shù),481、814也是37的倍數(shù))。要求:1 項目中有一個程序文件PCODE,將下列程序輸入到其中并進行修改。2 在修改程序時,不允許修改程序的總體框架和算法,不允許增加或減少語句數(shù)目。lResult=.t.FOR n=1 TO 999IF MOD(N,37)#0c=ALLTRIM(STR(n)c1=LEFT(c,1)c2=SUBSTR(c,2,1)c3=RIGHT(c,1)IF MOD(VAL(c1+ c2+ c3),37)#0 OR MOD(VAL(c2+ c3+ c1),37)#0lResult=.f.RETURNENDIFENDIFENDFORWAIT WINDOW IIF(lResult,”命題成立”,”命題不成立”)江蘇省高等學校非計算機專業(yè)學生2004年(春)計算機基礎知識和應用能力等級考試上機試卷二級Visual FoxPro (試卷代號 VFP04)(本試卷完成時間 70分鐘)說明:1.首先運行考試軟盤中的“上機考試”應用程序以輸入考生的準考證號、姓名和試卷代號;2.啟動Visual FoxPro系統(tǒng)后,首先在命令窗口中執(zhí)行命令: SET DEALUT TO A:以設置默認的工作目錄,然后再開始做題。一、項目、數(shù)據(jù)庫和表操作(12分)打開軟盤根目錄下的項目文件TEST,在該項目中已有一數(shù)據(jù)庫SJK。1 如下要求修改SJK中課程(KC)表的結(jié)構(gòu):(1) 設置必修課(bxk)字段的默認值為邏輯真(.T.)(2) 設置課程代號(kcdh)字段的輸入掩碼:課程代號只能是四位數(shù)字字符。(3) 設置bxk字段的顯示類為復選框。(4) 增加日期型字段,字段名為“開設日期”。(5) 為KC表添加注釋:課程基本信息表。2 為KC表創(chuàng)建一個普通索引kcmlen,要求按照課程名(kcm)的實際長度(去掉前后空格以后的長度)從短到長排序。3 徹底刪除KC表中課程名(kcm)為“英國語言文學”的記錄。4 修改KC表中所有記錄的課程名(kcm)字段的值,修改方法是:所有必修課(bxk字段值為.T.)的課程名前加字母“B”,所有非必修課的課程名前加字母“X”。5 設置KC表的有關(guān)觸發(fā)器,使得當任課(RK)表和成績(CJ)表同時打開不允許修改記錄。6 KC表已存在主索引kcdh,索引表達式為kcdh,RK表已存在普通索引kcdh,索引表達式為kcdh,以KC表為主表,RK表為子表,基于kcdh建立永久關(guān)系,并設置它們之間的參照完整性:更新級聯(lián)。二、設計查詢(8分)在TEST項目中已存在查詢CHAXUN,按如下要求修改查詢:基于課程(KC)表和成績(CJ)表查詢尚未有成績登記的那些課程,要求輸出兩個表的所有字段,相同的課程在查詢結(jié)果中只出現(xiàn)一次,且按課程代號(kcdh)升序排序。(提示:使用“左聯(lián)接”聯(lián)接KC和CJ表,然后在結(jié)果中選出CJ表中kcdh字段為Null值的記錄)三、設計菜單(5分)項目TEST中已存在菜單MENUM,其中已定義了“文件”、“課程管理”、“成績管理”和“教師任課管理”四個菜單欄,按如下要求修改菜單,完成后的運行效果如圖1所示:1 為“文件”菜單欄下的“恢復系統(tǒng)菜單”設置快捷鍵“CTRL+R”。2 在“文件”菜單欄下插入系統(tǒng)菜單“關(guān)閉”。圖13 為“教師任課管理”菜單欄設置子菜單,該子菜單包括二個菜單項“教師任課錄入”、“教師任課查詢”,并用分隔線隔開。4 為“成績管理”菜單欄下的菜單項“成績查詢”設置命令:當執(zhí)行該菜單項時,運行當前目錄下的表單文件FORML。5將“課程管理”菜單欄無條件啟用。四、設計表單(10分)TEST項目中已經(jīng)存在表單FORMN,該表單用來查詢學生成績。根據(jù)下列要求修改表單,完成以后運行表單,效果如圖2所示。1 Spinner1和Spinner2由鍵盤輸入時的最小值為0,最大值為100。2 Spinner1和Spinner2中的數(shù)值居中顯示。3 “查詢”按鈕設置訪問鍵“ALT+L”。4 表單運行時不能最大化。5 將表格的橫向滾動條去掉。6 合法性要求:Spinner1的值要小于等于Spinner2的值。在Spinner2的Valid事件中校驗該規(guī)則,當條件不合法時給出提示信息:“設定的查詢范圍不正確!”(如圖3所示),并禁止焦點離開。根據(jù)此要求完善Spinner2的Valid事件代碼。圖3圖2五、程序改錯(5分)下列程序的功能是:顯示1080之間的所有具有abcd=badc(ab,cd)特性的數(shù)。例如,1242=2124,1263=2136,等等。要求:1 項目中有一個程序文件PCODE,將下列程序輸入到其中并進行修改。2 在修改程序時,不允許修改程序的總體框架和算法,不允許增加或減少語句數(shù)目。CLEARnCount=0FOR m=10 TO 80FOR n=m TO 80a=LEFT(ALLT(STR(m),1)b=RIGHT(ALLT(STR(m),1)c=LEFT(ALLT(STR(n),1)d=RIGHT(ALLT(STR(n),1)IF n*m=VAL(ba)*VAL(dc) AND a#b AND c#dnCount= nCount+1?”第”+ALLTRIM(STR(nCount)+”組數(shù):”,m,nENDFENDFENDF江蘇省高等學校非計算機專業(yè)學生2004年(春)計算機基礎知識和應用能力等級考試上機試卷二級Visual FoxPro (試卷代號 VFP05)(本試卷完成時間 70分鐘)說明:1.首先運行考試軟盤中的“上機考試”應用程序以輸入考生的準考證號、姓名和試卷代號;2.啟動Visual FoxPro系統(tǒng)后,首先在命令窗口中執(zhí)行命令: SET DEALUT TO A:以設置默認的工作目錄,然后再開始做題。一、項目、數(shù)據(jù)庫和表操作(12分)打開軟盤根目錄下的項目文件TEST,在該項目中已有一數(shù)據(jù)庫SJK。1 按如下要求修改SJK中工資(GZ)表的結(jié)構(gòu):(1) 將應發(fā)工資(yfgz)字段的數(shù)據(jù)類型修改為貨幣型。(2) 設置工號(gh)字段的格式,使工號字段中的字母自動大寫。(3) 增加貨幣型字段kk。(4) 創(chuàng)建一個普通索引recsort,按物理記錄順序的倒序排序,即記錄號為1的記錄排最后。(5) 為GZ表設置注釋:工資信息表。2 在項目信息中為TEST項目附加圖標文件“A:NET.ICO”。3 計算表GZ中所有教師的醫(yī)療保險(ylbx),計算方法是:醫(yī)療保險是基本工資(jbgz)的6%。4 設置GZ表的記錄級有效性規(guī)則:醫(yī)療保險必須使基本工資(jbgz)的6%,該規(guī)則不對照已有的記錄。5 設置GZ表的更新觸發(fā)器,只有當JS表打開時才能更新GZ表中的數(shù)據(jù)。6 SJK中教師(JS)表已存在主索引jsgh,索引表達式為gh,GZ表已存在主索引gzgh1,索引表達式為gh。以JS表為主表,GZ表為子表,基本gh建立“一對一”的永久關(guān)系,并設置JS表和GZ表之間的參照完整性:刪除限制。二、設計查詢(8分)在成績(CJ)表中插入成績時,如果課程代號(kcdh)輸入了課程(KC)表中所沒有的課程代號,那么該學生的成績就無效,CJ表中這樣的記錄稱為“孤立記錄”,通過查詢可以查詢出這些孤立記錄。在TEST項目中已存在查詢CHAXUN,按如下要求修改查詢:基于課程(KC)表和成績(CJ)表查詢成績表中的“孤立記錄”,要求輸出兩個表的所有字段。相同的行在查詢結(jié)果中只出現(xiàn)一次,且按學號(xh)升序排序。(提示:使用“右聯(lián)接”聯(lián)接KC和CJ表,然后在結(jié)果中選出KC表中kcdh字段為Nnll值的記錄。)三、設計菜單(5分)項目TEST中已存在菜單MENUO,其中已定義了“文件”、“課程管理”、“成績管理”和“教師任課管理”四個菜單欄,按如下要求修改菜單,完成后的運行效果如圖1所示:1 在“文件”菜單欄下插入系統(tǒng)菜單“導出”。圖12 為“成績管理”菜單欄設置子菜單,該子菜單包括二個菜單項“學生成績錄入”、“學生成績查詢”,并用分隔線隔開。3 為“課程管理”菜單欄下的菜單項“課程代碼錄入”設置快捷鍵“CTRL+L”。4 為“課程管理”菜單欄下的菜單項“課程代碼查詢”設置SQL命令,當執(zhí)行該菜單項時,在瀏覽窗口中顯示課程(KC)表中所有記錄的所有字段。5 廢止“教師任課管理”菜單欄。四、設計表單(10分)TEST項目中已經(jīng)存在表單FORM0,該表單用來查詢教師工資信息??梢愿鶕?jù)要查看的工資項目自動調(diào)整右邊表格中顯示的內(nèi)容。根據(jù)下列要求修改表單,完成后運行表單,效果如圖2所示:1 為Grid1的第2列Column中的對象Check設定標題為“選擇”。2 為Grid1各列設置標題如圖2所示。3 為Grid1中工號列和姓名列設置ControlSource屬性,使得工號列和姓名列的內(nèi)容分別與工資(GZ)表的工號、教師(JS)表的姓名相對應。4 表單的數(shù)據(jù)環(huán)境中已經(jīng)添加了工資項目(XM)表,該表已有三各字段:項目名稱(xmmc)、字段名稱(fieldmc)和是否選擇(isxz)?!绊椖棵Q”表示工資表中的工資項目,如基本工資,崗位津貼等,“字段名稱”表示該項目名稱對應GZ表中的哪個字段,如基本工資對應工資表只能感jbgz字段,“是否選擇”表示該工資項目是否要在右邊表格中顯示,如為.T.,則顯示,否則不顯示。已知Grid1的RecordSource屬性值為“XM”,第一列的ControlSource屬性值為“xm.xmmc”,第二列ControlSource屬性值為“xm.isxz”,Grid2中顯示其工資項,否則不顯示其工資項。5 完善表單的Resize事件代碼,使得表單寬度變化時,Grid2的寬度與表單的寬度同步變化。圖2五、程序改錯(5分)下列程序的功能是:找出并顯示一個四位數(shù),它的9倍恰好是其反序數(shù)(反序數(shù)例:1234與4321互為反序數(shù))。要求:7 項目中有一個程序文件PCODE,將下列程序輸入到其中并進行修改。8 在修改程序時,不允許修改程序的總體框架和算法,不允許增加或減少語句數(shù)目。CLEARFOR n=1000 TO 9999a=SUBS(STR(n,4),1)b=SUBS(STR(n,4),2)c=SUBS(STR(n,4),3)d=SUBS(STR(n,4),4)IF n*9=d+c+b+a?nENDIFENDFOR江蘇省高等學校非計算機專業(yè)學生2004年(春)計算機基礎知識和應用能力等級考試上機試卷二級Visual FoxPro (試卷代號 VFP06)(本試卷完成時間 70分鐘)說明:1.首先運行考試軟盤中的“上機考試”應用程序以輸入考生的準考證號、姓名和試卷代號;2.啟動Visual FoxPro系統(tǒng)后,首先在命令窗口中執(zhí)行命令: SET DEALUT TO A:以設置默認的工作目錄,然后再開始做題。一、項目、數(shù)據(jù)庫和表操作(12分)打開軟盤根目錄下的項目文件TEST,在該項目中已有一數(shù)據(jù)庫SJK。1 將如下要求修改SJK中工資(GZ)表的結(jié)構(gòu):(1) 將實發(fā)工資(sfgz)字段的數(shù)據(jù)類型修改為貨幣型。(2) 設置工號(gh)字段的格式,使工號中的字母自動大寫。(3) 刪除yfgz字段。(4) 設置基本工資(jbgz)字段的有效性規(guī)則:基本工資在400元到1800元之間。(5) 創(chuàng)建一個普通索引recsort,按物理記錄順序的倒序排序,即記錄號為1的記錄排最后。(6) 為GZ表設置注釋:教師工資表。2 在項目信息中為TEST項目附加圖標文件“A:NET.ICO”。3 將GZ表中基本工資(jbgz)在1000元以上(包括1000元)記錄的其他(qt字段清為零)。4 設置GZ表的刪除觸發(fā)器,只有當JS表打開時菜允許刪除GZ表中的數(shù)據(jù)。5 JS表已存在主索引jsgh,索引表達式為gh,GZ表已存在主索引gzgh1,索引表達式為gh。以JS表為主表,GZ表為子表,基本gh建立永久關(guān)系,并設置參照完整性:刪除限制。二、設計查詢(8分)按如下要求修改TEST項目中的查詢CHAXUN:為了檢查工資(GZ)表中有沒有遺漏某些教師,可以基于JS表和GZ表查詢出在教師表中存在而在工資、表中不存在的那些教師記錄,要求輸出教師表的所有字段和工資表的工號(gh)字段,查詢結(jié)果中相同的行只需出現(xiàn)一次,并按JS表的gh字段升序排序。(提示:使用“左聯(lián)接”聯(lián)接JS和GZ表,然后在結(jié)果中選出GZ.gh字段為Null值的記錄)三、設計菜單(5分)項目TEST中已存在菜單MENUO,其中已定義了“文件”、“課程管理”、“成績管理”和“教師任課管理”四個菜單欄,按如下要求修改菜單,完成后的運行效果如圖1所示:1 為“文件”菜單欄下的“恢復系統(tǒng)菜單”設置快捷鍵“CTRL+R”。圖12 為“課程管理”菜單欄下的“課程查詢”菜單項設置子菜單,該子菜單包括二個菜單項“課程基本信息查詢”、“學生選課查詢”,并用分隔線隔開。3 為“成績管理”菜單欄下的“成績查詢”菜單項設置命令,當執(zhí)行該菜單項時,調(diào)用當前目錄下的表單文件FORMQ。4 廢止“教師任課管理” 菜單欄下的“教師基本情況查詢”。5 將“CLEAR”命令添加到菜單的“清理”代碼段中。四、設計表單(10分)TEST項目中已經(jīng)存在表單FORMP,該表單用來統(tǒng)計教師基本工資的最高值、最低值和平均值。已知Grid1的RecordSource屬性值為工資(GZ)表,工號列的ControlSource屬性值為gz.gh,基本工資列的ControlSource屬性值為gz.jbgz。當選擇選項按鈕組中的某一項時,在表單中Text1文本框內(nèi)顯示相應的統(tǒng)計值。根據(jù)下列要求修改表單,完成以后運行表單,效果如圖2所示。1 為Grid1中“姓名”列設置ControlSource屬性,使得該列的內(nèi)容與教師表的姓名相對應。2 選項按鈕的默認值為“最高值”。3 Text1可獲得焦點但不可編輯其中的值。4 將“基本工資”列中的數(shù)據(jù)格式設置為:小數(shù)點向左每三位數(shù)字用逗號分隔,如圖2所示。5 完善Op1的Click事件代碼,使點擊不同的選項按鈕時,Text1中顯示相應的統(tǒng)計值。6 在表單的Init事件中添加代碼,該表單運行時Text1中顯示教師基本工資的最高值。圖2 五、程序改錯(5分)有3個非零數(shù)字,用它們可以組合出6個不同的三位數(shù),這些三位數(shù)的和是2886。如果將這3個數(shù)字按從大到小和從小到大的順序依次排列成2個三位數(shù),它們的差是396。下列程序的功能是找出并顯示這3個數(shù)字。要求:1 項目中有一個程序文件PCODE,將下列程序輸入到其中并進行修改。2 在修改程序時,不允許修改程序的總體框架和算法,不允許增加或減少語句數(shù)目。nCount=0FOR a=1 TO 9FOR b=a TO 9FOR c=b TO 9x=ALLT(STR(a)y=ALLT(STR(b)z=ALLT(STR(c)e=MAX(a,b,c)f=MIN(a,b,c)IF VAL(x+y+z) +VAL(x+z+y)+VAL(y+x+z)-VAL(y+z+x)+VAL(z+x+y);+VAL(z+y+x)=2886;OR VAL(e)*100+VAL(f)-VAL(f)*100-VAL(e)=396nCount= nCount+1?”第”+ALLT(STR(nCount)+“組數(shù)字為:”+x+”,”+y+”,”+zENDIFENDFORENDFORENDFOR江蘇省高等學校非計算機專業(yè)學生2004年(春)計算機基礎知識和應用能力等級考試上機試卷二級Visual FoxPro (試卷代號 VFP07)(本試卷完成時間 70分鐘)說明:1.首先運行考試軟盤中的“上機考試”應用程序以輸入考生的準考證號、姓名和試卷代號;2.啟動Visual FoxPro系統(tǒng)后,首先在命令窗口中執(zhí)行命令: SET DEALUT TO A:以設置默認的工作目錄,然后再開始做題。一、項目、數(shù)據(jù)庫和表操作(12分)打開軟盤根目錄下的項目文件TEST,在該項目中已有一數(shù)據(jù)庫SJK。1 按如下要求修改SJK中工資(JS)表的結(jié)構(gòu):(1) 設置gh字段的有關(guān)屬性,使得JS表在瀏覽窗口中,gh列的列表頭顯示為:工號。(2) 設置gh字段的有關(guān)屬性,使gh字段中的字母以大寫形式顯示。(3) 設置xb的顯示類為選項按鈕組。(4) 設置xb字段允許輸入空值Null。(5) 創(chuàng)建一個普通索引,索引名為ghxb,要求按gh字段的首字符和性別(xb)升序排序。2 把軟盤根目錄中的程序文件main.prg添加到TEST項目中的適當位置,并將該文件設置為項目的主文件。3 在JS表中更改所有教師記錄的簡歷(jl),修改方法為:將gzrq轉(zhuǎn)化為字符串,然后在字符串的前面加上“工作日期:”,且不管原來日期是哪一種顯示格式,轉(zhuǎn)化后的字符串格式都為yyyymmdd。如gzrq字段值為08/09/70,則更改以后該記錄簡歷字段的值為“工作日期:19700809”。4 邏輯刪除自由表GZC中工號(gh)首字母不是“F”的記錄。5 為JS 表設置更新觸發(fā)器:GZ表打開時不允許更新數(shù)據(jù)。6 JS表已存在主索引jsgh,索引表達式為gh,RK表已存在普通索引rkgh,索引表達式為gh。以JS表為主表,RK表為子表,基于gh建立永久關(guān)系,并設置JS表和RK表之間的參照完整性:插入限制。二、設計查詢(8分)在TEST項目中已存在查詢CHZXUN,按如下要求修改查詢:為了檢查工資(GZ)表中有沒有輸入錯誤的工號(gh),可以基本教師(JS)表和GZ表查詢出在GZ表中存在而在JS表中不存在的那些記錄,要求輸出JS表的gh字段和GZ表的所有字段,查詢結(jié)果中相同行只需出現(xiàn)一次,并按GZ表的gh字段升序排序。(提示:使用“右聯(lián)接”聯(lián)接JS和GZ表,然后在結(jié)果中選出JS表中g(shù)h字段為Null值的記錄)三、設計菜單(5分)項目中已存在菜單MENUQ,其中已定義了“文件”、“顯示”和“表操作”三個菜單欄,按如下要求修改菜單,完成后運行效果如圖1所示。1 在“文件”菜單欄下增加一個菜單項“恢復系統(tǒng)菜單”,并為它設置命令: set sysmenu to default。圖12 將下列代碼加到菜單的適當位置,使得菜單執(zhí)行時先執(zhí)行該段代碼。IF USED(”gzb”)SELECT gzbELSEUSE gzbENDIF3 為“顯示”菜單欄下的“編輯”菜單項設置命令:EDIT,當執(zhí)行該菜單項時,以編輯方式顯示工資表(GZB)中的記錄。4 為“表操作”菜單欄設置子菜單,該子菜單包括“追加記錄”和“刪除記錄”二個菜單項,5 廢止“刪除記錄”菜單項。四、設計表單(10分)TEST項目中已存在表單FORMQ,該表單用來查詢和錄入學生成績。在下拉組合框中選擇一個學號后,在表格中錄入該學生的所有成績。根據(jù)下列要求修改表單,完成以后運行表單,效果如圖2所示。1 在表格Grid1的“課程號”列后加一列,該列的標題為“課程名”,并將ControlSource屬性設置為課程表(KC)的課程名(kcm)字段。2 表單的標題為“學生成績錄入”。3 修改下拉組合框的有關(guān)屬性,使其展開時能顯示學號和姓名兩列內(nèi)容。4 編寫下拉組合框Init事件代碼,使表單剛運行時,它的值為下拉列表只能感的第一行。5 表單中已添加了新方法AddNew,該方法用來向成績(CJ)表中增加了一條記錄。為“新增”按鈕編制Click事件代碼,當點擊該按鈕時,調(diào)用表單的AddNew方法。圖2五、程序改錯(5分)下列程序的功能時:對密碼組進行譯碼。密碼組是若干個用數(shù)字8分隔的八進制數(shù)組成的字符串,每個八進制數(shù)所對應的十進制是一個字符的ASCII碼。例如:“126810681208”譯碼后顯示為“VFP”。要求:3 項目中有一個程序文件PCODE,將下列程序輸入到其中并進行修改。4 在修改程序時,不允許修改程序的總體框架和算法,不允許增加或減少語句數(shù)目。cString=”126810681208”cResult=SPACE(0)DO WHILE LEN(cString)0m=AT(“8”, cString)cTemp=SUBSTR(cString,1,m)cString=SUBSTR(cString,m+1)x=0FOR n=1 TO LEN(cTemp)x=x*8+VAL(SUBSTR(cTemp,n,1)ENDFORcResult=cResult+ASC(x)ENDDOWAIT WINDOW”譯碼后為:”+ cResult江蘇省高等學校非計算機專業(yè)學生2004年(春)計算機基礎知識和應用能力等級考試上機試卷二級Visual FoxPro (試卷代號 VFP08)(本試卷完成時間 70分鐘)說明:1.首先運行考試軟盤中的“上機考試”應用程序以輸入考生的準考證號、姓名和試卷代號;2.啟動Visual FoxPro系統(tǒng)后,首先在命令窗口中執(zhí)行命令: SET DEALUT TO A:以設置默認的工作目錄,然后再開始做題。一、項目、數(shù)據(jù)庫和表操作(12分)打開軟盤根目錄下的項目文件TEST,在該項目中已有一數(shù)據(jù)庫SJK。1 按如下要求修改SJK中工資(JS)表的結(jié)構(gòu):(1) 設置xm字段的有關(guān)屬性,使得JS表在瀏覽窗口中,xm列的列表頭顯示為:姓名。(2) 設置性別(xb)字段的有效性規(guī)則:xb取值只能是“男”或“女”或Null值。(3) 設置xb字段允許輸入空值(Null)。(4) 將xb的默認值設置為空值(N
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 蔬果罐頭生產(chǎn)環(huán)境與設施衛(wèi)生管理考核試卷
- 郵件包裹運輸與城市物流配送協(xié)同考核試卷
- 心肌梗塞急救教學
- 葡萄胎疾病的護理
- 新兵應急救護常識
- 急性上呼吸道異物梗阻急救處理
- 遏制人工智能的惡意使用(2025)中文
- 當虹科技公司深度報告:預研成果步入落地期智能座艙、工業(yè)及衛(wèi)星驅(qū)動新增長
- 2025年科技企業(yè)孵化器建設資金申請關(guān)鍵指標與評估報告
- 新消費時代2025年寵物市場細分需求洞察:寵物用品與配件創(chuàng)新方向報告
- 中職數(shù)學基礎模塊上下冊全套同步練習題含答案
- 《愛的教育》課外閱讀指導課正式版
- 2020年現(xiàn)行房屋建筑工程常用材料進場取樣復試檢驗項目規(guī)范
- 《基礎化學》考試復習題庫大全(600多題)
- 分保、等保、關(guān)保、密評之間聯(lián)系與區(qū)別
- 典當行組織架構(gòu)和崗位設置
- 【課件】自律主題班會
- LS/T 1201-2020磷化氫熏蒸技術(shù)規(guī)程
- GB/T 24025-2009環(huán)境標志和聲明Ⅲ型環(huán)境聲明原則和程序
- GB/T 18402-2001紙漿濾水性能的測定(濾水時間法)
- GB/T 156-2017標準電壓
評論
0/150
提交評論