江蘇省計(jì)算機(jī)等級(jí)考試二級(jí)VB考試重點(diǎn)難點(diǎn)分析與講解_第1頁
江蘇省計(jì)算機(jī)等級(jí)考試二級(jí)VB考試重點(diǎn)難點(diǎn)分析與講解_第2頁
江蘇省計(jì)算機(jī)等級(jí)考試二級(jí)VB考試重點(diǎn)難點(diǎn)分析與講解_第3頁
江蘇省計(jì)算機(jī)等級(jí)考試二級(jí)VB考試重點(diǎn)難點(diǎn)分析與講解_第4頁
江蘇省計(jì)算機(jī)等級(jí)考試二級(jí)VB考試重點(diǎn)難點(diǎn)分析與講解_第5頁
已閱讀5頁,還剩41頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

第1章應(yīng)試指南(略)

第數(shù)據(jù)結(jié)構(gòu)與算法(公共基礎(chǔ)部分)

第3程序設(shè)計(jì)基礎(chǔ)(公共基礎(chǔ)部分)

第4軟件工程基礎(chǔ)(公共基礎(chǔ)部分)

第5數(shù)據(jù)庫設(shè)計(jì)基礎(chǔ)(公共基礎(chǔ)部分)

第6VB程序設(shè)計(jì)的初步知識(shí)

第:數(shù)據(jù)輸入輸出7.1.2與Print方法有關(guān)的函數(shù)

7.1.4Cis方法與Move方法7.1.5MsgBox函數(shù)

第8章VisualBasic控制結(jié)構(gòu)8.1.1Hf函數(shù)

第9數(shù)組與過程9.1.2默認(rèn)數(shù)組

第10章鍵盤與鼠標(biāo)事件10.1.1KeyDown和KeyUp事件

第1I可視化程序設(shè)計(jì)11.1.2彈出式菜單

第12串?dāng)?shù)據(jù)文件

第13章筆試模擬試卷及解析(略)

第14章機(jī)試指導(dǎo)、分類解析及模擬(略)

第2章數(shù)據(jù)結(jié)構(gòu)與算法

本章節(jié)主要考查算法的基本概念、基本的數(shù)據(jù)結(jié)構(gòu)及其基本操作、查找和排序算法。本章

的內(nèi)容在歷次試題中所占的比例約為11.2%,都是以選擇題和填空題的形式出現(xiàn)的。

2.1.1考點(diǎn)1:算法的定義

算法是對(duì)一個(gè)問題求解步驟的一種描述,是求解問題的方法,它是指令的有限序列,其

中每條指令表示一個(gè)或者多個(gè)操作。一般來說,一個(gè)算法具有以下5個(gè)主要的特征。

(1)有窮性:一個(gè)算法(對(duì)任何合法的輸入)在執(zhí)行有窮步后能夠結(jié)束,并且在有限的

時(shí)間內(nèi)完成。

(2)確定性:算法中的每一步都有確切的含義。

(3)可行性:算法中的操作能夠用已經(jīng)實(shí)現(xiàn)的基本運(yùn)算執(zhí)行有限次來實(shí)現(xiàn)。

(4)輸入:一個(gè)算法有零個(gè)或者多個(gè)輸入,零個(gè)輸入就是算法本身缺定了初始條件。

(5)輸出:一個(gè)算法有?個(gè)或者多個(gè)輸出,以反映出數(shù)據(jù)加工的結(jié)果。

例2.1.1問題處理方案的正確而完整的描述稱為o[2005年4月填空第5題]

答案:算法

例2.1.2一個(gè)算法應(yīng)該具有“確定性”等5個(gè)特性,下面對(duì)另外4個(gè)特性的描述中錯(cuò)誤的是

()。

A.有零個(gè)或多個(gè)輸入B.有零個(gè)或多個(gè)輸出

C.有窮性D.可行性

答案:B

例2.1.3算法具有5個(gè)特性,以下選項(xiàng)中不屬于算法特性的是()。

A.有窮性B.簡潔性C.可行性D.確定性

答案:B

第3章程序設(shè)計(jì)基礎(chǔ)

本章主要考查程序設(shè)計(jì)的一些基本知識(shí),比如程序設(shè)計(jì)的方法與風(fēng)格、結(jié)構(gòu)化程序設(shè)計(jì)與

面向?qū)ο蟪绦蛟O(shè)計(jì)的基本思想。從歷次的試題來看,本章試題分值約占2.4%,屬于非重點(diǎn)

考查對(duì)象。盡管分值所占的比例較少,但基本上每次至少有一道試題。試題以選擇和填空

的形式出現(xiàn)。

3.1程序設(shè)計(jì)

該節(jié)知識(shí)點(diǎn)所占試題比重為17%,屬于非重點(diǎn)考查對(duì)象。到目前為止,該知識(shí)點(diǎn)只出

過一道選擇題。從考試大綱來看,主要考查程序設(shè)計(jì)的方法、程序設(shè)計(jì)風(fēng)格。

3.1.1考點(diǎn)1:程序設(shè)計(jì)的方法

程序是指令的有序集合,它是為了解決某一問題而設(shè)計(jì)的一系列指令。程序設(shè)計(jì)是使用計(jì)

算機(jī)系統(tǒng)的指令或語句,組成求解不同問題,實(shí)現(xiàn)不同算法所需的完整序列的一個(gè)工作過

程。隨著計(jì)算機(jī)硬件技術(shù)的發(fā)展以及計(jì)算機(jī)技術(shù)的廣泛應(yīng)用,根據(jù)需求程序設(shè)計(jì)的方法也

經(jīng)過了幾個(gè)發(fā)展的過程。

在程序設(shè)計(jì)早期,由于受到計(jì)算機(jī)硬件的限制,運(yùn)行速度慢,存儲(chǔ)空間少,使得程序

員不得不提高程序的效率,在這種情況下,編程成了一種技巧和藝術(shù),程序的可理解性和

可擴(kuò)充性沒有得到重視。在這個(gè)時(shí)期出現(xiàn)的高級(jí)語言有Fortran、COBOL.ALGOL.Basic

等語言,在這個(gè)時(shí)期不注重程序的結(jié)構(gòu),可以說這是沒有固定程序設(shè)計(jì)方法的時(shí)期。

計(jì)算機(jī)硬件得到了很大的發(fā)展,在編程的時(shí)候,運(yùn)行速度和存儲(chǔ)空間不再困擾程序員,

計(jì)算機(jī)技術(shù)應(yīng)用范圍的擴(kuò)大使得程序必須要有良好的結(jié)構(gòu),在這種需求下,提出了結(jié)構(gòu)化

程序設(shè)計(jì)方法。這時(shí)出現(xiàn)的高級(jí)語言有PASCAL、C等。20世紀(jì)60年代后期,提出了類

和對(duì)象的概念,程序設(shè)計(jì)已經(jīng)不是問題的中心,如何更好地描述問題已經(jīng)成為了主題,因

此在這種情況下,面向?qū)ο蟮某绦蛟O(shè)計(jì)方法發(fā)展起來了,并得到廣泛地應(yīng)用。進(jìn)入20世紀(jì)

80年代后,出現(xiàn)了一系列的面向?qū)ο蟪绦蛟O(shè)計(jì)語言,如C++等。

下面我們會(huì)詳細(xì)討論結(jié)構(gòu)化程序設(shè)計(jì)和面向?qū)ο蟪绦蛟O(shè)計(jì)。

3.1.2考點(diǎn)2:程序設(shè)計(jì)的風(fēng)格

我們?cè)诰帉懗绦驎r(shí)要養(yǎng)成良好的程序設(shè)計(jì)習(xí)慣,對(duì)程序的要求不僅能夠在計(jì)算機(jī)上正

確運(yùn)行,而且要便于閱讀和被別人理解,便于程序的調(diào)試和維護(hù)。好的程序設(shè)計(jì)風(fēng)格有助

于提高程序的正確性、可讀性、可維護(hù)性和可用性。要使程序具有良好的風(fēng)格,概括起來

可以分成4部分:源程序文檔化、數(shù)據(jù)說明、語句結(jié)構(gòu)、輸入/輸出方法。

1.源程序文檔化

源程序文檔化主要包括:標(biāo)識(shí)符的命名、程序中添加注釋以及程序的編輯風(fēng)格。

(1)標(biāo)識(shí)符的命名

標(biāo)識(shí)符即符號(hào)名,包括變量名、模塊名、常量名、標(biāo)號(hào)名、函數(shù)名、數(shù)據(jù)區(qū)名和緩沖

區(qū)名等。一個(gè)程序中必然有很多的標(biāo)識(shí)符,特別是在一個(gè)復(fù)雜大型的程序中,標(biāo)識(shí)符可能

成千上萬,對(duì)標(biāo)識(shí)符作用的正確理解是讀懂程序的前提,如果程序員隨意命名標(biāo)識(shí)符,程

序的可讀性會(huì)很差。

因此,標(biāo)識(shí)符的命名應(yīng)該要規(guī)范化,具體要根據(jù)下面幾個(gè)原則來命名。

①選取有實(shí)際意義的標(biāo)識(shí)符名稱。為了方便理解標(biāo)識(shí)符的作用,標(biāo)識(shí)符的名字要能夠

反映其作用,如用于存儲(chǔ)數(shù)量的變量的名稱可以是count等。

②為了便于程序的輸入,標(biāo)識(shí)符的名字不宜太長。必要時(shí)可以用一些縮寫,但是要注

意縮寫規(guī)則要一致,并且要給每一個(gè)變量加上注釋。

③為了便于區(qū)分,不同的標(biāo)識(shí)符不要取過于相似的名字。

④由于程序中通常需要大量不同類型的標(biāo)識(shí)符,為了使說明部分閱讀起來更加清晰,

在對(duì)其進(jìn)行類型說明時(shí)應(yīng)注意以下幾點(diǎn):按照某種頁序?qū)Ω鞣N類型的變量進(jìn)行集中說明,

如先說簡單類型,再說明記錄類型;在使用一個(gè)說明語句對(duì)同一類型的多個(gè)變量進(jìn)行說明

時(shí),按照變量名中的字母順序進(jìn)行排列。

(2)不辨中加注釋

注釋是程序員與日后的程序讀者之間通信的重要工具,用自然語言或偽碼描述。它說

明了程序的功能,特別在維護(hù)階段,對(duì)理解程序提供了明確指導(dǎo)。一些正規(guī)的程序文本中,

注釋行的數(shù)量占到整個(gè)源程序的1/3~1/2,甚至更多。注釋分序言性注釋和功能性注釋。

①序言性注釋:一般置于每個(gè)程序模塊的開頭部分,它應(yīng)當(dāng)給出程序的整體說明,用

來引導(dǎo)讀者理解程序。主要描述內(nèi)容可以包括:程序標(biāo)題、程序功能說明、主要算法、接

口說明、有關(guān)數(shù)據(jù)描述、程序位置、開發(fā)簡歷、程序設(shè)計(jì)者、復(fù)審者、復(fù)審日期和修改日

期等。

②功能性注釋:一般置于程序體中,用來描述其后的語句或程序段是用來做什么的,

或者是執(zhí)行了其下面的語句或程序段會(huì)產(chǎn)生什么樣的效果,而不要解釋下面該怎么做。

(3)程序的編輯風(fēng)格

為了使程序的結(jié)構(gòu)一目了然,可以在程序中利用空格、空行、縮進(jìn)等技巧使程序?qū)哟?/p>

清晰,便于程序的理解??梢园凑找韵聨讉€(gè)原則來編輯程序。

①恰當(dāng)?shù)乩美ㄌ?hào),可以突出運(yùn)算的優(yōu)先性,避免發(fā)生運(yùn)算錯(cuò)誤。

②程序段之間可用空行隔開。

③對(duì)于選擇語句和循環(huán)語句,應(yīng)該做適當(dāng)?shù)目s進(jìn),使得程序的邏輯結(jié)構(gòu)更加清晰。

2.數(shù)據(jù)說明

在程序設(shè)計(jì)時(shí),應(yīng)該注意數(shù)據(jù)說明的風(fēng)格。為了使數(shù)據(jù)定義更易于理解和維護(hù),有以

下指導(dǎo)原則。

(1)數(shù)據(jù)說明順序應(yīng)規(guī)范化,使數(shù)據(jù)的屬性更易于查找,從而有利于測試、糾錯(cuò)與維

護(hù)。原則上,數(shù)據(jù)說明的次序與語法無關(guān),其次序是任意的,但是便于閱讀和理解,最好

使其規(guī)范化,使說明次序按照某種規(guī)則固定。例如,按以下順序:常量說明、類型說明、

全程量說明及局部量說明。

(2)語句中變量的說明應(yīng)有序化,多個(gè)變量在同一個(gè)說明語句中說明時(shí),各變量名按

字典序排列。

(3)使用注釋來說明復(fù)雜的數(shù)據(jù)結(jié)構(gòu)時(shí),要說明在程序?qū)崿F(xiàn)這個(gè)數(shù)據(jù)結(jié)構(gòu)時(shí)的特點(diǎn)。

3.語句康

單個(gè)語句結(jié)構(gòu)是編碼階段的任務(wù),語句結(jié)構(gòu)追求簡單直接,不能為了追求效率而使代

碼復(fù)雜化。我們可以根據(jù)下面的原則來構(gòu)造語句。

①為了便于閱讀和理解,不要一行多個(gè)語句。

②不同層次的語句采用縮進(jìn)形式,使程序的邏輯結(jié)構(gòu)和功能特征更加清晰。

③要避免復(fù)雜的判定條件,避免多重的循環(huán)嵌套。

④表達(dá)式中使用括號(hào)以提高運(yùn)算次序的清晰度。

⑤程序編寫首先應(yīng)當(dāng)考慮程序結(jié)構(gòu)的清晰性,不要刻意追求技巧性,使得程序復(fù)雜。

⑥除非對(duì)效率有特殊要求,否則先要考慮程序的清晰性,不要追求高效率而喪失程序

的清晰度。

⑦程序編寫要簡單,要直截了當(dāng)?shù)乇磉_(dá)出程序員的用意。

⑧首先要保證程序正確,然后才要求提高速度。

⑨避免使用臨時(shí)變量而使程序可讀性下降。

⑩盡可能使用庫函數(shù)。

4.輸入和輸出

輸入和輸出是程序的一個(gè)重要的組成部分,是用戶和計(jì)算機(jī)交互直接相關(guān)的。輸入和

輸出的方式應(yīng)當(dāng)盡量方便用戶的使用。一定要避免輸入輸出的不當(dāng)而導(dǎo)致用戶使用軟件麻

煩。因此,在軟件需求分析階段和設(shè)計(jì)階段,就應(yīng)基本確定輸入和輸出的風(fēng)格。軟件能否

被用戶接受,有時(shí)就取決于輸入和輸出的風(fēng)格。

一個(gè)良好的輸入輸出風(fēng)格能夠使用戶很方便地使用系統(tǒng),我們?cè)诰幋a階段可以根據(jù)下

面的原則來設(shè)計(jì)一個(gè)好的輸入輸出。

①對(duì)所有輸入的數(shù)據(jù)都要進(jìn)行有效性檢查,要能夠識(shí)別出錯(cuò)誤的輸入,對(duì)錯(cuò)誤的輸入

做出異常處理,使得每個(gè)輸入數(shù)據(jù)都具有有效性。

②檢查輸入數(shù)據(jù)項(xiàng)的各種重要組合的合理性,必要時(shí)報(bào)告輸入狀態(tài)信息。

③在輸入時(shí),輸入的步驟和方式應(yīng)該盡量簡單。

④輸入數(shù)據(jù)時(shí),應(yīng)允許使用自由格式輸入。

⑤允許默認(rèn)值

⑥輸入一批數(shù)據(jù)時(shí),最好使用輸入結(jié)束標(biāo)志,而不要用戶指定輸入數(shù)據(jù)數(shù)目。

⑦在交互輸入時(shí),要給用戶提示信息,如可使用選擇項(xiàng)的種類和取值范圍,在輸入結(jié)

束時(shí),給出狀態(tài)信息。

⑧當(dāng)程序設(shè)計(jì)語言對(duì)輸入/輸出格式有嚴(yán)格要求時(shí),應(yīng)保持輸入格式與輸入語句的要求

的一致性。

⑨給所有的輸出加注解,并設(shè)計(jì)輸出報(bào)表格式。

例3.1.1以下敘述中錯(cuò)誤的是()。[2005年9月選擇第11題]

A.用戶所定義的標(biāo)識(shí)符允許使用關(guān)鍵字

B.用戶所定義的標(biāo)識(shí)符應(yīng)盡量做到“見名知意”

C.用戶所定義的標(biāo)識(shí)符必須以字母或下劃線開頭

D.用戶定義的標(biāo)識(shí)符中,大、小寫字母代表不同標(biāo)識(shí)

答案:A

第4章軟件工程基礎(chǔ)

本章主要掌握以下幾個(gè)方面內(nèi)容。

(1)軟件工程的基本概念、軟件生命周期概念、軟件工具和軟件開發(fā)環(huán)境;

(2)結(jié)構(gòu)化分析方法、數(shù)據(jù)流圖、數(shù)據(jù)字典和軟件需求規(guī)格說明書;

(3)結(jié)構(gòu)化設(shè)計(jì)方法、總體設(shè)計(jì)和詳細(xì)設(shè)計(jì)

(4)軟件測試的方法、白盒測試與黑盒測試、測試用例設(shè)計(jì)、軟件測試的實(shí)施、單元測

試、集成測試和系統(tǒng)測試;

(5)程序調(diào)試、靜態(tài)調(diào)試與動(dòng)態(tài)調(diào)試;

(6)軟件維護(hù)。

通過對(duì)歷次試卷內(nèi)容的分析,軟件工程考核內(nèi)容占卷面分?jǐn)?shù)6.8%。

4.1軟件工程的基本概念

軟件工程的基本概念所涉及的試題分值在本章中所占比重為16%

4.1.1考點(diǎn)1:軟件與軟件工程概述

1.軟件的定義

軟件是程序、數(shù)據(jù)與相關(guān)文檔的集合,相對(duì)于計(jì)算機(jī)硬件而言,軟件是邏輯產(chǎn)品而不是

物理產(chǎn)品,是計(jì)算機(jī)的無形部分。

軟件包括系統(tǒng)軟件和應(yīng)用軟件。系統(tǒng)軟件是計(jì)算機(jī)管理自身資源,提高計(jì)算機(jī)使用效率

而編寫的軟件。系統(tǒng)軟件依賴于機(jī)器的指令系統(tǒng)、中斷系統(tǒng),以及運(yùn)算、控制、存儲(chǔ)部件

和外部設(shè)備。系統(tǒng)軟件包括操作系統(tǒng)(如Windows、UNIX、Linux、Macintosh等)、各種

語言編譯的編譯程序、數(shù)據(jù)庫管理系統(tǒng)、文件編輯系統(tǒng)、系統(tǒng)檢查與診斷軟件等。應(yīng)用軟

件是專門為了某種使用目的而編寫的程序系統(tǒng),常用的有文字處理軟件(如WPS和

Word)、專用的財(cái)務(wù)軟件、人事管理軟件、計(jì)算機(jī)輔助軟件(如AutoCAD)和繪圖軟件

(如3DS)等。

與硬件相比,軟件的特點(diǎn)包括:

(1)軟件是一種邏輯實(shí)體;

(2)軟件的生產(chǎn)與硬件不同,它沒有明顯的制作過程;

(3)軟件在運(yùn)行、使用期間不存在磨損、老化問題;

(4)軟件的開發(fā)、運(yùn)行對(duì)計(jì)算機(jī)系統(tǒng)具有依賴性,受計(jì)算機(jī)系統(tǒng)的限制,這導(dǎo)致了軟件

存在移植的問題;

(5)軟件復(fù)雜性高,成本昂貴;

(6)軟件開發(fā)涉及諸多的社會(huì)因素。

2.軟件工程的定義

隨著計(jì)算機(jī)的應(yīng)用范圍“益廣泛,傳統(tǒng)的軟件開發(fā)成本難以控制,進(jìn)度不可預(yù)計(jì);軟件

系統(tǒng)的質(zhì)量和可靠性很差;軟件文檔相當(dāng)缺乏,軟件系統(tǒng)不可維護(hù);軟件開發(fā)生產(chǎn)率很低,

軟件產(chǎn)品供不應(yīng)求;軟件產(chǎn)品成本十分昂貴等特點(diǎn)「I益顯現(xiàn),成為計(jì)算機(jī)應(yīng)用的一個(gè)“瓶

頸”,出現(xiàn)了所謂的“軟件危機(jī)”。1968年,北大西洋公約組織(NATO)召開計(jì)算機(jī)科學(xué)會(huì)

議,首次提出了軟件工程的概念,試圖用工程化的方法開發(fā)軟件,從而解決或緩解軟件危

機(jī)。

軟件工程是采用工程化的方法開發(fā)和維護(hù)軟件的工程學(xué)科。把經(jīng)過時(shí)間考驗(yàn)而證明正確

的管理技術(shù)和當(dāng)前能夠得到的最好的技術(shù)和方法結(jié)合起來,以便經(jīng)濟(jì)地開發(fā)出高質(zhì)量的軟

件并有效地維護(hù)它。軟件工程包括3個(gè)要素,分別是方法、工具和過程。

軟件工程的基本思想是在軟件開發(fā)過程中需要應(yīng)用工程化原則進(jìn)行軟件開發(fā),并將這個(gè)

思想貫穿到軟件開發(fā)的整個(gè)過程中O

軟件工程的目標(biāo)是在給定成本、進(jìn)度的前提下,利用工程化原則,開發(fā)出具有可修改性、

有效性、可靠性、可理解性、可維護(hù)性、可重用性、可適用性、可移植性、可追蹤性和可

互操作性并滿足用戶需求的軟件產(chǎn)品。

3.例題

例4.1.1下列描述中正確的是()。[2005年4月選擇第8題]

A.程序就是軟件B.軟件開發(fā)不受計(jì)算機(jī)系統(tǒng)的限制

C.軟件既是邏輯實(shí)體,又是物理實(shí)體D.是程序、數(shù)據(jù)與相關(guān)文檔的集合

答案:D

例4.1.2下列描述中正確的是()。[2005年9月選擇第5題]

A.軟件工程只是解決軟件項(xiàng)目的管理問題

B.軟件工程主要解決軟件產(chǎn)品的生產(chǎn)率問題

C.軟件工程的主要思想是強(qiáng)調(diào)在軟件開發(fā)過程中需要應(yīng)用工程化原則

D.軟件工程只是解決軟件開發(fā)中的技術(shù)問題

答案:C

第5章數(shù)據(jù)庫設(shè)計(jì)基礎(chǔ)

本章主要掌握以下幾個(gè)方面內(nèi)容。

(1)數(shù)據(jù)庫的基本概念、數(shù)據(jù)庫、數(shù)據(jù)庫管理系統(tǒng)和數(shù)據(jù)庫系統(tǒng);

(2)數(shù)據(jù)模型、實(shí)體聯(lián)系模型、E-R圖和從E-R圖導(dǎo)出關(guān)系數(shù)據(jù)模型;

(3)關(guān)系代數(shù)運(yùn)算(包括集合運(yùn)算及選擇、投影、連接運(yùn)算)和數(shù)據(jù)庫規(guī)范化理論;

(4)數(shù)據(jù)庫設(shè)計(jì)方法和步驟、需求分析、概念設(shè)計(jì)、邏輯設(shè)計(jì)和物理設(shè)計(jì)的相關(guān)策略。

通過對(duì)歷次試卷內(nèi)容的分析,本章考核內(nèi)容占卷面分?jǐn)?shù)8.8%。

5.1數(shù)據(jù)庫基礎(chǔ)知識(shí)

信息在現(xiàn)代社會(huì)中起著越來越重要的作用,信息資源的開發(fā)和利用水平已成為衡量一個(gè)

國家綜合國力的重要標(biāo)志。在計(jì)算機(jī)應(yīng)用領(lǐng)域中,數(shù)據(jù)處理是其主要方面。數(shù)據(jù)庫技術(shù)就

是作為數(shù)據(jù)處理中的一門技術(shù)而發(fā)展起來的。本節(jié)介紹數(shù)據(jù)庫系統(tǒng)的基本概念和發(fā)展歷史,

初步了解數(shù)據(jù)庫系統(tǒng)的概貌。

數(shù)據(jù)庫基礎(chǔ)知識(shí)所涉及的試題分值在本章中所占比重為41%,

5.1.1考點(diǎn)1:數(shù)據(jù)庫

數(shù)據(jù)庫(Database,DB)可以看成是長期存儲(chǔ)在計(jì)算機(jī)內(nèi)的、大量的、有結(jié)構(gòu)的和可共

享的數(shù)據(jù)集合。數(shù)據(jù)是描述現(xiàn)實(shí)世界中各種具體事物和抽象概念的可存儲(chǔ)并有明確意義的

信息。

數(shù)據(jù)庫可以被直觀地理解為存放數(shù)據(jù)的倉庫,只不過這個(gè)倉庫是在計(jì)算機(jī)的大容量存儲(chǔ)

器上,例如,硬盤就是一種最常見的計(jì)算機(jī)大容量存儲(chǔ)設(shè)備。數(shù)據(jù)必須按一定的格式存放,

因?yàn)樗粌H需要存放,而且還要便于查找。

數(shù)據(jù)庫的特點(diǎn)如下

(1)數(shù)據(jù)按一定的數(shù)據(jù)模型組織、描述和儲(chǔ)存。

(2)冗余度較小。數(shù)據(jù)共享大大減少了數(shù)據(jù)冗余。

(3)數(shù)據(jù)獨(dú)立性較高。數(shù)據(jù)獨(dú)立性是數(shù)據(jù)庫領(lǐng)域中一個(gè)常用的術(shù)語,也是數(shù)據(jù)庫技術(shù)的

重要特點(diǎn)之一。數(shù)據(jù)獨(dú)立性是指數(shù)據(jù)的組織結(jié)構(gòu)和存儲(chǔ)方法與應(yīng)用程序互不依賴、彼此獨(dú)

立。它包括數(shù)據(jù)的物理獨(dú)立性和數(shù)據(jù)的邏輯獨(dú)立性。物理獨(dú)立性是指用戶的應(yīng)用程序與存

儲(chǔ)在磁盤上的數(shù)據(jù)庫中的數(shù)據(jù)是相互獨(dú)立的,也就是當(dāng)數(shù)據(jù)的物理存儲(chǔ)改變了,用戶程序

也可以不變。邏輯獨(dú)立性是指用戶的應(yīng)用程序與數(shù)據(jù)庫的邏輯結(jié)構(gòu)是相互獨(dú)立的,也就是

說,數(shù)據(jù)的邏輯結(jié)構(gòu)改變了,用戶程序也可以不變。

(4)易擴(kuò)展。

(5)可為各種用戶共享。不同的用戶可以使用同一個(gè)數(shù)據(jù)庫,可以取出他們所需要的子

集,而且容許子集任意重疊。

例5.1.1數(shù)據(jù)獨(dú)立性是數(shù)據(jù)庫技術(shù)的重要特點(diǎn)之一。所謂數(shù)據(jù)獨(dú)立性,是指().[2005

年4月選擇第9題]

A.數(shù)據(jù)與程序獨(dú)立存放

B.不同的數(shù)據(jù)被存放在不同的文件中

C.不同的數(shù)據(jù)只能被對(duì)應(yīng)的應(yīng)用程序所使用

D.以上三種說法都不對(duì)

答案:D

例5.1.2數(shù)據(jù)庫設(shè)計(jì)的根本目標(biāo)是要解決()。[2005年9月選擇第8題]

A.■共享問題B.數(shù)據(jù)安全問題

C.大量數(shù)據(jù)存儲(chǔ)問題D.簡化■維護(hù)

答案:A

例5.1.3下列敘述中正確的是()。[2004年9月選擇第9題]

A.數(shù)據(jù)庫系統(tǒng)是一個(gè)獨(dú)立的系統(tǒng),不需要操作系統(tǒng)的支持

B.數(shù)據(jù)庫設(shè)計(jì)是指設(shè)計(jì)數(shù)據(jù)庫管理系統(tǒng)

C.數(shù)據(jù)庫技術(shù)的根本目標(biāo)是要解決數(shù)據(jù)共享的問題

D.數(shù)據(jù)庫系統(tǒng)中,數(shù)據(jù)的物理結(jié)構(gòu)必須與邏輯結(jié)構(gòu)一致

答案:C

第6章VisualBasic程序設(shè)計(jì)的初步知識(shí)

本章主要考查關(guān)于VisualBasic概述、VisualBasic程序開發(fā)環(huán)境、VisualBasic常用對(duì)象

及其操作、VisualBasic應(yīng)用程序基本操作、VisualBasic常用數(shù)據(jù)類型、VisualBasic中的

常量和變量、VisualBasic常用內(nèi)部函數(shù)、VisualBasic字符串處理、VisualBasic運(yùn)算符與

表達(dá)式和VisualBasic常用標(biāo)準(zhǔn)控件等內(nèi)容。通過對(duì)歷年試卷內(nèi)容的分析,本章考核內(nèi)容約

占卷面分?jǐn)?shù)30%,屬于重點(diǎn)考查對(duì)象。由命題走勢圖可知,本章內(nèi)容所涉及考題分值有下

降趨勢,但是考生絕不能掉以輕心,因?yàn)楸菊聝?nèi)容是整個(gè)VisualBasic語言的基礎(chǔ),并且在

試題中本章所占比例較大,近年來考題分值一直保持在25分左右,因此考生應(yīng)重點(diǎn)復(fù)習(xí)。

6.1VisualBasic概述

考點(diǎn)1:VisualBasic的特點(diǎn)和版本

1.VisualBasic的特點(diǎn)

VisualBasic是在Basic語言基礎(chǔ)上研制而成的,它具有Basic語言簡單而不貧乏的優(yōu)點(diǎn),

同時(shí)增加了結(jié)構(gòu)化和可視化程序設(shè)計(jì)語言的功能。

VisualBasic是一種可視化的、面向?qū)ο蠛筒捎檬录?qū)動(dòng)方式的結(jié)構(gòu)化高級(jí)程序設(shè)計(jì)語言,

可用于開發(fā)Windows環(huán)境下的各類應(yīng)用程序。

總起來說,VisualBasic有以下主要特點(diǎn):

(1)可視化編程;

(2)面向?qū)ο蟮某绦蛟O(shè)計(jì);

(3)結(jié)構(gòu)化的程序設(shè)計(jì)語言;

(4)事件驅(qū)動(dòng)編程機(jī)制;

(5)訪問數(shù)據(jù)庫。

與傳統(tǒng)的編程語言相比,VisualBasic最突出的特點(diǎn)是可視化編程。

2.VisualBasic的版本

VisualBasic6.0包括3種版本,分別為學(xué)習(xí)版、專業(yè)版和企業(yè)版。

(1)學(xué)習(xí)版

VisualBasic的基礎(chǔ)版本,可用來開發(fā)Windows應(yīng)用程序。該版本包括所有的內(nèi)部控件

(標(biāo)準(zhǔn)控件)、網(wǎng)格(Grid)控件、Tab對(duì)象以及數(shù)據(jù)綁定控件。

(2)專業(yè)版

該版本為專業(yè)編程人員提供了一整套用于軟件開發(fā)、功能完備的工具。它包括學(xué)習(xí)版的

全部功能,同時(shí)包括ActiveX控件、Internet控件、CrystalReportWriter和報(bào)表控件。

(3)企業(yè)版

可供專業(yè)編程人員開發(fā)功能強(qiáng)大的組內(nèi)分布式應(yīng)用程序。該版本包括專業(yè)版的全部功能,

同時(shí)具有自動(dòng)化管理器、部件管理器、數(shù)據(jù)庫管理工具、MicrosoftVisualSourceSafe面向

工程版的控制系統(tǒng)等。

在這3種版本中,企業(yè)版最全;而專業(yè)版包括了學(xué)習(xí)版的功能,用戶可根據(jù)自己的需要

選擇不同的版本。

例6.1.1以下關(guān)于VisualBasic特點(diǎn)的敘述中,錯(cuò)誤的是()。[2006年4月選擇第11

A.VisualBasic是采用事件驅(qū)動(dòng)編程機(jī)制的語言

B.VisualBasic程序既可以編譯運(yùn)行,也可以解釋運(yùn)行

C.構(gòu)成VisualBasic程序的多個(gè)過程沒有固定的執(zhí)行順序

D.VisualBasic程序不是結(jié)構(gòu)化程序,不具備結(jié)構(gòu)化程序的三種基本結(jié)構(gòu)

答案:D

第7章數(shù)據(jù)輸入輸出

本章主要考查數(shù)據(jù)輸入輸出方法,包括數(shù)據(jù)輸出方法、數(shù)據(jù)輸入方法、字形設(shè)置與打印

輸出等內(nèi)容,本章內(nèi)容通常與其他章節(jié)知識(shí)點(diǎn)結(jié)合起來考。通過對(duì)歷年試卷內(nèi)容的分析,

本章考核內(nèi)容約占4%,屬于非重點(diǎn)考查對(duì)象

7.1數(shù)據(jù)輸出方法

7.1.1考點(diǎn)1:print方法

Print方法可以在窗體上顯示文本字符串和表達(dá)式的值,并可在其他圖形對(duì)象或打印機(jī)上

輸出信息。

Print方法的一般格式如下:

[對(duì)象名稱.]Print[表達(dá)式]口;]

說明:

“表達(dá)式”是一個(gè)或多個(gè)表達(dá)式,可以是數(shù)值表達(dá)式或字符串。

當(dāng)輸出多個(gè)表達(dá)式或字符串時(shí),各表達(dá)式用分隔符(逗號(hào)、分號(hào)或空格)隔開。如果輸

出的各表達(dá)式之間用逗號(hào)分隔,則按標(biāo)準(zhǔn)輸出格式(分區(qū)輸出格式)顯示數(shù)據(jù)項(xiàng)。在這種

情況下,以14個(gè)字符位置為單位把一個(gè)輸出行分為若干個(gè)區(qū)段,逗號(hào)后面的表達(dá)式在下一

個(gè)區(qū)段輸出。如果各輸出項(xiàng)之間用分號(hào)或空格作為分隔符,則按緊湊輸出格式輸出數(shù)據(jù)。

Print方法具有計(jì)算和輸出雙重功能.對(duì)于表達(dá)式,它先計(jì)算后輸出。

在一般情況下,每執(zhí)行一次Print方法后會(huì)自動(dòng)換行。為了仍在同一行上顯示,可以在末

尾加上一個(gè)分號(hào)或逗號(hào)。

例7.1.1以下語句的輸出結(jié)果是[2005年4月填空第6題]

PrintInt(12345.6789*100+0.5)/100

解析:12345.6789*100+0.5=1234568.39,Int(12345.6789*100+0.5)=1234568,最后結(jié)

果為12345.68。

答案:12345.68

7.1.2考點(diǎn)2:與Print方法有關(guān)的函數(shù)

在Print方法中經(jīng)常使用Tab函數(shù)、Spc函數(shù)和Space函數(shù),使信息按指定的格式輸出。

1.Tab(n)函數(shù)

Tab(n):用于把光標(biāo)往后移動(dòng)n個(gè)字符的位置,從這個(gè)位置開始輸出信息。要輸出的內(nèi)

容放在Tab函數(shù)的后面,并用分號(hào)隔開。

例如:

PrintTab(25);800

說明:

①參數(shù)n為數(shù)值表達(dá)式,其值為一個(gè)整數(shù),它是下一個(gè)輸出位置的列號(hào),表示在輸出前

把光標(biāo)移到該列。最左邊的列號(hào)為1,如果當(dāng)前的顯示位置已經(jīng)超過n,則自動(dòng)下移一行。

②在VisualBasic中,對(duì)參數(shù)n的取值范圍沒有具體限制。當(dāng)n比行寬大時(shí),顯示位置為

nMod行寬;如果n<l,則把輸出位置移到第一列。

③當(dāng)在一個(gè)Print方法中有多個(gè)Tab函數(shù)時(shí),每個(gè)Tab函數(shù)對(duì)應(yīng)一個(gè)輸出項(xiàng),各輸出項(xiàng)之

間用分號(hào)隔開。

2.Spc(n)函數(shù)

Spc(n)函數(shù)與Tab函數(shù)類似,用于跳過n個(gè)空格輸出。與Tab函數(shù)的區(qū)別是,Tab函數(shù)從

第一列開始計(jì)數(shù),n是絕對(duì)偏移量。而spc函數(shù)則是從前面的輸出項(xiàng)后開始計(jì)數(shù),n是相對(duì)

偏移量。

例如:

Print**CHINA,,;Spc(8);,,CSAr,

該語句首先輸出“CHINA”,然后經(jīng)過8個(gè)空格,顯示“CSAI”。

說明:

參數(shù)n是一個(gè)數(shù)值表達(dá)式,其取值范圍為0?32767的整數(shù)。Spc函數(shù)與輸出項(xiàng)之間用

分號(hào)隔開。

Spc函數(shù)與Tab函數(shù)的作用類似,而且可以互相代替。

3.Space$(n)

SpaceS(n):用于返回n個(gè)空格。

例7.1.2Tab函數(shù)用于把光標(biāo)往后移動(dòng)到自己需要的位置,它與輸出的內(nèi)容要用符

號(hào)隔開。

答案:分號(hào)(;)

7.1.3考點(diǎn)3:格式輸出(Format$)

Format$用于把數(shù)值和日期型的數(shù)據(jù)按指定的格式輸出。Format$的一般格式如下:

Format$(數(shù)值表達(dá)式,格式字符串)

說明:如果省略格式字符串,則把數(shù)值表達(dá)式的值轉(zhuǎn)換成字符串。在這種情況下Format

$函數(shù)的功能與$什$函數(shù)基本相同,惟一的差別是當(dāng)把正數(shù)轉(zhuǎn)換成字符串時(shí),Str$函數(shù)

在字符串前面留有一個(gè)空格,而Format$函數(shù)則不留空格。其作用見下表。

格式字符串及其作用

字符作用

〃#〃表示數(shù)字,不在數(shù)值字符串的前面或后面補(bǔ)0

”0〃表示數(shù)字,寬度不足時(shí),在數(shù)值字符串的前面或后面補(bǔ)0

〃〃

指定小數(shù)點(diǎn)的位置

〃〃

指定千位分隔符的位置(不能放在頭部或尾部)

〃%〃指定百分比符號(hào)的位置

〃$〃

指定美元符號(hào)的位置

〃-/+〃指定正號(hào)和負(fù)號(hào)的位置

“E+/E-”指定數(shù)字符號(hào)的位置

例如:使用以下事件過程測試數(shù)值的格式化輸出。

PrivateSubForm_Click()

PrintFormat$(25634,“########")

PrintFormat$(25634,"00000000M)

Pr血Format$(256.34,"0000.00")

PrintFormat$(256.34,

PrintFormat$(12345.67,"####,#.##")

PrintFormat$(12345.67,

PrintFormat$(12345.6,H###,##0.00H)

PrintFormat$(12345.6,"$###,#0.00n)

PrintFormat$(12345.6,H-###,##0.00")

PrintFormat$(0.123,H0.00%")

PrintFormat$(12345.6,n0.00E+00n)

PrintFormat$(0.1234567,n0.00E-00n)

PrintFormat$(12345.67,n,#####.##M)錯(cuò)誤

PrintFormat$(12345.67,”#####,.##")'錯(cuò)誤

EndSub

上述過程運(yùn)行后,單擊窗體,輸出結(jié)果如圖7?2所示。

圖7-2數(shù)值格式化輸出

7.1.4考點(diǎn)4:Cis方法與Move方法

1.Cis方法

Cis方法用于清除通過畫圖方法畫出的圖形或者用Print語句打印的信息,并把光標(biāo)移到

對(duì)象的左上角(0,0)o這里的對(duì)象可以是窗體或圖片框,如果省略“對(duì)象”則清除當(dāng)前窗

體內(nèi)的顯示內(nèi)容。

Cis方法的一般格式為:

對(duì)象名.Cis

例如:

Picture】.Cis'清除圖片框Picture1內(nèi)的圖形或文本

Cis'清除當(dāng)前窗體內(nèi)顯示的內(nèi)容

說明:

如果AutoRedraw=False,則Cis方法不能清除在AutoRedraw為True時(shí)所產(chǎn)生的圖形和

打印的信息。

清除后,當(dāng)前座標(biāo)回到對(duì)象的左上角。

當(dāng)窗體的背景是用Picture屬性裝入的圖形時(shí),不能用Cis方法清除,只能通過

LoadPicture方法清除。

2.Move方法

Move方法用來移動(dòng)窗體和控件,并可改變其大小。Move方法的一般格式如下:

[對(duì)象.]Move左邊距離[,上邊距離][,寬度[,高度]]]

例如:在窗體上畫一個(gè)文本框和一個(gè)圖片框,在窗體的單擊事件中編寫如下代碼,改變

窗體、文本框利圖片框的大小和位置。程序運(yùn)行后,窗體的單擊事件觸發(fā)前后的結(jié)果分別

如圖7-3和圖74所示。

PrivateSubForm_Click()

Move800,800,4000,2600

Textl.Move200,200,1500,1000

Picture1.Move1800,200,1500,1000

Picture1.Print"Picture1”

EndSub

圖7-3窗體單擊事件觸發(fā)前界面圖7-4窗體單擊事件觸發(fā)后界面

說明:

Move方法中的“對(duì)象”可以是窗體以及除計(jì)時(shí)器(Timer)、菜單(Menu)之外的所有

控件,如果省略“對(duì)象”,則表示要移動(dòng)的是窗體?!白筮吘嚯x”、“上邊距離”、“寬度”及"高

度”均以twip(緩)為單位。

如果“對(duì)象”是窗體,貝U“左邊距離”和“上邊距離”均以屏幕左邊界和上邊界為準(zhǔn);

如果“對(duì)象”是控件,則以窗體的左邊界和上邊界為準(zhǔn)。

3.TextHeight和TextWidth方法

這兩個(gè)方法用來輔助設(shè)置坐標(biāo)。其中TextHeight方法返回一個(gè)文本字符串的高度值,而

TextWidth方法則返回一個(gè)文本字符串的寬度值,單位均為twip(堤)。

屬性ScaleHeight和ScaleWidth分別用來表示對(duì)象的高度和寬度值,它們與方法

TextHeght和TextWidth結(jié)合使用,可以使字符串居中顯示。

屬性Height和Width可用來返回或設(shè)置窗體、控件、打印機(jī)及屏幕的高度和寬度,而

Left和Top屬性分別用來返回或設(shè)置窗體、控件與其左邊和頂邊的距離,它們的單位均為

Twip(統(tǒng))。

例如:編寫程序,使字符串居中。

PrivateSubForm_Click()

FontSize=16

Samples=HChinaCsai中國系統(tǒng)分析員”

Print”字符寬/高:",TextWidth(Sample$);TextHeight(Sample$)

x=(ScaleWidth-TextWidth(SampIeS))/2

y=(ScaleHeight-TextHeight(Sample$))/2

CurrentX=x

CurrentY=y

PrintSampleS

EndSub

程序運(yùn)行后,單擊窗體,結(jié)果如圖7-5所示?

圖7-5字符串居中顯示

例7.1.4把控件移到相應(yīng)的位置,并能改變其大小的方法是()。

A.CisB.MoveC.formatD.Tab

答案:B

7.1.5考點(diǎn)5:MsgBox函數(shù)

MsgBox函數(shù)的一般格式如下:

MsgBox(msg[,type][>title][,helpfile,context])

功能:MsgBox函數(shù)用于在用戶操作時(shí),顯示一個(gè)提示性的對(duì)話框,以提示用戶進(jìn)行

后面操作的選擇。

MsgBox函數(shù)的參數(shù)及其作用見下表。

MsgBox函數(shù)的參數(shù)及其作川

參數(shù)含義

prompt顯示提示用戶的字符串,在對(duì)話框內(nèi)顯示,不超過1024個(gè)字符

type整數(shù)或符號(hào)常量,控制按鈕和圖標(biāo)的種類和數(shù)量表

title顯示對(duì)話框的標(biāo)題

helpfile字符串表達(dá)方式,用于指明幫助文件的名字

context數(shù)值表達(dá)方式,表示相關(guān)的幫助主題或目錄號(hào)

MsgBox函數(shù)的返回值見下表。

MsgBox函數(shù)的返|可值

操作返回值符號(hào)常量

選“確定”按鈕1vbOk

選“取消”按鈕2vbCancel

選“終止”按鈕3vbAbort

選“重試”按鈕4vbRetry

選“忽略”按鈕5vblgnore

選“是"按鈕6vbYes

選“否”按鈕7vbNo

例如:編寫程序,用MsgBox函數(shù)判斷是否繼續(xù)執(zhí)行。

PrivateSubForm_Click()

msgS="請(qǐng)確認(rèn)數(shù)據(jù)是否正確”

Title$=”數(shù)據(jù)檢查“

x=MsgBox(msg$,19,Title$)

Ifx=6Then

Printx*x

Elselfx=7Then

Print"請(qǐng)重新輸入”

EndIf

EndSub

程序運(yùn)行后,單擊窗體,彈出如圖7-6所示的對(duì)話框。如果選擇“是"按鈕,則返回值

為6,在窗體上打印出36;如果選擇“否”按鈕,則返回值為7,在窗體上打印出“請(qǐng)重新輸

圖7-6MsgBox函數(shù)對(duì)話框

例7.1.5假定有如下的命令按鈕(名稱為Commandl)事件過程:

PrivateSubCommandl_Click()

x=InputBox(“輸入:”,輸入整數(shù)”)

MsgBox”輸入的數(shù)據(jù)是:“,,”輸入數(shù)據(jù):“+x

EndSub

程序運(yùn)行后,單擊命令按鈕,如果從鍵盤上輸入數(shù)10,則以下敘述中錯(cuò)誤的是()。

[2006年4月選擇第19題]

A.x的值是數(shù)值10

B.輸入對(duì)話框的標(biāo)題是“輸入整數(shù)”

C.信息框的標(biāo)題是“輸入數(shù)據(jù):10”

D.信息框中顯示的是“輸入的數(shù)據(jù)是:”

答案:A

7.1.6考點(diǎn)6:MsgBox語句

MsgBox函數(shù)也可以寫成語句形式,即:

MsgBoxMsg$[,type%][,title$][,helpfilc,context]

各參數(shù)的含義及作用與MsgBox函數(shù)相同,由于MsgBox語句沒有返回值,因而常用

于較簡單的信息顯示。

例7.1.6MsgBox函數(shù)的返回類型是()。

A.字符型B.數(shù)值型C.日期型D.沒有返回值

答案:B

重點(diǎn)提示:考生在考試中應(yīng)當(dāng)注意MsgBox函數(shù)返回值與MsgBox語句的返回值不同,

MsgBox函數(shù)返回值為數(shù)值,而MsgBox語句則沒有返回值。

第8章VisualBasic控制結(jié)構(gòu)

本章主要考查VisualBasic程序設(shè)計(jì)常用的控制結(jié)構(gòu),包括分支控制結(jié)構(gòu)、循環(huán)控制結(jié)構(gòu)

和GoT。型控制結(jié)構(gòu)。通過對(duì)歷年試卷內(nèi)容的分析,本章考核內(nèi)容約占10%,屬于一般考

查對(duì)象。本章內(nèi)容下次考試將有上升趨勢。

8.1分支控制結(jié)構(gòu)

8.1.1考點(diǎn)1:單行結(jié)構(gòu)條件語句

單行條件語句的格式如下:

If條件Thenthen部分[Elseelse部分]

其功能為:如果“條件”為True,則執(zhí)行“then部分”,否則執(zhí)行“else部分”。其中的“else

部分''是可選的,當(dāng)其省略時(shí),If語句簡化為:

If條件Thenthen部分

其功能為:如果“條件”為True,則執(zhí)行“then部分”,否則執(zhí)行下一行程序。

條件語句中的“then部分”和“else部分”都可以嵌套,其深度(嵌套層數(shù))沒有具體規(guī)定,

但受到每行字符數(shù)(1024)的限制。當(dāng)嵌套層數(shù)較多時(shí),應(yīng)注意嵌套的正確性,一般原則

是:每一個(gè)“Else”部分都與它前面未曾被配對(duì)的“If-Then”配對(duì)。

例8.1.1當(dāng)x=-5時(shí),執(zhí)行下述代碼后,x的值為()。

Ifx>=0ThenIfx>0Theny=1Elsey=0Elsey=-1

A.1B.0C.-1D.以上都不正確

答案:C

8.1.2考點(diǎn)2:塊結(jié)構(gòu)條件語句

塊結(jié)構(gòu)條件語句與C、Ada等語言中的條件語句類似,一般格式如下:

If條件1Then

語句塊1

[Elself條件2Then

語句塊2]

[Elself條件3Then

語句塊3]

[Else

語句塊n]

EndIf

其功能為:如果“條件1”為True,則執(zhí)行“語句塊1”;如果“條件2”為True,則執(zhí)行“語

句塊2”……則執(zhí)行“語句塊n”。

該語句中的“語句塊”可以是一個(gè)語句,也可以是多個(gè)語句。當(dāng)是多個(gè)語句時(shí),可以分別

寫在多行里;如果寫在一行中,則各語句之間用冒號(hào)隔開。

說明:

該語句中的“條件1”、“條件2”等都是邏輯表達(dá)式,通常數(shù)值表達(dá)式和關(guān)系表達(dá)式都是邏

輯表達(dá)式的特例。

“語句塊''中的語句不能與前面的Then在同--行,否則VisualBasic認(rèn)為是一個(gè)單行結(jié)構(gòu)

的條件語句。

在塊結(jié)構(gòu)的條件語句中,Elself子句的數(shù)量沒有限制,可以根據(jù)需要加入任意多個(gè)Elself

子句。

塊結(jié)構(gòu)條件語句中的Elself子句和Else子句都是可選的。

當(dāng)If結(jié)構(gòu)體內(nèi)有多個(gè)條件為True時(shí),VisualBasic執(zhí)行第一個(gè)為True的條件后面的語句

塊。

塊形式的條件語句可以嵌套,嵌套時(shí)必須完全“包住”,不能互相"騎跨

例8.1.2函數(shù)A()、B()、C()分別實(shí)現(xiàn)三種不同的功能,令X=l、Y=-4、Z=0,

那么下述代碼的功能是()。

If(X>0)Then

A()

Elself(Y<10)Then

B()

Elself(Z<3)Then

C()

EndIf

A.執(zhí)行函數(shù)A()B.執(zhí)行函數(shù)B()C.執(zhí)行函數(shù)C()D.以上都不正確

答案:A

8.1.3考點(diǎn)3:Ilf函數(shù)

Hf函數(shù)可以用來執(zhí)行簡單的條件判斷操作,它是“If...Then…Else”結(jié)構(gòu)的簡寫版本,是

“ImmediateIf的縮略。其格式如下:

result=llf(條件,True部分,F(xiàn)alse部分)

其中,“result”是函數(shù)的返回值,“條件”是一個(gè)邏輯表達(dá)式。當(dāng)“條件”為真時(shí),Of函數(shù)返

回“True部分”,否則返回“False部分”?!癟rue部分”或“False部分”可以是表達(dá)式、變量或其

他函數(shù)。該函數(shù)與C語言中“?:”運(yùn)算符的功能相似,可以使程序大為簡化。

例8.1.3設(shè)2="葭,b="b",c="c",d=“d”,執(zhí)行語句x=Hf((a<b)Or(c>d),“A”,

“B”)后,x的值為()。[2005年4月選擇第15題]

A."a"B."b"C."B"D."A”

答案:D

重要提醒:使用Hf函數(shù)時(shí),其中的三個(gè)參數(shù)都不可以省略,而且要求“True部分”、

“False部分”及結(jié)果變量的類型一致。此外,山于Uf要計(jì)算“True部分”和“False部分”,因

此有可能會(huì)產(chǎn)生副作用。

8.1.4考點(diǎn)4:多分支控制結(jié)構(gòu)

多分支控制結(jié)構(gòu)由情況語句(Select語句或Case語句)構(gòu)成,它可以根據(jù)一個(gè)表達(dá)式的

值,在一組相互獨(dú)立的可選語句序列中挑選要執(zhí)行的語句序列。情況語句是塊形式條件語

句的一種變形,其格式如下:

SelectCase測試表達(dá)式

Case表達(dá)式表列1

[語句塊2]]

[Case表達(dá)式表列2

[語句塊2]]

[CaseElse

[語句塊n]]

EndSelect

其功能是,根據(jù)“測試表達(dá)式”的值,從多個(gè)語句塊中選擇符合條件的一個(gè)語句塊執(zhí)行。

其中,”測試表達(dá)式”可以是數(shù)值表達(dá)式或字符串表達(dá)式,通常稱為變量或常量;“語句塊1、

語句塊2……語句塊n"山一行或多行合法的VisualBasic語句組成?!氨磉_(dá)式表列1、表達(dá)

式表列2……表達(dá)式表列n?稱為域值,可以采用下述三種形式:表達(dá)式[,表達(dá)式]、表達(dá)

式To表達(dá)式、Is關(guān)系運(yùn)算表達(dá)式。

對(duì)于這種控制結(jié)構(gòu),需要掌握以下幾點(diǎn):

SelectCase語句與If…Then…Else語句塊的功能類似,二者可以互換使用°

和C語言不同,如果同一個(gè)域值的范圍在多個(gè)Case子句中出現(xiàn),則只執(zhí)行符合要求的第

一個(gè)Case子句的語句塊。

CaseElse子句必須放在所有的Case子句之后,如果SelectCase結(jié)構(gòu)中任何一個(gè)Case子

句都沒有與測試表達(dá)式相匹配的值,而且也沒有CaseElse子句,則不執(zhí)行任何操作。

在不同的Case子句中指定的條件和相應(yīng)的操作不能相互矛盾。

例8.1.4在窗體上畫1個(gè)命令按鈕(名稱為Command1)和1個(gè)文本框(名稱為

Textl),然后編寫如下事件過程:

PrivateSubCommandl_Click()

x=Val(Textl.Text)

SelectCasex

Case1,3

y=x*x

CaseIs>=10,Is<=-10

y=x

Case-10To10

y=-x

EndSelect

EndSub

程序運(yùn)行后,在文本框中輸入3,然后單擊命令按鈕,則以下敘述中正確的是()。

[2006年4月選擇第20題]

A.執(zhí)行y=x*xB.執(zhí)行產(chǎn)-xC.先執(zhí)行y=x*x,再執(zhí)行y=-xD.程序出錯(cuò)

答案:A

重要提示:“表達(dá)式表列”中的三種形式,在使用時(shí)需要注意以下幾點(diǎn):

關(guān)鍵字To用來指定一個(gè)范圍,此時(shí),必須把較小的值寫在前面,較大的值寫在后面,

字符串常量的范圍必須按字母的順序?qū)懗觥?/p>

如果使用關(guān)鍵字Is,則只能用關(guān)系運(yùn)算符,并且條件只能是簡單條件,不能用邏輯運(yùn)算

符將兩個(gè)或多個(gè)簡單條件組合在一起。

在一個(gè)SelectCase語句中,三種形式可以混用。

第9章數(shù)組與過程

本章主要考查VisualBasic中的數(shù)組與過程,主要包括:數(shù)組基本概念、數(shù)組基本操作、

控件數(shù)組、Sub過程、Function過程、過程中的參數(shù)、局部內(nèi)存分配和Shell函數(shù)。通過對(duì)

歷年試卷內(nèi)容的解析,本章考核內(nèi)容約占18%,屬于重點(diǎn)考查對(duì)象,但將保持下降趨勢。

9.1數(shù)組基本概念

9.1.1考點(diǎn)1:數(shù)組的定義

數(shù)組是有序的數(shù)據(jù)的集合。在VisualBasic中,一個(gè)數(shù)組中的元素可以是相同類型的數(shù)據(jù),

也可以是不同類型的數(shù)據(jù)。在VisualBasic中,可以有兩種格式定義數(shù)組:

1.第一種格式

(1)一維數(shù)組

一維數(shù)組的定義一般格式如下:

Dim數(shù)組名(下標(biāo)上界)As類型名稱

例如:Dimscore(10)AsInteger

該語句定義了一個(gè)一維數(shù)組,名字為score,類型為Integer,共6個(gè)元素。

(2)二維數(shù)組

二維數(shù)組的定義一般格式如下:

Dim數(shù)組名(第一維下標(biāo)上界,第二維下標(biāo)上界)As類型名稱

例如:DimstuScore(10,2)AsInteger

該語句定義了一個(gè)二維數(shù)組,名字為stuScore,類型為Integer,共11X3=33個(gè)元素。

2.第二種格式

(1)定義數(shù)組

在定義數(shù)組時(shí),指定數(shù)組下標(biāo)的上界和下界。語句一般格式如下:

Dim數(shù)組名([下界To]上界[,[下界To]上界]……)As類型名稱

例如:Dimscore(1To5)

該語句定義了一個(gè)一維數(shù)組,下界為1,上界為5,共5個(gè)元素。

第二種格式實(shí)際上包含了第一種格式,只要省略“下界To",即變?yōu)榈谝环N格式。

(2)語句說明

“數(shù)組名”與簡單變量相同,可以是任何合法的VisualBasic變量名,在同一過程中,數(shù)組

名不能與變量名同名;

數(shù)組必須先定義后使用,并且每一維的元素個(gè)數(shù)必須是常數(shù),不能是變量或表達(dá)式;

使用Dim語句定義數(shù)組時(shí),數(shù)值數(shù)組中的全部元素初始化為0,字符串?dāng)?shù)組中的全部元

素初始化為空字符串;

一般情況下,下標(biāo)的下界默認(rèn)為0,可以使用OptionBasen(n只能為或1)改變下標(biāo)的

默認(rèn)為1;使用LBound和UBound函數(shù)可以獲得數(shù)組的上、下界值;

如果下標(biāo)值從0開始,則數(shù)組元素的個(gè)數(shù)為最大下標(biāo)值加1,如果下標(biāo)值從1開始,則

數(shù)組元素的個(gè)數(shù)與最大下標(biāo)值相等。

3.定義數(shù)組的保留字

在VisualBasic中,定義數(shù)組時(shí)可使用4個(gè)保留字,以定義不同范圍內(nèi)的數(shù)組:

Dim:定義窗體模式或標(biāo)準(zhǔn)模塊數(shù)組,也可用在過程中;

ReDim:用在過程中;

Static:用在過程中;

Public:用在標(biāo)準(zhǔn)模塊中,定義全局?jǐn)?shù)組。

例9.1.1在窗體上畫1個(gè)命令按鈕,其名稱為Commandl,然后編寫如下事件過程:

[2006年4月填空第7-8題]

PrivateSubCommandl_Click()

Dimarr(1To100)AsInteger

ForI=1To100

arr(i)=Int(Rnd*1000)

Nexti

Max=arr(l)

Min=arr(l)

Fori=1To100

If[7]Then

Max=arr(i)

EndIf

If[8]Then

Min=arr(i)

EndIf

Nexti

Print"Max=";Max,"Min-*;Min

EndSub

程序運(yùn)行后,單擊命令按鈕,將產(chǎn)生100個(gè)1000以內(nèi)的隨機(jī)整數(shù),放入數(shù)組an?中,然

后查找并輸出這100個(gè)數(shù)中的最大值Max和最小值Min,請(qǐng)?zhí)羁铡?/p>

解析:由條件判斷可以得知,在【7】處的意思是將最大值Max中的數(shù)與arr(i)中的數(shù)相

比較,【8】處的意思是將最小值Min中的數(shù)與arr⑴中的數(shù)相比較。

答案:【7】Max<arr(i)[8]Min>arr(i)

9.1.2考點(diǎn)2:默認(rèn)數(shù)組

所謂默認(rèn)數(shù)組,就是數(shù)據(jù)類型為Variant(默認(rèn))的數(shù)組。在一般情況下,定義數(shù)組應(yīng)指

明其類型。

例如:

StaticElec(lTo100)AsInteger

該語句定義了一個(gè)數(shù)組Elec,該數(shù)組的類型為整型,它有100個(gè)元素,每個(gè)元素都是一

個(gè)整數(shù)。但如果使用語句:

StaticEIec(lTo100)

則定義的數(shù)組是默認(rèn)數(shù)組,沒有指定類型,則類型默認(rèn)為Variant,該語句等價(jià)于:

StaticElec(lTo100)AsVariant

對(duì)于默認(rèn)數(shù)組來說,同一個(gè)數(shù)組中可以存放各種不同的數(shù)據(jù)。因此,默認(rèn)數(shù)組可以說是

一種“混合數(shù)組”,這也就是默認(rèn)數(shù)組的意義所在。

例9.1.2閱讀下面程序并填空。

SubForm_Click()

[1]

Defau(l)=100

Defau(2)=234.56

Defau(3)=MCSAF

Defau(4)="20"&Now

Fori=lTo4

Print"Defau(n;I;n)=M;Defau(i)

Nexti

EndSub

答案:【1】StaticDefau(4)

第10章鍵盤與鼠標(biāo)事件

本章主要考查鍵盤事件與鼠標(biāo)事件,包括KeyPress事件、KeyDown和KeyUp事件、鼠

標(biāo)事件、鼠標(biāo)光標(biāo)的形狀與拖放等知識(shí)點(diǎn)。通過對(duì)歷年試卷內(nèi)容的分析,本章考核內(nèi)容約

占6%,屬于一般考查對(duì)象。

10.1鍵盤事件

使用鍵盤事件過程,可以處理當(dāng)按下或釋放鍵盤上某個(gè)鍵時(shí)所執(zhí)行的操作。

10.1.1考點(diǎn)1:KeyPress事件

當(dāng)壓下鍵盤上的某個(gè)鍵時(shí),將發(fā)生KeyPress事件。該事件可用于窗體、復(fù)選框、組合框、

命令按鈕、列表框、圖片框、文本框、滾動(dòng)條及與文件有關(guān)的控件。嚴(yán)格地說,當(dāng)按下某

個(gè)鍵時(shí),所觸發(fā)的是擁有輸入焦點(diǎn)(Focus)的那個(gè)控件的KeyPress事件。在某一時(shí)刻,

輸入焦點(diǎn)只能位于某一個(gè)控件上,如果窗體上沒有活動(dòng)的或可見的控件,則輸入焦點(diǎn)位于

窗體上。當(dāng)一個(gè)控件或窗體擁有輸入焦點(diǎn)時(shí),該控件或窗體將接收從鍵盤上輸入的信息。

例如,假定一個(gè)文本框擁有輸入焦點(diǎn),則從鍵盤上輸入的任何字符都將在該文本框中回顯。

在窗體上畫一個(gè)控件(指前面所講的可以發(fā)生KeyPress事件的控件),比如文本框,并

雙擊該控件,進(jìn)入程序代碼窗口后,從“過程”框中選取KeyPress,即可定義KeyPress事件

過程。一般格式如下:

PrivateSubTextl_KeyPress(KeyAsciiAsInteger)

EndSub

KeyPress事件帶有一個(gè)參數(shù),這個(gè)參數(shù)有兩種形式,第一種形式是IndexAsInteger,只

用于控件數(shù)組;第二種形式是KeyAsciiAsInteger,用于單個(gè)控件。上面列出的是第二種形

式。KeyPress事件用來識(shí)別按鍵的ASCH碼。參數(shù)KeyAscii是一個(gè)預(yù)定義的變量,執(zhí)行

KeyPress事件過程時(shí),KeyAscii是所按鍵的ASCII碼。

說明:

利用KeyPress事件可以對(duì)輸入的值進(jìn)行限制;

利用KeyPress事件可以捕捉擊鍵動(dòng)作;

在KeyPress過程中可以修改KeyAscii變量的值。如果進(jìn)行了修改,VisualBasic控件中

輸入修改后的字符,而不是用戶輸入的字符。

例10.1.1以下關(guān)于KeyPress事件過程參數(shù)KeyAscii的敘述中,正確的是()。[2005

年9月填空第29題]

A.KeyAscii參數(shù)是所按鍵的ASCH碼B.KeyAscii參數(shù)的數(shù)據(jù)類型為字符串

C.KeyAscii參數(shù)可以省略D.KeyAscii參數(shù)是所按鍵上標(biāo)注的字符

解析:KeyPress事件帶有一個(gè)參數(shù),這個(gè)參數(shù)有兩種形式。第一種形式是IndexAs

Int

溫馨提示

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

評(píng)論

0/150

提交評(píng)論