首頁(yè) 考試吧論壇 Exam8視線(xiàn) 考試商城 網(wǎng)絡(luò)課程 模擬考試 考友錄 實(shí)用文檔 求職招聘 論文下載
2011中考 | 2011高考 | 2012考研 | 考研培訓(xùn) | 在職研 | 自學(xué)考試 | 成人高考 | 法律碩士 | MBA考試
MPA考試 | 中科院
四六級(jí) | 職稱(chēng)英語(yǔ) | 商務(wù)英語(yǔ) | 公共英語(yǔ) | 托福 | 雅思 | 專(zhuān)四專(zhuān)八 | 口譯筆譯 | 博思 | GRE GMAT
新概念英語(yǔ) | 成人英語(yǔ)三級(jí) | 申碩英語(yǔ) | 攻碩英語(yǔ) | 職稱(chēng)日語(yǔ) | 日語(yǔ)學(xué)習(xí) | 法語(yǔ) | 德語(yǔ) | 韓語(yǔ)
計(jì)算機(jī)等級(jí)考試 | 軟件水平考試 | 職稱(chēng)計(jì)算機(jī) | 微軟認(rèn)證 | 思科認(rèn)證 | Oracle認(rèn)證 | Linux認(rèn)證
華為認(rèn)證 | Java認(rèn)證
公務(wù)員 | 報(bào)關(guān)員 | 銀行從業(yè)資格 | 證券從業(yè)資格 | 期貨從業(yè)資格 | 司法考試 | 法律顧問(wèn) | 導(dǎo)游資格
報(bào)檢員 | 教師資格 | 社會(huì)工作者 | 外銷(xiāo)員 | 國(guó)際商務(wù)師 | 跟單員 | 單證員 | 物流師 | 價(jià)格鑒證師
人力資源 | 管理咨詢(xún)師考試 | 秘書(shū)資格 | 心理咨詢(xún)師考試 | 出版專(zhuān)業(yè)資格 | 廣告師職業(yè)水平
駕駛員 | 網(wǎng)絡(luò)編輯
衛(wèi)生資格 | 執(zhí)業(yè)醫(yī)師 | 執(zhí)業(yè)藥師 | 執(zhí)業(yè)護(hù)士
會(huì)計(jì)從業(yè)資格考試會(huì)計(jì)證) | 經(jīng)濟(jì)師 | 會(huì)計(jì)職稱(chēng) | 注冊(cè)會(huì)計(jì)師 | 審計(jì)師 | 注冊(cè)稅務(wù)師
注冊(cè)資產(chǎn)評(píng)估師 | 高級(jí)會(huì)計(jì)師 | ACCA | 統(tǒng)計(jì)師 | 精算師 | 理財(cái)規(guī)劃師 | 國(guó)際內(nèi)審師
一級(jí)建造師 | 二級(jí)建造師 | 造價(jià)工程師 | 造價(jià)員 | 咨詢(xún)工程師 | 監(jiān)理工程師 | 安全工程師
質(zhì)量工程師 | 物業(yè)管理師 | 招標(biāo)師 | 結(jié)構(gòu)工程師 | 建筑師 | 房地產(chǎn)估價(jià)師 | 土地估價(jià)師 | 巖土師
設(shè)備監(jiān)理師 | 房地產(chǎn)經(jīng)紀(jì)人 | 投資項(xiàng)目管理師 | 土地登記代理人 | 環(huán)境影響評(píng)價(jià)師 | 環(huán)保工程師
城市規(guī)劃師 | 公路監(jiān)理師 | 公路造價(jià)師 | 安全評(píng)價(jià)師 | 電氣工程師 | 注冊(cè)測(cè)繪師 | 注冊(cè)計(jì)量師
繽紛校園 | 實(shí)用文檔 | 英語(yǔ)學(xué)習(xí) | 作文大全 | 求職招聘 | 論文下載 | 訪(fǎng)談 | 游戲

2011計(jì)算機(jī)等級(jí)考試Delphi面向?qū)ο蟮木幊谭椒?/h1>

本章中,我們將討論Object Pascal的主要特點(diǎn),并講解如何在事件處理過(guò)程和其他應(yīng)用程序中,使用它來(lái)編制程序代碼。

  2.1.4.1 if語(yǔ)句

  if語(yǔ)句會(huì)計(jì)算一個(gè)表達(dá)式,并根據(jù)計(jì)算結(jié)果決定程序流程。在上文的例程中,根據(jù)ColorDialog.Execute的返回值,決定窗體的背景顏色。if保留字后跟隨一個(gè)生成Boolean值True或False的表達(dá)式。一般用“=”作為關(guān)系運(yùn)算符,比較產(chǎn)生一個(gè)布爾型值。當(dāng)表達(dá)式為T(mén)rue時(shí),執(zhí)行then后的語(yǔ)句。否則執(zhí)行else后的代碼,if語(yǔ)句也可以不含else部分,表達(dá)式為False時(shí)自動(dòng)跳到下一行程序。

  if語(yǔ)句可以嵌套,當(dāng)使用復(fù)合語(yǔ)句表達(dá)時(shí),復(fù)合語(yǔ)句前后需加上begin…end。else保留字前不能加“;”,而且,編譯器會(huì)將else語(yǔ)句視為屬于最靠近的if語(yǔ)句。必要時(shí),須使用begin…end保留字來(lái)強(qiáng)迫else部分屬于某一級(jí)的if語(yǔ)句。

  2.1.4.2 case語(yǔ)句

  case語(yǔ)句適用于被判斷的變量或?qū)傩允钦巍⒆址、枚舉型或子界型時(shí)(LongInt除外)。用case語(yǔ)句進(jìn)行邏輯跳轉(zhuǎn)比編寫(xiě)復(fù)雜的if語(yǔ)句容易閱讀,而且程序代碼整形較快。

  下面的例程顯示一個(gè)使用case語(yǔ)句的窗體:

  建立如下的事件處理過(guò)程:

  procedure TForm1.Button1Click(Sender: TObject);

  var

  Number : Integer;

  begin

  Number := StrToInt(Edit1.Text);

  case Number of

  1,3,5,7,9: Label2.Caption := '奇數(shù)';

  0,2,4,6,8: Label2.Caption := '偶數(shù)';

  10..100:

  begin

  Label2.Caption := '在10到100之間';

  Form1.Color := clBlue;

  end;

  else

  Label2.Caption := '大于100或?yàn)樨?fù)數(shù)';

  end;

  end;

  執(zhí)行程序,當(dāng)Edit1部件接受到一個(gè)值,并按動(dòng)“OK”按鈕觸發(fā)程序后,Number便被賦值為用戶(hù)輸入的數(shù)值。case語(yǔ)句根據(jù)Number的值判斷該執(zhí)行哪一條語(yǔ)句。象if語(yǔ)句一樣。case語(yǔ)句也有可選擇的else部分。case語(yǔ)句以end結(jié)尾。

  2.1.5 循環(huán)語(yǔ)句

  Object Pascal的循環(huán)語(yǔ)句有三種:repeat、while和for語(yǔ)句。

  2.1.5.1 repeat語(yǔ)句

  repeat語(yǔ)句會(huì)重復(fù)執(zhí)行一行或一段語(yǔ)句直到某一狀態(tài)為真。語(yǔ)句以repeat開(kāi)始,以u(píng)ntil結(jié)束,其后跟隨被判斷的布爾表達(dá)式。參閱以下的例程:

  i := 0;

  repeat

  i := i+1;

  Writen(i);

  until i=10;

  當(dāng)此語(yǔ)句被執(zhí)行時(shí),窗體的下方會(huì)出現(xiàn)1到10的數(shù)字。布爾表達(dá)式 i=10 (注意,與其他語(yǔ)言不同的是,“=”是關(guān)系運(yùn)算符,而不能進(jìn)行賦值操作)直到repeat..until程序段的結(jié)尾才會(huì)被計(jì)算,這意味著repeat語(yǔ)句至少會(huì)被執(zhí)行一次。

  2.1.5.2 while語(yǔ)句

  while語(yǔ)句和repeat語(yǔ)句的不同之處是,它的布爾表達(dá)式在循環(huán)的開(kāi)頭進(jìn)行判斷。while保留字后面必須跟一個(gè)布爾表達(dá)式。如果該表達(dá)式的結(jié)果為真,循環(huán)被執(zhí)行,否則會(huì)退出循環(huán),執(zhí)行while語(yǔ)句后面的程序。

  下面的例程達(dá)到和上面的repeat例程達(dá)到同樣的效果:

  i := 0;

  while i<10 do

  begin

  i := i+1;

  writeln(i);

  end;

  2.1.5.3 for語(yǔ)句

  for語(yǔ)句的程序代碼會(huì)執(zhí)行一定的次數(shù)。它需要一個(gè)循環(huán)變量來(lái)控制循環(huán)次數(shù)。您需要說(shuō)明一個(gè)變量,它的類(lèi)型可以是整形、布爾型、字符型、枚舉型或子界型。

  下面的程序段會(huì)顯示1到5的數(shù)字,i為控制變量:

  var

  i : integer;

  for i := 1 to 5 do

  writeln(i);

  以上介紹了三種循環(huán)語(yǔ)句。如果您知道循環(huán)要執(zhí)行多少次的話(huà),可以使用for語(yǔ)句。for循環(huán)執(zhí)行速度快,效率比較高。如果您不知道循環(huán)要執(zhí)行多少次,但至少會(huì)執(zhí)行一次的話(huà),選用repeat..until語(yǔ)句比較合適;當(dāng)您認(rèn)為程序可能一次都不執(zhí)行的話(huà),最好選用while..do語(yǔ)句。

  2.1.6 程序模塊

  程序模塊在Object Pascal中是很重要的概念。它們提供了應(yīng)用程序的結(jié)構(gòu),決定了變量、屬性值的范圍及程序執(zhí)行的過(guò)程。它由兩個(gè)部分組成:可選擇的說(shuō)明部分和語(yǔ)句部分。如果有說(shuō)明部分,則必在語(yǔ)句部分之前。說(shuō)明部分包括變量說(shuō)明、常量說(shuō)明、類(lèi)型說(shuō)明、標(biāo)號(hào)說(shuō)明、程序,函數(shù),方法的說(shuō)明等。語(yǔ)句部分?jǐn)⑹隽丝蓤?zhí)行的邏輯行動(dòng)。

  在Delphi中,最常見(jiàn)的程序模塊便是事件處理過(guò)程中的程序模塊。下面的事件處理過(guò)程是含有變量說(shuō)明部分的程序模塊:

  procedure TForm.Button1Click(Sender Tobject);

  var {程序模塊的說(shuō)明部分}

  Name : string;

  begin {程序模塊的語(yǔ)句部分}

  Name := Edit1.Text;

  Edit2.Text := 'Welcome to Delphi'+Name;

  end; {程序模塊結(jié)束}

  庫(kù)單元也是程序模塊。庫(kù)單元的interface部分含有庫(kù)函數(shù)、類(lèi)型、私有,公有域的說(shuō)明,也可以含有常量、變量的說(shuō)明。這一部分可以作為程序模塊的說(shuō)明部分。在庫(kù)單元的implementation部分中通常含有各種事件處理過(guò)程,它們可以視為模塊的語(yǔ)句部分,是事件處理模塊。庫(kù)單元模塊結(jié)束于庫(kù)單元結(jié)束的end.處。

  程序模塊中可以包含其他的程序模塊。上文庫(kù)單元模塊中含有事件處理模塊。而庫(kù)單元模塊實(shí)際是在工程程序模塊中。

  所有的Delphi應(yīng)用程序都有相同的基本結(jié)構(gòu)。當(dāng)程序逐漸復(fù)雜時(shí),在程序中加入模塊即可。例如在庫(kù)單元模塊中加入事件處理模塊,向工程中加入庫(kù)單元模塊等。模塊化編程使得程序結(jié)構(gòu)良好,并且對(duì)數(shù)據(jù)具有保護(hù)作用。

上一頁(yè)  1 2 3 4 5 6 7 8 9 10  ... 下一頁(yè)  >> 
  相關(guān)推薦:2010年9月計(jì)算機(jī)等級(jí)考試試題及答案解析專(zhuān)題
       預(yù)告:名師解析2010年9月計(jì)算機(jī)等級(jí)考試試題答案
       2010年9月計(jì)算機(jī)等級(jí)考試成績(jī)查詢(xún)時(shí)間及入口
       2010年9月計(jì)算機(jī)等考成績(jī)查詢(xún)短信免費(fèi)提醒開(kāi)通
文章搜索
版權(quán)聲明:如果計(jì)算機(jī)等級(jí)考試網(wǎng)所轉(zhuǎn)載內(nèi)容不慎侵犯了您的權(quán)益,請(qǐng)與我們聯(lián)系800@exam8.com,我們將會(huì)及時(shí)處理。如轉(zhuǎn)載本計(jì)算機(jī)等級(jí)考試網(wǎng)內(nèi)容,請(qǐng)注明出處。