2023年計算機等級考試二級VisualFoxPro上機試題及解題思路匯總120_第1頁
2023年計算機等級考試二級VisualFoxPro上機試題及解題思路匯總120_第2頁
2023年計算機等級考試二級VisualFoxPro上機試題及解題思路匯總120_第3頁
2023年計算機等級考試二級VisualFoxPro上機試題及解題思路匯總120_第4頁
2023年計算機等級考試二級VisualFoxPro上機試題及解題思路匯總120_第5頁
已閱讀5頁,還剩46頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

計算機等級考試二級VisualFoxPro上機試題及解題思緒匯總1-20一、基本操作題(共4小題,第1和2題是7分、第3和4題是8分)?注意:基本操作題為4道SQL題,請將每道題的SQL命令粘貼到SQL1.txt文獻,

每條命令占一行,第1道題的命令是第1行,第2道題的命令是第2行,以此類推;

假如某道題沒有做相應行為空。

在考生文獻夾下完畢下列操作:?1.運用SQLSELECT命令將表stock_sl.dbf復制到stock_bk.dbf;?2.運用SQLINSERT命令插入記錄("600028",4.36,4.60,5500)到stock_bk.dbf表。?3.運用SQLUPDATE命令將stock_bk.dbf表中"股票代碼"為600007的股票"現(xiàn)價"改為8.88。?4.運用SQLDELETE命令刪除stock_bk.dbf表中"股票代碼"為600000的股票。?本題的重要考核點:

SQL語句的使用。?1、SELE*FROMstock_slINTODBFstock_bk

2、INSEINTOstock_bk(股票代碼,買入價,現(xiàn)價,持有數量)VALU("600028",4.36,4.60,5500)

3、UPDAstock_bkSET現(xiàn)價=8.88WHER股票代碼="600007"?4、DELEFROMstock_bkWHER股票代碼="600000"

二、簡樸應用(2小題,每題20分,計40分)

1、在考生文獻夾下建立數據庫sc2,將考生文獻夾下的自由表score2添加進sc2中。根據score2表建立一個視圖score_view,視圖中包含的字段與score2表相同,但視圖中只能查詢到積分小于等于1500的信息。然后運用新建立的視圖查詢視圖中的所有信息,并將結果按積分升序存入表v2。

2、建立一個菜單filemenu,涉及兩個菜單項"文獻"和"幫助","文獻"將激活子菜單,該子菜單涉及"打開"、"存為"和"關閉"三個菜單項;"關閉"子菜單項用SETSYSMENUTODEFAULT命令返回到系統(tǒng)菜單,其他菜單項的功能不做規(guī)定。?第1題,本題的重要考核點是視圖的建立。?在"項目管理器"中選擇一個數據庫,選擇"本地視圖",然后選擇"新建"按鈕,打開"視圖設計器"。選擇所有字段,在"篩選"欄內輸入條件"積分<=1500",關閉并保存。在數據庫設計器中打開視圖,用sorton積分tov2命令存入新表。

第2題,本題的重要考核點是菜單的建立。新建菜單可按下列環(huán)節(jié):選擇"文獻"菜單中的"新建"命令,在"新建"對話框中選擇"菜單",單擊"新建文獻"按鈕。在"新建菜單"對話框中選擇"菜單"按鈕,調出"菜單設計器"。也可用CREATEMENU命令直接調出菜單設計器。在菜單名稱中填入"文獻"、"幫助","文獻"結果為子菜單,單擊編輯;在子菜單的菜單名稱中輸入"打開"、"存為"、"關閉","關閉"結果為命令"SETSYSMENUTODEFAULT"。?三、綜合應用(1小題,計30分)?在考生文獻夾下有學生成績數據庫XUESHENG3,涉及如下所示三個表文獻以及相關的索引文獻:?1、XS.DBF(學生文獻:學號C8,姓名C8,性別C2,班級C5;另有索引文獻XS.IDX,索引鍵:學號)?2、CJ.DBF(成績文獻:學號C8,課程名C20,成績N5.1;另有索引文獻CJ.IDX,索引鍵:學號)

3、CJB.DBF(成績表文獻:學號C8,姓名C8,班級C5,課程名C12,成績N5.1)?設計一個名為XS3的菜單,菜單中有兩個菜單項"計算"和"退出"。程序運營時,單擊"計算"菜單項應完畢下列操作:將所有選修了"計算機基礎"的學生的"計算機基礎"成績,按成績由高到低的順序填列到成績表文獻CJB.DBF中(事前須將文獻中原有數據清空)。單擊"退出"菜單項,程序終止運營。

(注:相關數據表文獻存在于考生文獻夾下)?本題的重要考核點:?結構化查詢語言(SQL)中的聯(lián)接查詢、查詢的排序、查詢的去向等知識?解題思緒:?在本題中要想得到所有選修了"計算機基礎"的學生的"計算機基礎"成績及學生的姓名等信息,就需要用到聯(lián)接查詢。由于學生的姓名、班級在表XS.DBF中,而學生的成績在表CJ.DBF中。而這兩個表要聯(lián)接起來可以通過"學號"字段。?有以下兩種聯(lián)接查詢的形式:SELECTXS.學號,姓名,班級,課程名,成績FROMXS,CJWHEREXS.學號=CJ.學號AND課程名="計算機基礎"或者SELECTXS.學號,姓名,班級,課程名,成績FROMXSLEFTJIONCJONXS.學號=CJ.學號WHERE課程名="計算機基礎"

通過以上的聯(lián)接查詢便得到了所有選修"計算機基礎"的學生的"計算機基礎"的成績及學生的姓名等信息。而題中所規(guī)定按成績的降序排序,所以應當在以上SQL語句的基礎上加入:ORDERBY成績DESC

將查詢所得到的結果放于一個數組變量AFieldsValue中,要用到INTOARRAYAFieldsValue.至此一個完整的SQL聯(lián)接查詢語句便形成了:SELECTXS.學號,姓名,班級,課程名,成績FROMXS,CJWHEREXS.學號=CJ.學號AND課程名="計算機基礎"ORDERBY成績DESCINTOARRAYAFieldsValue

清空CJB.DBF

將tableName中的資料添加到已被清空的CJB.DBF中INSERTINTOCJBFROMARRAYAfieldsValue一、基本操作題(共4小題,第1和2題是7分、第3和4題是8分)

在考生文獻夾下完畢下列操作(在"成績管理"數據庫中完畢):

1.為"學生"表在"學號"字段上建立升序主索引,索引名為學號;

2.為"學生"表的"性別"字段定義有效性規(guī)則,規(guī)則表達式為性別$"男女"犯錯提醒信息是:"性別必須是男或女"。?3.在"學生"表的"性別"和"年齡"字段之間插入一個"出生日期"字段,數據類型為"日期型"(修改表結構);

4.用SQL的UPDATE命令將學生"王三風"的出生日期修改為1983年5月1日,并將該

語句粘貼在SQL2.TXT文獻中(第一行、只占一行)

本題的重要考核點:?主索引的建立、字段有效規(guī)則的建立,表結構的更改,SQL語言的使用。?解題思緒:?1.在表設計器中的索引頁面建立索引。

2、建立有效性規(guī)則在表設計器中的字段選項卡。在"規(guī)則"欄中輸入"性別$"男女"","提醒信息"欄輸入"性別必須是男或女"(不要雙引號)。?4.SQL語句的用法?UPDA學生SET出生日期={^1983/05/01}WHER姓名="王三風"?二、簡樸應用(2小題,每題20分,計40分)?1、根據考生文獻夾下的txl表和jsh表建立一個查詢query2,查詢出單位是"南京大學"的所有教師的姓名、職稱、電話,規(guī)定查詢去向是表,表名是query2.dbf,并執(zhí)行該查詢。

2、建立表單enterf,表單中有兩個命令按鈕,按鈕的名稱分別為cmdin和

cmdout,標題分別為"進入"和"退出"。?第1題,本題的重要考核點是建立查詢。?建立查詢可以使用“文獻”菜單完畢,選擇文獻--新建--查詢--新建文獻,將txl和jsh添加入查詢中,從字段中選擇姓名、職稱和電話字段,單擊查詢菜單下的查詢去向,選擇表,輸入表名query2.DBF。最后運營該查詢。

第2題,本題的重要考核點是表單的建立。

可以用三種方法調用表單設計器:在項目管理器環(huán)境下調用;單擊“文獻”菜單中的“新建”,打開“新建”對話框,選擇“表單”;在命令窗口輸入CREATEFORM命令。?打開表單設計器后,在表單控件工具欄上單擊“命令按鈕”,在表單上放置兩個按鈕。分別修改其屬性Name為cmdin和cmdout,Caption屬性為“進入”和“退出”。

三、綜合應用(1小題,計30分)

在考生文獻夾下有倉庫數據庫CK3,涉及如下所示兩個表文獻:?CK(倉庫號C(4),城市C(8),面積N(4))

ZG(倉庫號C(4),職工號C(4),工資N(4))?設計一個名為ZG3的菜單,菜單中有兩個菜單項"記錄"和"退出"。程序運營時,單擊"記錄"菜單項應完畢下列操作:檢索出所有職工的工資都大于1220元的職工所管理的倉庫信息,將結果保存在wh1數據表(WH1為自由表)文獻中,該文獻的結構和CK數據表文獻的結構一致,并按面積升序排序。單擊"退出"菜單項,程序終止運營。(注:相關數據表文獻存在于考生文獻夾下)本題重要考核點:?菜單的建立、結構化查詢語言(SQL)中的嵌套查詢、查詢結果的去向等知識。?解題思緒:?運用菜單設計器定義兩個菜單項,在菜單名稱為"記錄"的菜單項的結果列中選擇"過程",并通過單擊"編輯"按鈕打開一個窗中來添加"記錄"菜單項要執(zhí)行的命令。在菜單名稱為"退出"的菜單項的結果列中選擇"命令",并在后面的"選項"列中輸入以下退出菜單的命令:SETSYSMENUTODEFAULT?"記錄"菜單項要執(zhí)行的程序:

一方面中打開數據庫文獻OPENDATABASECK3.DBC?下面我們分析所要用到的查詢語句的實現(xiàn),題面規(guī)定"檢索出所有職工的工資都大于1220的職工所管理的倉庫信息",所以得到滿足以上條件的倉庫號成為解答本題的關鍵。"所有職工的工資都大于1220的職工所管理的倉庫"這個條件可以將其分解為同時滿足以下兩個條件的結果"倉庫號不存在于職工的工資小于等于1220的職工所管理的倉庫號中"并且"倉庫號存在于表ZG中",而以上兩個條件我們可以運用SQL輕松寫出來。所以最后形成的查詢語句以下:SELECT*FROMCKWHERE倉庫號NOTIN(SELECT倉庫號FROMZGWHERE工資<=1220)AND倉庫號IN(SELECT倉庫號FROMZG)INTOTABLEwh1.dbf.后面的INTOTABLEwh1.dbf決定了查詢的結果是生成一個wh1.dbf文獻。

本題還考對查詢的排序和查詢的去向進行了考核.可以用ORDERBYorder_Item[ASC|DESC]來讓查詢的結果按某一列或某幾列的升序(ASC)或降序(DESC)進行排列。而查詢的去向可以通過INTOTABLEstrTableName而直接生成一個文獻名為strTableName的.DBF表一、基本操作(共四小題,第1和2題是7分、第3和4題是8分

1、請在考生文獻夾下建立一個數據庫KS4。

2、將考生文獻夾下的自由表STUD、COUR、SCOR加入到數據庫KS4中。?3、為STUD表建立主索引,索引名和索引表達式均為學號

為COUR表建立主索引,索引名和索引表達式均為課程編號?為SCOR表建立兩個普通索引,其中一個索引名和索引表達式均為學號;另一個索引名和索引表達式均為課程編號

4、在以上建立的各個索引的基礎上為三個表建立聯(lián)系。?本題的重要考核點:

數據庫的建立、將自由表添加到數據庫中、主索引和普通索引的建立,為已建立索引的表建立聯(lián)系。

解題思緒:?1.建立數據庫的常用方法有三種:

在項目管理器中建立數據庫;

通過"新建"對話框建立數據庫;

使用命令交互建立數據庫,命令為:CREATEDATABASE[DatabaseName|?]?2.將自由表添加到數據庫中,可以在項目管理器或數據庫設計器中完畢。打開數據庫設計器,在"數據庫"菜單中或在數據庫設計器上單擊右鍵彈出的菜單中選擇"添加表",然后在"打開"對話框中選擇要添加到當前數據庫的自由表。還可用ADDTABLE命令添加一個自由表到當前數據庫中。

3.在STUD表設計器中的索引選項卡建立索引名和索引表達式為學號的主索引。分別為COUR和SCOR建立主索引和普通索引。?4.在數據庫設計器中建立三個表的聯(lián)系。在數據庫設計器中,將選中STUD表中的主索引"學號",按住鼠標拖動到SCOR表的普通索引"學號"上。

用同樣的方法可以建立COUR表和SCOR表的"課程編號"之間的聯(lián)系。

二、簡樸應用(2小題,每題20分,計40分)?1、在考生文獻夾中有一個數據庫STSC,其中有數據庫表STUDENT、SCORE和

COURSE

運用SQL語句查詢選修了"網絡工程"課程的學生的所有信息,并將結果按學號降序存放在NETP.DBF文獻中(庫的結構同STUDENT,并在其后加入課程號和課程名字段)。?2、在考生文獻夾中有一個數據庫STSC,其中有數據庫表STUDENT,使用一對多報表向導制作一個名為CJ2的報表,存放在考生文獻夾中規(guī)定:選擇父表STUDENT表中學號和姓名字段,從子表SCORE中選擇課程號和成績,排序字段選擇學號(升序),報表式樣為簡報式,方向為縱向。報表標題為"學生成績表"。

第1題,本題的重要考核點是SQL語句的查詢。?SELECTStudent.*,Score.課程號,Course.課程名;

FROMstsc!studentINNERJOINstsc!score;?INNERJOINstsc!course;

ONScore.課程號=Course.課程號;?ONStudent.學號=Score.學號;

WHEREAT("網絡工程",Course.課程名)>0;

ORDERBYStudent.學號desc;

INTOTABLEnetp.dbf?第2題,本題的重要考核點是使用報表向導制作報表。

啟動報表向導可在"文獻"菜單中選擇"新建"或者單擊工具欄上的"新建"按鈕,打開"新建"對話框,文獻類型選擇報表,單擊向導按鈕?;蛘咴?工具"菜單中選擇"向導"子菜單,選擇?"報表",或直接單擊工具欄上的"報表向導"圖標按鈕。然后按照向導提醒操作即可。

三、綜合應用(1小題,計30分)?在考生文獻夾下有工資數據庫WAGE3,涉及數據表文獻:ZG(倉庫號C(4),?職工號C(4),工資N(4))?設計一個名為TJ3的菜單,菜單中有兩個菜單項"記錄"和"退出"。?程序運營時,單擊"記錄"菜單項應完畢下列操作:檢索出工資小于或等于本倉庫職工平均工資的職工信息,并將這些職工信息按照倉庫號升序,在倉庫號相同的情況下再按職工號升序存放到EMP1(EMP1為自由表)文獻中,該數據表文獻和ZG數據表文獻具有相同的結構。單擊"退出"菜單項,程序終止運營。?(注:相關數據表文獻存在于考生文獻夾下)

本題重要考核點:

菜單的建立、結構化查詢語言(SQL)中的聯(lián)接查詢、查詢的排序、臨時表的概念、查詢結果的去向等知識。

解題思緒:?運用菜單設計器定義兩個菜單項,在菜單名稱為"記錄"的菜單項的結果列中選擇"過程",并通過單擊"編輯"按鈕打開一個窗中來添加"記錄"菜單項要執(zhí)行的命令。在菜單名稱為"退出"的菜單項的結果列中選擇"命令",并在后面的"選項"列中輸入以下退出菜單的命令:SETSYSMENUTODEFAULT

"記錄"菜單項要執(zhí)行的程序:

一方面是打開數據庫文獻OPNEDATABASEWAGE3.DBC我們應當得到每一個倉庫的職工平均工資,并將結果放在一個臨時的表CurTable中.運用以下語句可以實現(xiàn):SELECT倉庫號,AVG(工資)ASAvgGZFROMZGGROUPBY倉庫號INTOCURSORCurTable.這樣就生成了一個表名為CurTable的臨時表。表中有兩個字段:倉庫號,AvgGZ,內容為每一個倉庫的倉庫號和所相應的職工的平均工資。

有了臨時表CurTable后我們可以將其與ZG進行聯(lián)接查詢,我們這里聯(lián)接查詢的目的不是為了得到臨時表中的內容做為結果的一部分,而是要用其中的字段AvgGZ做為查詢的條件.我們便可以得到"工資小于或低于本倉庫職工平均工資的職工信息"的查詢:SELECTZG.*FROMZG,CurTableWHEREZG.倉庫號=CurTable.倉庫號ANDZG.工資。一、基本操作題(共四小題,第1和2題是7分、第3和4題是8分)?1、請在考生文獻夾下建立一個項目WY。?2、將考生文獻夾下的數據庫KS4加入到新建的項目WY中去。?3、運用視圖設計器在數據庫中建立視圖NEW_VIEW,視圖涉及GJHY表的所有字段(順序同GJHY中的字段)和所有記錄。?4、從表HJQK中查詢"獎級"為一等的學生的所有信息(HJQK表的所有字段),并按分數的降序存入存入新表NEW1中。?本題的重要考核點:?項目的建立、將數據庫添加到項目中、視圖的建立、查詢并存入新表。

解題思緒:

1.建立項目WY

創(chuàng)建項目可用“文獻”菜單中的“新建”命令。

2.將數據庫加入到項目中:

在項目管理器的“數據”選項卡選擇數據庫,單擊“添加”,在“打開”對話框中選擇要添加的數據庫?3.在新建對話框中、項目管理器中、或用CREATVIEW命令打開視圖設計器,建立一個視圖。將GJHY表添加到視圖中,并將所有字段添加入視圖。不做任何篩選,則視圖涉及所有記錄。最后將視圖命名為NEW_VIEW。?4.用SQL語句?select*fromhjqk.dbfwhere獎級="一等";

intotablenew1orderby分數desc

可完畢此查詢。?也可建立一個查詢完畢。在菜單中選擇文獻--新建--查詢--新建文獻,在篩選欄中選擇字段名為“hjqk.獎級”,條件為“=”,實例欄內輸入“一等”,排序選擇“分數”降序,并將查詢去向設為表NEW1。注意NEW1要保存到考生文獻夾下。最后運營此查詢即可。

二、簡樸應用(2小題,每題20分,計40分)?1、在考生文獻夾下,有一個數據庫CADB,其中有數據庫表ZXKC和ZX。?表結構如下:?ZXKC(產品編號,品名,需求量,進貨日期)

ZX(品名,規(guī)格,單價,數量)?在表單向導中選取一對多表單向導創(chuàng)建一個表單。規(guī)定:從父表zxkc中選取字段產品編號和品名,從子表zx中選取字段規(guī)格和單價,表單樣式選?。㈥幱笆?,按鈕類型使用"文本按鈕",按產品編號升序排序,表單標題為"照相機",最后將表單存放在考生文獻夾中,表單文獻名是form2。

2、在考生文獻夾中有數據庫CADB,其中有數據庫表ZXKC和ZX。建立單價大于等于800,按規(guī)格升序排序的本地視圖CAMELIST,該視圖按順序包含字段產品編號、品名、規(guī)格和單價,然后使用新建立的視圖查詢視圖中的所有信息,并將結果存入表v_camera。?第1題,本題的重要考核點是使用表單向導制作表單。?啟動表單向導可在“文獻”菜單中選擇“新建”或者單擊工具欄上的“新建”按鈕,打開“新建”對話框,文獻類型選擇表單,單擊向導按鈕。或者在“工具”菜單中選擇“向導”子菜單,選擇“表單”,或直接單擊工具欄上的“表單向導”圖標按鈕。在“向導選取”對話框中選擇“一對多表單向導”。然后按照表單向導操作即可。?第2題,本題的重要考核點是建立視圖。?在“項目管理器”中選擇一個數據庫,選擇“本地視圖”,然后選擇“新建”按鈕,打開“視圖設計器”。將zxkc和zx添加到視圖中,選擇字段產品編號、品名、規(guī)格和單價,在“篩選”欄內輸入條件“單價>=800”,關閉并保存。在數據庫設計器中打開視圖,用copytov_camera命令或在“文獻”菜單中選擇“導出”,將結果存入新表v_camera。

三、綜合應用(1小題,計30分)

在考生文獻夾下有倉庫數據庫CHAXUN3涉及三個表文獻:?ZG(倉庫號C(4),職工號C(4),工資N(4))?DGD(職工號C(4),供應商號C(4),訂購單號C(4),訂購日期D,總金額N(10))GYS(供應商號C(4),供應商名C(16),地址C(10))

設計一個名為CX3的菜單,菜單中有兩個菜單項"查詢"和"退出"。

程序運營時,單擊"查詢"應完畢下列操作:檢索出工資多于1230元的職工向北京的供應商發(fā)出的訂購單信息,并將結果按總金額降序排列存放在ord1文獻(和DGD文獻具有相同的結構,ord1為自由表)中。單擊"退出"菜單項,程序終止運營。?(注:相關數據表文獻存在于考生文獻夾下)?本題重要考核點:?菜單的建立、結構化查詢語言(SQL)中的嵌套查詢、查詢的排序、查詢結果的去向等知識

解題思緒:

運用菜單設計器定義兩個菜單項,在菜單名稱為"查詢"的菜單項的結果列中選擇"過程",并通過單擊"編輯"按鈕打開一個窗口來添加"查詢"菜單項要執(zhí)行的命令。在菜單名稱為"退出"的菜單項的結果列中選擇"命令",并在后面的"選項"列的中輸入以下退出菜單的命令:SETSYSMENUTODEFAULT

"查詢"菜單項要執(zhí)行的程序:

一方面打開數據庫OpendatabaseCHAXUN3.dbc

我們可以通過下面的查詢得到工資多于1230的所有職工的職工號SELECT職工號FROMZGWHERE工資>1230

可以通過下面的查詢得到地址在北京的所有供貨商的供貨商號SELECT供貨商號FROMGYSWHERE地址="北京"?而題面所規(guī)定的正是同時滿足以上兩個條件的訂購單信息,也就是職工號滿足第一個條件上,可用職工號IN(SELECT職工號FROMZGWHERE工資>1230)來實現(xiàn);供貨商號滿足第二個條件,可用供貨商號IN(SELECT供貨商號FROMGYSWHERE地址="北京")來實現(xiàn)。因此可得到滿足條件的訂購單的SQL查詢?yōu)椋篠ELECT*FROMDGDWHERE職工號IN(SELECT職工號FROMZGWHERE工資>1230)AND供貨商號IN(SELECT供貨商號FROMGYSWHERE地址="北京")ORDERBY總金額DESCINTOTABLEord1

本題還考對查詢的排序和查詢的去向進行了考核.可以用ORDERBYorder_Item[ASC|DESC]來讓查詢的結果按某一列或某幾列的升序(ASC)或降序(DESC)進行排列。而查詢的去向可以通過INTOTABLEstrTableName而直接生成一個文獻名為strTableName的.DBF表。一、基本操作題(共四小題,第1和2題是7分、第3和4題是8分)1、打開數據庫PROD_M及數據庫設計器,其中的兩個表的必要的索引已經建立,為這兩個表建立永久性聯(lián)系2、設立CATEGORY表中"種類名稱"字段的默認值為:"飲料"。3、為PRODUCTS表增長字段:優(yōu)惠價格N(8,2)。4、假如所有商品的優(yōu)惠價格是在進貨價格基礎上減少12%,計算所有商品的優(yōu)惠價格。本題的重要考核點:為已建立索引的表建立聯(lián)系、設立字段的默認值、字段的添加、字段的替換。解題思緒:1.建立兩個表的聯(lián)系。在父表中選中主索引,按住鼠標拖動至子表相應的普通索引上,釋放鼠標,聯(lián)系即已建立。2.在表設計器中,選中"種類名稱"字段,在"字段有效性"中的默認值中填入"飲料",單擊擬定。3.增長字段的方法:打開PRODUCTS表表設計器,將光標移動到最后的空字段格中,輸入新的字段名、字段類型及長度。4.可以使用BROWSE瀏覽表,然后在菜單"表"中選擇"替換字段",字段為"優(yōu)惠價格","替換為"的表達式為"Products.進貨價格*0.88",作用范圍ALL。也可用命令REPLACEALL優(yōu)惠價格WITH進貨價格*0.88二、簡樸應用(2小題,每題20分,計40分)1、在考生文獻夾中有一個數據庫GCS,其中GONGCH表結構如下:GONGCH(編號C(4),姓名C(10),姓別C(2),工資N(7,2),年齡N(2),職稱C(10))現(xiàn)在要對GONGCH表進行修改,指定編號為主索引,索引名和索引表達式均為編號;指定職稱為普通索引,索引名和索引表達式均為職稱;年齡字段的有效性規(guī)則在25至65之間(含25和65),默認值是45。2、在考生文獻夾中有數據庫GCS,其中有數據庫表GONGCH。在考生文獻夾下設計一個表單,該表單為GCS庫中GONGCH表窗口式輸入界面,表單上尚有一個名為cmdCLOSE的按鈕,標題名為"關閉",點擊該按鈕,使用ThisForm.release退出表單。最后將表單存放在考生文獻夾中。,表單文獻名是C_FORM。提醒:在設計表單時,打開GCS數據庫設計器,將GONGCH表拖入到表單中就實現(xiàn)了GONGCH表的窗口式輸入界面,不需要其他設立或修改。第1題,本題的重要考核點是建立索引和有效性規(guī)則。建立索引在表設計器中的索引選項卡,建立有效性規(guī)則在表設計器中的字段選項卡。在"規(guī)則"欄中輸入"年齡>=25AND年齡<=65","默認值"欄輸入"45"(不要雙引號)。第2題,本題的重要考核點是表單的設計??梢杂萌N方法調用表單設計器:在項目管理器環(huán)境下調用;單擊"文獻"菜單中的"新建",打開"新建"對話框,選擇"表單";在命令窗口輸入CREATEFORM命令。打開表單設計器,在表單控件工具欄上單擊"命令按鈕",在表單上放置一個按鈕。修改其屬性Name為cmdclose,Caption屬性為"關閉"。雙擊按鈕,在打開的程序窗口輸入代碼"ThisForm.release"。設計窗口式輸入界面如提醒,最后將表單保存。三、綜合應用(1小題,計30分)在考生文獻夾下有倉庫數據庫GZ3涉及兩個表文獻:ZG(倉庫號C(4),職工號C(4),工資N(4))DGD(職工號C(4),供應商號C(4),訂購單號C(4),訂購日期D,總金額N(10))一方面在GZ3庫中建立工資文獻數據表:GJ3(職工號C(4),工資N(4))設計一個名為YEWU3的菜單,菜單中有兩個菜單項"查詢"和"退出"。程序運營時,單擊"查詢"應完畢下列操作:檢索出與供應商S7、S4和S6都有業(yè)務聯(lián)系的職工的職工號和工資,并按工資降序存放到所建立的GJ3文獻中。單擊"退出"菜單項,程序終止運營。(注:相關數據表文獻存在于考生文獻夾下)本題重要考核點:表結構的建立、菜單的建立、結構化查詢語言(SQL)中的聯(lián)接查詢、查詢的排序、臨時表的概念、查詢結果的去向、HAVING子句、聚合函數COUNT()等的使用等知識。解題思緒:第一步:運用菜單設計器定義兩個菜單項,在菜單名稱為"查詢"的菜單項的結果列中選擇"過程",并通過單擊"編輯"按鈕打開一個窗口來添加"查詢"菜單項要執(zhí)行的命令。在菜單名稱為"退出"的菜單項的結果列中選擇"命令",并在后面的"選項"列中輸入以下退出菜單的命令:SETSYSMENUTODEFAULT第二步:在單擊"計算"菜單項后面的"編輯"按鈕所打開的窗口中添加如下的過程代碼:SETTALKOFF&&在程序運營時關閉命令結果的顯示OPENDATABASEGZ3&&打開數據庫文獻GZ3USEDGD&&打開表DGDCREATETABLEGJ3(職工號C(4),工資N(4))SELECT職工號FROMDGDWHERE供應商號IN("S4","S6","S7");GROUPBY職工號;HAVINGCOUNT(DISTINCT供應商號)=3;INTOCURSORCurTable&&SELECTSQL語句中的GROUPBY子句可以用來指定結果集的組,&&要得到"供應商號"是"S4"、"S6"或"S7"的訂購單,同時以訂購單所在的職工員進行分組&&并且保證每個分組里面供應商號有三個(也就是三個供應商都應有訂購單);這樣就得到了滿&&足條件的職工號,將返回的結果集放于一個臨時表CurTable中:INTOCURSORCurTableSELECTZG.職工號,工資FROMZG,CurTableWHEREZG.職工號=CurTable.職工號;ORDERBY工資DESC;INTOARRAYAFieldsValue&&將生成的臨時表與DGD表進行聯(lián)接查詢,便可以得到滿足條件的職工號和工資&&返回的結果集放入數組AFieldsValue中:INTOARRAYAFieldsValueINSERTINTOGJSFROMARRAYAFieldsValue&&在新建的表中追加記錄CLOSEALL&&關閉打開的文獻SETTALKON&&恢復命令結果的顯示設立第三步:以文獻名YEWU3.MNX保存菜單源文獻,并生成菜單,運營菜單。一、思考題1、創(chuàng)建報表的基本方法涉及哪三種?其重要區(qū)別何在?2、在報表設計器中,共有幾個帶區(qū)?各有什么作用?3、總結在報表設計中,各個不同的控件用于什么場合?4、如何運用“數據環(huán)境”為報表設立數據源?二、選擇題1、運用報表生成器快速生成報表,應選取菜單命令。A.數據→報表B.文獻→快速報表C.報表→報表D.報表→快速報表2、建立打印報表的命令是。A.CREATEB.CREATESCREENC.CREATEWINDOWD.CREATEREPORT3、選取和設計報表中字段內容,應選取工具欄中的工具是。A.字段B.圖像解決C.文本D.畫矩形4、快速報表默認的基本帶區(qū)是。A.標題、總結、列注腳B.頁標頭、細節(jié)、頁注腳C.頁標頭、細節(jié)、列注腳D.標題、細節(jié)、頁注腳5、在“報表設計器”中可以使用的控件有。A.標簽、域控件和圖片B.標簽、列表和域控件C.文本框、圖片和線條D.組合框、線條和標簽6、在一個報表中可以基于選擇的表達式進行數據分組,對分組操作方法有。A.從“報表”菜單中選擇“數據分組”菜單項B.單擊“報表設計器”工具欄中的“數據分組”按鈕C.右擊報表設計器,在彈出的快捷菜單中選擇“數據分組”菜單項D.以上都可以7、下列不屬于報表的布局類型的是。A.列報表B.行報表C.一對多報表D.多對多報表8、在報表設計中,通常對每個字段作一個說明性文字,完畢這種說明文字的報表控件是。A.標簽控件B.域控件C.線條控件D.矩形控件9、設計報表的標題是在報表的設立。A.頁標頭區(qū)B.細節(jié)區(qū)C.標題區(qū)D.頁注腳區(qū)10、下列選項中不屬于域控件的數據類型的是。A.字符型B.備注型C.數值型D.日期型三、填空題1、設計報表就是根據報表的和來設計報表的布局。2、在報表設計中,進行報表頁布局的設計,應當選取新增添的菜單項“報表”下的。3、使用報表向導設計報表,一方面要打開報表的數據源,數據源可以是數據庫中的,也可以是或臨時表。4、在報表設計器中,域控件用于打印表或視圖中的、和的計算結果。5、與報表設計有關的工具欄重要涉及工具欄和工具欄。6、生成標簽文獻時,在窗口中可以選取標簽的格式,涉及標簽的代號、高度、寬度、每行輸出的標簽數目等信息。7、在報表中,打印輸出內容的重要區(qū)是帶區(qū)。8、對于報表的標題,每張報表在開頭僅僅打印次。9、對報表進行數據分組時,報表會自動包含和兩個帶區(qū)。10、報表可以在打印機上輸出,也可以通過游覽。答案一、略二、選擇題DDABADDAAB三、填空題1、數據源、應用需求2、數據分組3、自由表、視圖4、字段、變量、表達式5、報表設計器、報表控件6、打印設立7、細節(jié)8、一9、組標頭,組注腳10、屏幕程序控制結構1、求出下列表達式的值(x、y的值從鍵盤輸入):程序代碼:SETTALKOffCLEARINPUT"X="TOXINPUT"Y="TOYZ=(X*Y+EXP(X+Y))/((X/Y)^3*LOG10(ABS(X-Y)))?"X=",X,"Y=",Y,"Z=",ZSETTALKON2、給定一個年份(從鍵盤輸入),判斷它是否閏年。閏年的條件是:能被4整除但不能被100整除,或能被100整除且能被400整除。程序代碼:SETTALKOffCLEARINPUT"Year="TOYearif(year%4=0andyear%100!=0)or(year%100=0andyear%400=0)?year,"是閏年"else?year,"不是閏年"endifSETTALKON3、從鍵盤輸入數據A(可以是C、D、N、L、Y和U型等),通過類型判斷,輸出其數據類型的漢字說明(如A的值為“OK!”,那么輸出應為:OK!——字符型數據)。程序代碼:SETTALKOffCLEARINPUT"A="TOadocasecasetype('a')="C"?a,"——字符型數據"casetype('a')="D"?a,"——日期型數據"casetype('a')="N"?a,"——數值型數據"casetype('a')="L"?a,"——邏輯型數據"casetype('a')="Y"?a,"——貨幣型數據"casetype('a')="U"?a,"——未定義"endcaseSETTALKON4、從鍵盤輸入A、B、C三個數值,將它們從小到大排列后輸出。程序代碼:SETTALKOffCLEARINPUT"A="TOAINPUT"B="TOBINPUT"C="TOCifbd=aa=bb=dendififcd=aa=cc=dendififcd=bb=cc=dendif?a,b,cSETTALKON5、從鍵盤輸入一個數值(0~9),規(guī)定輸出其相應的中文大寫數字(零~玖)。程序代碼:SETTALKOffCLEARC="零壹貳叁肆伍陸柒捌玖"INPUT"N="TON?N,"--->"+SUBSTR(C,2*N+1,2)SETTALKON6、將前面的1到5題,加上循環(huán),使之被調用執(zhí)行一次,并可以反復對不同的輸入值完畢相同的操作。提醒:只要在需要反復執(zhí)行的語句序列外加上循環(huán)控制結構即可。下面以第2小題循環(huán)3次,第5小題循環(huán)任意次為例說明。(6.2)循環(huán)3次程序代碼:SETTALKOffCLEARFORI=1TO3INPUT"Year="TOYearif(year%4=0andyear%100!=0)or(year%100=0andyear%400=0)?year,"是閏年"else?year,"不是閏年"endifENDFORSETTALKON(6.5)循環(huán)任意次程序代碼:SETTALKOffCLEAR?"PRESSESCTOEXIT---"C="零壹貳叁肆伍陸柒捌玖"DOWHILE.T.INPUT"N="TON?N,"--->"+SUBSTR(C,2*N+1,2)IFINKEY(0)=27EXITENDIFENDDOSETTALKON程序閱讀題。閱讀下列程序,寫出運營結果。1、注:字符"A"的ASCII碼為65。程序代碼:SETTALKOFFCLEARC="一二三四五六七八九十"B="ABCD"R=0L=LEN(B)FORI=1TOLW=SUBSTR(B,I,1)D=ASC(W)+R-65S=""IFD<10S=SUBSTR(C,2*D+1,2)ELSES=SUBSTR(C,2*MOD(D,10)+1,2)ENDIF?W+"----->"+SR=R+11ENDFORSETTALKON參考答案:A---->一B---->三C---->五D---->七2、設A的值為:ABCDEF程序代碼:SETTALKOFFCLEARACCEPT"A="TOAL=LEN(A)P=SPACE(0)I=1DOWHILEIP=P+SUBSTR(A,L-I,2)I=I+2ENDDO?A+"------>"+PSETTALKON參考答案:ABCDEF------>EFCDAB計算機等級考試二級VisualFoxPro上機試題及解題思緒(12)來源:青年人(Qnr.Cn)

2023-9-179:31:25

【青年人:中國教育考試第一門戶】

HYPERLINK""資料下載

HYPERLINK""\t"_blank"教材購買3、寫出運營結果程序代碼:SETTALKOFFM=3DOWHILEM<10N=2DOWHILENIFINT(M/N)=M/NEXITENDIFN=N+1ENDDOIFN=M?MENDIFM=M+1ENDDOSETTALKON參考答案:3574、寫出運營結果程序代碼:SETTALKOFFCLEARINPUT"M="TOMIFINT(M)!=MORABS(M)!=M?"輸入的數值不符合題目規(guī)定!"LOOPENDIF?ALLTRIM(STR(M,19))+"的質數因子有:"I=2DOWHILEI<=MIFM%I=0??STR(I,6)M=INT(M/I)LOOPENDIFI=I+1ENDDOSETTALKONSETESCAPEON設:M的輸入值為12。參考答案:12的質數因子有:2235、寫出運營結果程序代碼:SETTALKOFFCLEAR?"*12345"A=1DOWHILEA<=5?ALLTRIM(STR(A))+SPAC(2)B=1DOWHILEB<=AS=A*B??STR(S,2)+SPAC(2)B=B+1ENDDOA=A+1ENDDOSETTALKON參考答案:*123451122433694481255101520256、寫出運營結果程序代碼:SETTALKOFFCLEARDIMENSIONA(6,6)FORI=1TO6FORJ=1TO6IFI<>JA(I,J)=0ELSEA(I,J)=-1ENDIFENDFORENDFORFORI=1TO6?FORJ=1TO6??A(I,J)ENDFORENDFORSETTALKON參考答案:-1000000-1000000-100000-1000000-10000000-15、寫出運營結果程序代碼:SETTALKOFFCLEAR?"*12345"A=1DOWHILEA<=5?ALLTRIM(STR(A))+SPAC(2)B=1DOWHILEB<=AS=A*B??STR(S,2)+SPAC(2)B=B+1ENDDOA=A+1ENDDOSETTALKON參考答案:*123451122433694481255101520256、寫出運營結果程序代碼:SETTALKOFFCLEARDIMENSIONA(6,6)FORI=1TO6FORJ=1TO6IFI<>JA(I,J)=0ELSEA(I,J)=-1ENDIFENDFORENDFORFORI=1TO6?FORJ=1TO6??A(I,J)ENDFORENDFORSETTALKON參考答案:-1000000-1000000-100000-1000000-10000000-1綜合編程題。根據題目規(guī)定,編寫相應的程序。1、求X+X2+X3+X4+?+Xn的值。N,X從鍵盤輸入。程序代碼:SETTALKOFFclearINPUT"X="TOXINPUT"N="TONS=0I=1DOWHILEI<=NS=S+X^II=I+1ENDDO?"X+X^2+X^3+...+X^N=",SSETTALKON2、求S=2/1+3/2+5/3+8/5+13/8+…..前20項之和。程序代碼:SETTALKOFFclearS=0N=1X=1Y=2DOWHILEN<=20S=S+Y/XT=XX=YY=Y+TN=N+1ENDDO?"2/1+3/2+5/3+...+17711/10946=",S&&共有N=20項累加SETTALKON3、從鍵盤輸入一個正整數,判斷其所含5的個數。(如:輸入數值2345105,其中包含5的個數為2)程序代碼:SETTALKOFFclearINPUT"請輸入一個正整數X:"TOXS=0DOWHILE.T.N=MOD(X,10)&&第一次求X的個位數N,第二次求X的十位數N,…IFN=5S=S+1ENDIFX=INT(X/10)IFX=0EXITENDIFENDDO?"X中5的個數為:",SSETTALKON4、從鍵盤輸入20個數,去掉20個數中的最大值和最小值,然后求平均值。程序代碼:SETTALKOFFCLEARS=0N=1STORE0TOMAX,MINDOWHILEN<=20INPUT"B="TOBS=S+BIFMAXMAX=BENDIFIFMIN>BMIN=BENDIFN=N+1ENDDO?"AVERAGE="+STR((S-MAX-MIN)/18,19,2)SETTALKON5、求2~1000之間完數的個數。(完數:一個數假如恰好等于它的因子之和,因子不涉及自身且不能反復。如:6=1+2+3,8<>1+2+4,所以6是完數,8不是完數)程序代碼:SETTALKOFFCLEARSN=0?"2~1000之間的完數為:"FORN=2TO1000M=NI=1S=0DOWHILEIIFINT(M/I)=M/IS=S+IENDIFI=I+1ENDDOIFN=SSN=SN+1??NENDIFENDFOR?"完數的個數為:",SNSETTALKON6、本程序一方面對矩陣按行讀入數據,并將它轉置。程序代碼:SETTALKOFFINPUT'N='TONDIMEA(N,N)FORI=1TONFORJ=1TONINPUT'A('+STR(I,1)+','+STR(J,1)+')='TOAI,J)ENDFORENDFORFORI=1TONFORJ=1TOIT=A(I,J)A(I,J)=A(J,I)A(J,I)=TENDFORENDFORSETTALKON7、從鍵盤任意輸入N個數,去掉其中最大值和最小值,然后求平均值。程序代碼:SETTALKOFFCLEARS=0INPUT"N="TONSTORENTOMAX,MINFORI=1TONINPUT"B="TOBS=S+BIFMAXMAX=BENDIFIFMIN>BMIN=BENDIFENDFOR?"AVERAGE="+STR((S-MAX-MIN)/(N-2),19,2)SETTALKON8、運用參數傳遞和過程文獻,求(M!+N!)/(M-N)!程序代碼:SETTALKOFFCLEARSETPROCTO程序20INPUT"M="TOMINPUT"N="TONSTORE0TOSM,SNDOJC2WITHM,SMDOJC2WITHN,SNDOMC2WITHM-N,N?"表達式結果為S="+STR((SM+SN)/N,10,2)SETPROCTOSETTALKONPROCJC2PARAX,YI=1T=1DOWHILEI<=XT=T*II=I+1ENDDOY=TRETURNPROCMC2PARAY,XI=1T=1DOWHILEI<=XT=T*YI=I+1ENDDOX=TRETURN9、編程求1~1000之內的同構數。(同構數:若A是同構數,則A出現(xiàn)在A的

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論