歡迎來到裝配圖網(wǎng)! | 幫助中心 裝配圖網(wǎng)zhuangpeitu.com!
裝配圖網(wǎng)
ImageVerifierCode 換一換
首頁 裝配圖網(wǎng) > 資源分類 > PPT文檔下載  

VC#第3講其它常用數(shù)據(jù)類型.ppt

  • 資源ID:11498198       資源大?。?span id="pnudx4b" class="font-tahoma">252.50KB        全文頁數(shù):35頁
  • 資源格式: PPT        下載積分:9.9積分
快捷下載 游客一鍵下載
會員登錄下載
微信登錄下載
三方登錄下載: 微信開放平臺登錄 支付寶登錄   QQ登錄   微博登錄  
二維碼
微信掃一掃登錄
下載資源需要9.9積分
郵箱/手機:
溫馨提示:
用戶名和密碼都是您填寫的郵箱或者手機號,方便查詢和重復(fù)下載(系統(tǒng)自動生成)
支付方式: 支付寶    微信支付   
驗證碼:   換一換

 
賬號:
密碼:
驗證碼:   換一換
  忘記密碼?
    
友情提示
2、PDF文件下載后,可能會被瀏覽器默認(rèn)打開,此種情況可以點擊瀏覽器菜單,保存網(wǎng)頁到桌面,就可以正常下載了。
3、本站不支持迅雷下載,請使用電腦自帶的IE瀏覽器,或者360瀏覽器、谷歌瀏覽器下載即可。
4、本站資源下載后的文檔和圖紙-無水印,預(yù)覽文檔經(jīng)過壓縮,下載后原文更清晰。
5、試題試卷類文檔,如果標(biāo)題沒有明確說明有答案則都視為沒有答案,請知曉。

VC#第3講其它常用數(shù)據(jù)類型.ppt

VisualC#.NET程序設(shè)計,第三講其它常用數(shù)據(jù)類型,第6章其它常用數(shù)據(jù)類型,本章要點:字符串類型的定義與使用枚舉類型的定義與使用委托類型的定義與使用,6.1循序漸進學(xué)理論,6.1.1字符串類型1字符串的種類及其定義(1)規(guī)則字符串格式:string字符串變量名=字符串初值;(2)逐字字符串逐字字符串由字符后跟雙引號括起來的零個或多個字符組成。格式:string字符串變量名=字符串初值;,規(guī)則字符串中可以使用的轉(zhuǎn)義字符,【例6-1】觀察下列程序的執(zhí)行結(jié)果。程序代碼usingSystem;classA_6_1publicstaticvoidMain()stringstr1="你是"王三"?"/“"”是轉(zhuǎn)義字符stringstr2="星期一星期二星期三"/“”是轉(zhuǎn)義字符,stringstr3="你好!t王三。"/“t”是轉(zhuǎn)義字符stringstr4="你好t王三?"/t并不看成轉(zhuǎn)義字符,而是看成兩個字符stringstr5="星期一星期二星期三"/也不是轉(zhuǎn)義字符,而是看成兩個“”Console.WriteLine("str1=0,str2=1,str3=2",str1,str2,str3);Console.WriteLine("str3=0,str4=1",str4,str5);,執(zhí)行結(jié)果,2字符串類型的使用,【例6-3】編寫一個Windows應(yīng)用程序,程序的設(shè)計界面如圖6-1所示,程序的運行界面如圖6-2所示。程序執(zhí)行時在第一個文本框中輸入一個字符串,然后按【倒置】按鈕將把輸入的字符串反序顯示在第二個文本框中。,圖6-1程序設(shè)計界面,圖6-2程序運行界面,3字符串中單個字符的訪問,例如,有以下語句:stringstr1="Iamateacher."/定義一個字符串并賦初值charc;/定義一個字符變量c=str10;/給字符變量賦一個字符,該字符為str1字符串的第一個字符語句執(zhí)行后,字符變量c的值為I。,【例6-4】編寫一個程序,用來統(tǒng)計用戶輸入的字符串中字母個數(shù)、數(shù)字個數(shù)和其它字符個數(shù)。程序的設(shè)計界面如圖6-3所示,程序的運行界面如圖6-4所示。,圖6-3程序設(shè)計界面,圖6-4程序運行界面,6.1.2結(jié)構(gòu)類型,在C+和C#中,結(jié)構(gòu)類型是對同一類具有某些特定屬性和功能的對象的抽象定義,其定義中可以包括構(gòu)造函數(shù)、析構(gòu)函數(shù)、成員變量、成員函數(shù)、成員屬性等等,同C#中的類類型基本相同。但結(jié)構(gòu)類型與類類型畢竟是兩種不同的類型,主要不同點體現(xiàn)在以下兩個方面。(1)存儲值的不同結(jié)構(gòu)類型是值類型,而類類型是引用類型。,(2)參數(shù)傳遞不同,格式:struct結(jié)構(gòu)型名成員聲明;例如:structstudentpublicstringname;publicintage;,實際上程序中使用的不是結(jié)構(gòu)型,而是根據(jù)結(jié)構(gòu)型聲明的結(jié)構(gòu)型變量,根據(jù)結(jié)構(gòu)型聲明結(jié)構(gòu)型變量的格式如下。格式:結(jié)構(gòu)型名結(jié)構(gòu)型變量名;例如有以下語句:studentstu;就是創(chuàng)建了一個名為stu的結(jié)構(gòu)型變量。在程序中經(jīng)常需要訪問結(jié)構(gòu)型變量的成員,訪問方法如下。結(jié)構(gòu)型變量名.成員名;如要給stu的age成員賦值15,可使用如下語句:stu.age=15;,【例6-5】編程實現(xiàn)從鍵盤上輸入一個學(xué)生的學(xué)號、姓名和年齡,然后輸出剛剛輸入的學(xué)生學(xué)號、姓名和年齡。,6.1.3枚舉類型,格式:枚舉修飾符enum枚舉類型名枚舉常量1,枚舉常量2,枚舉常量n;定義枚舉變量的語句格式如下:枚舉類型名變量名;如果希望讓枚舉型常量的值是其它類型的,可在定義枚舉型時指定,定義格式與如下。格式:枚舉修飾符enum枚舉類型名:類型說明符枚舉常量1,枚舉常量2,枚舉常量n;,【例6-6】定義一個職稱枚舉類型,輸出枚舉類型中所有枚舉常量的值。,6.1.4委托類型,1委托C#的委托相當(dāng)于在C/C+中的函數(shù)指針。函數(shù)指針用指針獲取一個函數(shù)的入口地址,實現(xiàn)對函數(shù)的操作。委托與C/C+中的函數(shù)指針不同在于委托是面向?qū)ο蟮模且妙愋?,因此對委托的使用要先定義后實例化,最后才調(diào)用。定義委托使用關(guān)鍵字delegate,定義一個委托:delegateintSomeDelegate(intnID,stringsName);再實例化:SomeDelegated1=newSomeDelegate(wr.InstanceMethod);最后調(diào)用:d1(5,"aaa");通過委托SomeDelegate實現(xiàn)對方法InstanceMethod的調(diào)用,調(diào)用還必須有一個前提條件是:方法InstanceMethod有參數(shù)和定義SomeDelegate的參數(shù)一致,并且返回值為int。方法InstanceMethod定義:publicintInstanceMethod(intnID,stringsName)委托的實例化中的參數(shù)既可以是非靜態(tài)方法,也可以是靜態(tài)方法。,一個委托聲明定義了一個從類System.Delegate延伸的類。一個委托實例封裝一個方法及可調(diào)用的實體。在聲明委托時只需要指定委托指向的函數(shù)原型的類型,它不能有返回值也不能帶有輸出類型的參數(shù)。委托類型的定義格式如下。格式:delegate數(shù)據(jù)類型說明符委托類型名();例如,若要聲明一個指向double類型函數(shù)原型的委托類型,可使用如下語句:delegatedoubleMyDelegate();委托既可以封裝一個靜態(tài)方法也可以封裝一個非靜態(tài)的方法。,委托的使用方法,一般分為三步:(1)聲明委托,定義參數(shù)列表和返回類型。(2)實例化委托:定義一個委托類型的實例變量,讓該實例變量指向某一個具體的方法。其一般格式如下。格式:委托類型名委托變量名=new委托類型名(方法名);(3)調(diào)用委托:調(diào)用委托類型變量指向的方法。其一般格式如下。格式:委托變量名(實參列表);,【例4.25】委托示例。usingSystem;classSimpleClasspublicclassWorkerClass/委托引用的非靜態(tài)方法publicintInstanceMethod(intnID,stringsName)intretval=0;retval=nID*sName.Length;Console.WriteLine("調(diào)用InstanceMethod方法");returnretval;/委托引用的靜態(tài)方法staticpublicintStaticMethod(intnID,stringsName),intretval=0;retval=nID*sName.Length;Console.WriteLine("調(diào)用StaticMethod方法");returnretval;/定義委托,參數(shù)與上面兩個方法相同publicdelegateintSomeDelegate(intnID,stringsName);staticvoidMain(stringargs)/調(diào)用實例方法(非靜態(tài)方法)WorkerClasswr=newWorkerClass();SomeDelegated1=newSomeDelegate(wr.InstanceMethod);Console.WriteLine("InvokingdelegateInstanceMethod,return=0",d1(5,"aaa");,/調(diào)用靜態(tài)方法SomeDelegated2=newSomeDelegate(WorkerClass.StaticMethod);Console.WriteLine("InvokingdelegateStaticMethod,return=0",d2(5,"aaa");運行結(jié)果如圖4.10所示。,圖4.10運行結(jié)果,委托,2.多播相對于上面的一次委托只調(diào)用一個方法,一次委托也可以調(diào)用多個方法,稱為多播。通過+和-運算符實現(xiàn)多播的增加或減少。,【例4.26】多播示例。usingSystem;classSimpleClasspublicclassWorkerClass/委托引用的非靜態(tài)方法publicintInstanceMethod(intnID,stringsName)intretval=0;retval=nID*sName.Length;Console.WriteLine("調(diào)用InstanceMethod方法");returnretval;,/委托引用的靜態(tài)方法staticpublicintStaticMethod(intnID,stringsName)intretval=0;retval=nID*sName.Length;Console.WriteLine("調(diào)用StaticMethod方法");returnretval;/定義委托,簽名與上面兩個方法相同publicdelegateintSomeDelegate(intnID,stringsName);staticvoidMain(stringargs)/調(diào)用實例方法WorkerClasswr=newWorkerClass();SomeDelegated1=newSomeDelegate(wr.InstanceMethod);Console.WriteLine("InvokingdelegateInstanceMethod,return=0",d1(5,"aaa");,/調(diào)用靜態(tài)方法SomeDelegated2=newSomeDelegate(WorkerClass.StaticMethod);Console.WriteLine("InvokingdelegateStaticMethod,return=0",d2(5,"aaa");/多播Console.WriteLine();Console.WriteLine("測試多播.");/多播d3由兩個委托d1和d2組成SomeDelegated3=d1+d2;Console.WriteLine("Invokingdelegate(s)d1ANDd2(multi-cast),return=0",d3(5,"aaa");/委托中的方法個數(shù)intnum_method=d3.GetInvocationList().Length;Console.WriteLine("Numberofmethodsreferencedbydelegated3:0",num_method);/多播d3減去委托d2d3=d3-d2;Console.WriteLine("Invokingdelegate(s)d1(multi-cast),return=0",d3(5,"aaa");,/委托中的方法個數(shù)num_method=d3.GetInvocationList().Length;Console.WriteLine("Numberofmethodsreferencedbydelegated3:0",num_method);運行結(jié)果如圖4.11所示。,圖4.11運行結(jié)果,6.2典型實例練能力,6.2.1典型實例一:回文字符串的判定【實例題目】編寫一個應(yīng)用程序,用來判斷用戶輸入的字符串是否為回文,所謂回文就是正讀和反讀均一樣的字符串。如“abcddcba”、“我是兵兵是我”均是回文,而“abcdefgh”則不是回文。程序的設(shè)計界面如圖6-5所示,程序的運行界面如圖6-6所示。,圖6-5程序設(shè)計界面,圖6-6程序運行界面,6.3上機練習(xí)重應(yīng)用,6.3.1上機練習(xí)一:從字符串中分離出數(shù)字字符【練習(xí)題目】編寫一個程序,把在一個文本框中輸入的字符串中的數(shù)字字符分離出來,然后顯示在另一個文本框中。程序的設(shè)計界面如圖6-8所示,程序的運行界面如圖6-9所示。,圖6-8程序設(shè)計界面,圖6-9程序運行界面,

注意事項

本文(VC#第3講其它常用數(shù)據(jù)類型.ppt)為本站會員(max****ui)主動上傳,裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對上載內(nèi)容本身不做任何修改或編輯。 若此文所含內(nèi)容侵犯了您的版權(quán)或隱私,請立即通知裝配圖網(wǎng)(點擊聯(lián)系客服),我們立即給予刪除!

溫馨提示:如果因為網(wǎng)速或其他原因下載失敗請重新下載,重復(fù)下載不扣分。




關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號:ICP2024067431-1 川公網(wǎng)安備51140202000466號


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺,本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請立即通知裝配圖網(wǎng),我們立即給予刪除!