2013秋江蘇省計算機二級VFP上機真題第1套 |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
江蘇省高等學校非計算機專業學生 2013年(秋)計算機基礎知識和應用能力等級考試上機試卷 二級 Visual FoxPro (試卷代號VFP01) (本試卷完成時間70分鐘) 1.首先登錄考生信息 2.啟動VFP系統后。首先在命令窗口中執行下列命令,以設置默認的工作目錄 SET DEFA TO T: 3.除非題目要求,否則不要對T盤上的文件進行重命名、 一、項目、數據庫和表操作(12分) 打開T盤根目錄中的項目文件JXGL,在該項目中已有一數據庫JXSJ。 1.在JXSJ數據庫中按如下表格中所示的結構創建AB.dbf表,并按表格后的要求設置相關 屬性
(1)設置表的注釋:畢業生就業情況一覽表; (2)設置XH字段的輸入掩碼:只能輸入12位數字; (3)設置SFJY的默認值:.F.; (4)設置表的插入觸發器:只能插入2013年畢業的學生。 (5)創建普通索引,索引名為abcd,要求按學號的前9位排序,學號前9位相同時將已就業的學生排在前面,未就業的學生排在后面 2.在AB表中輸入如下記錄:
3.在項目中新建一個程序文件,文件名為MP,該程序的功能是:打開CJB表,并在瀏覽窗口顯示記錄 4.已知kc表與CJ表具有相同的字段KCDM。以kc表為主表、cj表為子表,基于kcdm索引建立永久關系,并設置它們之間的參照完整性:刪除限制,插入限制 二、設計查詢(8分) 已知JXGL項目管理器中的圖書(TSB)表含有分類號(FLH)、書名(SM)等字段,借閱(JYB)表含有分類號(FLH)、讀者類型(LX)等字段,LX字段值為”J”表示讀者為教師,LX字段值為”X”表示讀者為學生。按如下要求修改查詢CHAXUN: 基于TSB表和JYB查詢每本圖書借閱情況,要求輸出字段包括:TSB.FLH、TSB.SM、被借次數、教師借閱次數。輸出結果按被借次數降序,被借次數相同按FLH排序,查詢結果僅輸出被借次數在5次以上(包括5次)的記錄 三、設計菜單(5分) 項目JXGL中已存在菜單MENU,利用菜單設計器按如下要求修改菜單,完成后的運行效果如圖1所示。 1.增加"常用工具"菜單欄及其子菜單"記事本"、"計算器"、和"圖片處理",在菜單項之間設置分組線,并且為"計算器"設置快捷鍵CTRL+Q。 2.為"圖片處理"菜單創建子菜單"Windows畫圖軟件"和"Photoshop",在菜單項之間設置分 組線,并且為兩個菜單項分別設置訪問鍵”W”和”P”。 3.為"記事本"菜單項設置命令:啟動Windows中的記事本(注:使用RUN命令調用Window。 下的Notepad.exe)。 四、設計表單(10分) 表單FMQ 1.設置表單的有關屬性,使表單標題為”選擇鼠標形狀”, 運行時自動居中、無最大化和最小化按鈕。 2.在列表框控件右方添加一個命令按鈕控件,然后設置有關屬性使其無標題但顯示由EXIT.ICO文件指定的圖標,再編寫其Click事件代碼,其功能是釋放當前表單 3.修改列表框的RowSource屬性值,在列表的末尾增加一個”沙漏”數據項。 4.完善列表框控件的MouseUp事件代碼,其功能是:鼠標選定列表框中某一選項時,使鼠標指針的形狀變成該選項內容所指定的形狀(如圖2所示,選定列表框中的”沙漏”選項時,鼠標指針位于列表框范圍內則鼠標指針形狀為”沙漏”) 五、程序改錯(5分) 下列程序的功能是利用隨機函數RAND()隨機產生100個100以內的整數,統計它們在0--49和50--100之間出現的次數,要求: 1.項目中有一個程序文件Pcode,將T盤中VFP01.TXT中的程序代碼復制到其中并進行修改 2.在修改程序時,不允許修改程序的總體框架和算法,不允許增加或減少語句數目 Create Cursor cur1(r i) For i=1 To 100 Insert Into cur1 Values (Int( EndFor Select cur1 Skip Top n=0 Do while Not Eof() If cur1.r>49 n=n-1 EndIf Skip EndDO Clear ?”小于50的次數是:”+ Str(100-n,2) ?”大于或等于50的次數是:”+Str(n,2) Use 參考答案 一、項目、數據庫和表操作 XH字段輸入掩碼: 999999999999 SFJY字段默認值表達式: .F. 索引表達式: LEFT(XH,9)+IIF(SFJY,”0”,”1”) 觸發器表達式: YEAR(BYRQ)=2013 MP程序文件代碼: USE CJB BROWSE 或者 SELECT * FROM CJB 二:設計查詢 SELECT TSB.FLH, TSB.SM, COUNT(*) AS 被借次數, ; SUM(IIF(LX=’J’,1,0)) AS 教師借閱次數; FROM TSB INNER JOIN JYB; ON TSB.FLH=JYB.FLH; GROUP BY TSB.FLH; HAVING COUNT(*)>=5; ORDER BY 3 DESC,TSB,FLH DESC 三、設計菜單 略 四、設計表單
五、程序改錯 第6行 SKIP TOP 修改為 : GO TOP 第10行 n=n-1 修改為: n=n+1
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||