DelPhi學(xué)習(xí)筆記6用戶(hù)自定義類(lèi)型(精)_第1頁(yè)
DelPhi學(xué)習(xí)筆記6用戶(hù)自定義類(lèi)型(精)_第2頁(yè)
免費(fèi)預(yù)覽已結(jié)束,剩余5頁(yè)可下載查看

下載本文檔

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

文檔簡(jiǎn)介

1、用戶(hù)自定義類(lèi)型1枚舉類(lèi)型的定義 格式:Type類(lèi)型標(biāo)識(shí)符=(標(biāo)識(shí)符 1,標(biāo)識(shí)符 2,標(biāo)識(shí)符 3,-,標(biāo)識(shí)符 m);2格舉類(lèi)型的使用枚舉類(lèi)型屬于順序類(lèi)型, 枚舉類(lèi)型的每個(gè)元素對(duì)應(yīng)一個(gè)有序的整數(shù), 應(yīng)序數(shù) 0因此,枚舉類(lèi)型本質(zhì)上是用一些枚舉常量來(lái)表示一組連續(xù)的整數(shù)。 直接進(jìn)行算術(shù)運(yùn)算,可以進(jìn)行關(guān)系運(yùn)算或間接的算術(shù)運(yùn)算。例:TypeColorl =( Red, Green, Blue, Yellow);【例 6-1】 編寫(xiě)一個(gè)設(shè)置文本格式的應(yīng)用程序,程序的設(shè)計(jì)界面如圖6-1 所示。程序運(yùn)行時(shí),在編輯框中顯示的文本是“輕松學(xué)習(xí)Delphi” 。 程序運(yùn)行時(shí), 單擊 【宋體】按鈕,文本字體為宋體;單擊【

2、隸書(shū)】按鈕,文本字體為隸書(shū); 單擊【黑體】按鈕,文本字體變?yōu)楹隗w。 圖 6-2 是單擊隸書(shū)時(shí)的運(yùn)行界面。要求用枚舉類(lèi)型實(shí)現(xiàn)。輕松學(xué)習(xí)DGlpKilJ宋體集書(shū)11黑體- - - -部份代碼:impleme ntati ontype/定義枚舉類(lèi)型MyFo nt = (st,ls,ht);var/定義枚舉類(lèi)型變量ft : MyFo nt;$R *.dfmFunction ffont(fft : MyFont): String;beginCase fft ofst : ffont :=宋體;ls : ffont := Comic Sans MS;ht : ffont :=黑體;en d;其中第一個(gè)元素

3、對(duì)但枚舉常量不能end;procedure TForml.Butt on 1Click(Se nder: TObject); beginif Button1.Caption =宋體thenbeginft := st;Edit1.Font.Name := ffont(ft);en d;en d;procedure TForm1.Butt on 2Click(Se nder: TObject); beginif Button2.Caption =隸書(shū)thenbeginft := ls;Edit1.Font.Name := ffont(ft);en d;en d;procedure TForm1.B

4、utt on 3Click(Se nder: TObject); beginif Button3.Caption =黑體then beginft := ht;Edit1.Font.Name := ffont(ft);en d;en d;6.1.3 集合類(lèi)型的定義與使用1.集合類(lèi)型的定義集合是具有相同性質(zhì)但又可以區(qū)分開(kāi)來(lái)的對(duì)象的全體。格式:Type類(lèi)型標(biāo)識(shí)符 =set of 其類(lèi)型;例:TypeColors =( Red, Green. Blue,Yellow); /先定義一個(gè)枚舉類(lèi)型Color = set of Colors; /定義一個(gè)基類(lèi)型為枚舉類(lèi)型的集合類(lèi)型Char = set of m

5、.q;直接定義一個(gè)基類(lèi)型為子界類(lèi)型的集合類(lèi)型。F 面的定義是錯(cuò)誤的:typeNum_p = set of 200.400;/雖然只有 201 一個(gè)元素,但 256400 這些數(shù)值超過(guò)了 2552集合類(lèi)型的使用?!纠?6-2】編寫(xiě)一個(gè)判斷字符串中是否有元音字母的程序,程序的設(shè)計(jì)界面如圖6-3 所示。程序運(yùn)行時(shí),在【輸入單詞】編輯框中輸入一個(gè)任意單詞,然后單擊【判斷】按鈕,將 在【結(jié)果】編輯框中顯示有無(wú)元音字母的文本。其中,元音字母為“a,e,i,o,u” ,程序運(yùn)行界面如圖 6-4 所示。要求用集合類(lèi)型實(shí)現(xiàn)。6.1.4 記錄類(lèi)型的定義與使用1.記錄類(lèi)型的定義格式:type記錄類(lèi)型標(biāo)識(shí)符=Reco

6、rd字段 1:類(lèi)型 1 ;字段 2:類(lèi)型 2; 字段 n :類(lèi)型 n;en d;2.下面定義一個(gè)住院病人的記錄類(lèi)型,如下所示:typePatie nt = Recordp_num : In teger; p_name : String;p_pay : Boolean;en d;【例 6-3】編寫(xiě)一個(gè)程序,用來(lái)輸入和顯示某單位員工基本信息。程序的設(shè)計(jì)界面如圖6-5 所示,程序運(yùn)行時(shí),單擊【輸入信息】按鈕,用戶(hù)可以輸入員工的基本信息,包括姓名、 職稱(chēng)和基本工資。單擊【查看信息】按鈕,可以顯示剛剛輸入的該單位員工的基本信息,如 圖 6-6 所示。姓名職稱(chēng)基本工資韓跑跑修臺(tái)9999999張無(wú)忌教主12

7、3456屁華IT 300000000說(shuō)明這是記錄類(lèi)型字段 1 是病人的住院號(hào),為整形數(shù)據(jù)字段 2 是病人的姓名,為字符串?dāng)?shù)據(jù)字段 3 是病人的付款情況,為布爾型數(shù)據(jù)7f輸入信息查看信息impleme ntati ontypepeople In formati on = Record定義記錄類(lèi)型n ame : Strin g8;call : Stri ng 6;wage :ln teger;en d;varpeople :Array 1.3 ofpeople In formati on;$R *.dfmprocedure TForm1.Butt on 1Click(Se nder: TObjec

8、t);vark : In teger;beginfor k := 1 to 3 := InputBox(員工信息,請(qǐng)輸入第+IntToStr(k)+個(gè)員工姓名,);peoplek.call := InputBox(員工信息,請(qǐng)輸入第+IntToStr(k)+個(gè)員工職稱(chēng),); peoplek.wage :=StrToInt(lnputBox(員工信息,請(qǐng)輸入第+IntToStr(k)+個(gè)員工 基本工資,0);end;end;procedure TForml.Butt on 2Click(Se nder: TObject);varm : In teger;b

9、egin/在指定位置顯示Canvas.TextOut(45,25,姓名+職 稱(chēng)+ 基本工資);for m := 1 to 3 doCan vas.TextOut(45,25 * (m+1), peoplem .n ame + + peoplem.call +I ntToStr(peoplem.wage );en d;【練習(xí)題目】:尋找 1100 之間的全部素?cái)?shù)編寫(xiě)一個(gè)尋找 1100 之間的全部素?cái)?shù)的程序,程序的設(shè)計(jì)界面如圖6-11 所示。程序運(yùn)行時(shí),單擊【尋找素?cái)?shù)】按鈕將顯示1100 之間的全部素?cái)?shù),尋找一到一百的;2 3 5 711 13 1719 2329313741 43 4753 59

10、 6167 717379833S 97/這個(gè)函數(shù)專(zhuān)門(mén)用來(lái)判斷數(shù)字是否為素?cái)?shù)function SearchPrime (num : In teger) : Boolea n ; vari : In teger;flag : Boolea n;beginflag := true;/判斷是否為素?cái)?shù)。素?cái)?shù)是只能由1 和本身整除的。for i := 2 to num - 1 dobegin取??梢哉脑?。就不是素?cái)?shù)if(num) mod i = 0) the nbeginflag := false;break;en d;en d;if(flag = false) the nResult := false;if(flag = true) the nResult := flag;en d;procedure TForml.Butt on 1Click(Se nder: TObject);varflag : bool;i : In teger;k : In teger;begin2 也是素?cái)?shù)

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論