江蘇省高校計算機等級考試命題研究院 江蘇省高校計算機等級考試輔導
2012秋江蘇省計算機二級VFP上機真題1

2012秋江蘇省高校計算機等級考試

二級Visual  Foxpro試卷

(本試卷完成時間為70分鐘)

 1.首先登錄考生信息,然后啟動VFP并在命令窗口中執行如下命令,以設置默認的工作

   目錄:

   set defa to T:

 2.除非題目要求,否則不要對T盤上的文件進行重命名、復制和刪除操作。

  一、項目、數據庫和表操作(12)

  打開T盤根目錄中的項目文件JXGL,在該項目中已有一數據庫JXSJ 

  1JXSJ數據庫中按下表所示的結構創建TABDBF,并按表格后的要求設置相關屬性。 

字段名

數據類型

寬度

字段標題

NO

I

 

屆數

JBG

C

20

舉辦國

JBCS

C

20

舉辦城市

NF

C

4

舉辦年份

 

(1)設置TAB表的注釋:奧運舉辦歷史表;   

(2)設置NF字段驗證規則及信息舉辦年份必須在1896年至2012年之間;

(3)設置NO字段的默認值:表記錄個數加1;

(4)N0字段創建主索引,索引名為ABCD    1

2.在TAB表中輸入如下記錄:

NO

JBG

JBCS

NF

1

希臘

雅典

1896

3.根據成績字段值修改CJB表中備注字段的數據:若成績字段值為90100,則備注字段中寫“優秀;成績字段值為8089,則備注字段中寫“良好;成績字段值為6079,則備注字段中寫入“及格;成績字段值為059,則備注字段中寫入“不及格

  4.設置CJ表的更新觸發器,要求課程代碼為“60023的記錄不允許修改。

  5.已知JS表已存在主索引GH,索引表達式為GH;KCAP表已存在普通索引GH,索引表達式為GH。以js表為主表、KCAP表為子表,基于GH索引建立永久關系,并設置兩表之間的參照完整性:插入限制。   

  二、設計查詢(8)

  已知在JXSJ數據庫的學生(XS)表中含有學號(XH)、院系專業代碼(YXZYDM)等字段;學生就業(XSJY)表中含有學號(XH)、就業類型(JYLX)等字段。按如下要求修改查詢CHAXUN

  基于XS表和XSJY表查詢各院系專業04(學號的前2為“04)學生的就業率,要求輸出字段包括YXZYDM、就業率,輸出結果按就業率排序。(注:假定XS表中某一學生的XH字段的值在XSJY表中出現,則表示該學生就業;否則表示未就業提示使用左聯接,通過判斷JYLX字段的值是否為NULL確定該學生是否就業)

  三、設計菜單(5)

  項目JXGL中已存在菜單MENU,利用菜單設計器按如下要求修改菜單,完成后的運行效果如圖1所示。

 

  1.為“系統管理菜單欄設置訪問鍵”S”

  2.增加“學生成績管理菜單欄及其子菜單“學生成績錄入和“學生成績查詢”,在菜單項之間設置分組線,并且設置快捷鍵Ctrl+ICtrl+Q

  3.為“學生成績錄入菜單項設置過程:首先打開學生成績表(CJB),然后在其中增加條空記錄,并以編輯方式顯示該記錄。

  4.為“學生成績查詢菜單項設置命令:運行根目錄下的表單文件XSCJCXSCX

  四、設計表單(10)

  表單FRMl2A用于顯示代碼表(DMB..DBF)。按下列要求修改表單,修改后表單運行時如圖2所示。

 

    1.設置表單的有關屬性,使表單的標題為“代碼、圖標為PCICO文件,并且表單無最大化和最小化按鈕。

  2.將表格控件設置為只讀,且無水平滾動條。

  3.在表格控件的左側添加一個選項按鈕組控件,并設置有關屬性,使其有3個選項按鈕,按鈕的標題分別為“政治面貌、“文化程度和“民族”,選項按鈕的Value屬性值為“無”(即初始運行時無選項按鈕選中)

  4.為選項按鈕組編寫InterAetiveChange事件代碼,.其功能是根據選項控制表格中顯示的數據。要求用三條語句實現:

(1)將選項按鈕的Value屬性值賦給變量x;

(2)根據選項(變量x的值)DMB表進行篩選,僅顯示lx為“政治面貌、“文化程度或“民族的記錄;

(3)刷新表單。

  五、程序改錯(5)  

  下列程序的功能是用數字19組成3個三位數(每個數字只能用一次),且每個三位數都是一個平方數。要求:

    1.項目中有一個程序文件Pcode,T盤中VFP01.TXT中的程序代碼復制到其中并進行修改。

    2.在修改程序時,不允許修改程序的總體框架和算法,不允許增加或減少語句數目。

1    CLEAR

2    n=0

3    FOR i=101 TO 999    &&3位不含數字0的平方數存放在數組中  

4      IF SQRT(i)=INT(SQRT(i)) AND !’0’$STR(i)

5        n=n+1

6        DIME b(n)

7        b(n)=STR(n,3)

8      ENDIF

9    ENDFOR

10    FOR i=1 To n-2

11      FOR i=i TO n-1

12        FOR k=j TO n

13          c=B(i)+B(j)+B(k)

14          FOR m=1 T0 9

15            IF !STR(m,1)$c

16             L00P

17            ENDIF

18          ENDFOR

19         IF m>9

20           ?三個3位的平方數為:,b(i),b(j),b(k)

21         ENDIF   

22        ENDFOR

23      ENDFOR

24    ENDFOR

    參考答案

  一、項目、數據庫和表操作

  NF字段的有效性規則:NF>=1896ANDNF="2012

  NO字段的默認值:RECCOUNT()+1

  CJ表的更新觸發器:.NOTKCDM=60023

  主索引表達式:NO

  二、設計查詢

    SELECT XS.YXZYDM,SUM(IIF(ISNULL(JYLX),0,1))/CNT(*) As 就業率;

      FROM JXSJ!XS LEFT OUTER JOIN JXSJ!XSJY;

       ON XS.XH=XSJY.XH;

      WHERE LEFT(XS.BJBH,2)="04;

       GROUP BY XS.YXZYDM;

          ORDER BY 2

  三、設計菜單

  學生成績錄入菜單項的過程:

    USE CJB   

    APPEND BLANK

    EDIT   

  學生成績查詢菜單項的命令:DO FORM XSCJCX

五、程序改錯

7  b(n)=str(n,3)       改為b(n)=STR(i,3)

16  END  IF          改為EXIT

 

 

彩票30选5开奖结果