變量與數(shù)據(jù)類型_第1頁(yè)
變量與數(shù)據(jù)類型_第2頁(yè)
變量與數(shù)據(jù)類型_第3頁(yè)
變量與數(shù)據(jù)類型_第4頁(yè)
變量與數(shù)據(jù)類型_第5頁(yè)
已閱讀5頁(yè),還剩35頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、變量與數(shù)據(jù)類型第1頁(yè),共40頁(yè),2022年,5月20日,5點(diǎn)40分,星期二第2課 變量與數(shù)據(jù)類型本課介紹C#語(yǔ)言的變量與數(shù)據(jù)類型。本課主要介紹以下內(nèi)容:C#的內(nèi)置數(shù)據(jù)類型常量與變量的使用編寫(xiě)表達(dá)式枚舉類型調(diào)試工具的使用異常處理第2頁(yè),共40頁(yè),2022年,5月20日,5點(diǎn)40分,星期二2.1 C#基本數(shù)據(jù)類型預(yù)定義類型定義字節(jié)數(shù)byte0255之間的整數(shù)1sbyte-128127之間的整數(shù)1short-3276832767之間的整數(shù)2ushort065535之間的整數(shù)2int-21474836482147483647之間的整數(shù)4uint04294967295之間的整數(shù)4long-9223372

2、036854775808 9223372036854775807之間的整數(shù)8ulong0188446744073709551615之間的整數(shù)8第3頁(yè),共40頁(yè),2022年,5月20日,5點(diǎn)40分,星期二2.1 C#基本數(shù)據(jù)類型預(yù)定義類型定義字節(jié)數(shù)bool邏輯值:true和false1float單精度浮點(diǎn)值4double雙精度浮點(diǎn)值8decimal精確的十進(jìn)制值,有28個(gè)有效位16object其它所有類型的基類型不定char065535之間的Unicode字符2string任意長(zhǎng)度的Unicode字符串不定可參考教材P16, P21, P24第4頁(yè),共40頁(yè),2022年,5月20日,5點(diǎn)40分,

3、星期二2.1 C#基本數(shù)據(jù)類型變量的使用必須先聲明再使用,對(duì)比:VBScript 等腳本語(yǔ)言可以直接使用變量,無(wú)需聲明;C/C+ 等語(yǔ)言和 C# 一樣必須先聲明再使用;遇到?jīng)]有見(jiàn)過(guò)的預(yù)定義類型如何使用?參考 MSDN(Microsoft Developer Network)中的信息和樣例代碼。第5頁(yè),共40頁(yè),2022年,5月20日,5點(diǎn)40分,星期二2.2 聲明并初始化變量 聲明 指定類型 指定變量名 以分號(hào)結(jié)束int numberOfVisitors;初始化變量 使用賦值運(yùn)算符 (=) 指定值 以分號(hào)結(jié)束123123賦值 附加后綴1decimal deposit = 100M;string

4、 bear;string bear = Grizzly;第6頁(yè),共40頁(yè),2022年,5月20日,5點(diǎn)40分,星期二2.2 聲明并初始化變量如何命名變量?給變量分配有意義的名稱;使用大小寫(xiě)混合方案。該方案要求變量名的首字母小寫(xiě),變量名中每個(gè)單詞的首字母大寫(xiě)。如newAccountBalance切忌使用C#的關(guān)鍵字雖然C#區(qū)分大小寫(xiě),但是不要僅僅通過(guò)大小寫(xiě)的不同來(lái)區(qū)分不同的變量。如Sum和sum的同時(shí)使用。第7頁(yè),共40頁(yè),2022年,5月20日,5點(diǎn)40分,星期二課堂討論13請(qǐng)谷歌()或愛(ài)詞霸()來(lái)幫忙。2我英文不好,如何給變量起合適的英文名?第8頁(yè),共40頁(yè),2022年,5月20日,5點(diǎn)40

5、分,星期二演示:整數(shù)相乘用戶從鍵盤上輸入整數(shù),之后點(diǎn)擊相乘按鈕,將計(jì)算它們的積。示例代碼位于“CSharp示例第2課Multiply”第9頁(yè),共40頁(yè),2022年,5月20日,5點(diǎn)40分,星期二2.3 聲明及初始化字符串 示例聲明字符串使用轉(zhuǎn)義符 使用verbatim字符串 國(guó)際 Unicode 標(biāo)準(zhǔn) string s = Hello World; / Hello Worldstring s = HellonWorld; / 加了一行string s = Hellon; / Hellonstring s = Hello; / Hello字符 “A” 表示 “U+0041”第10頁(yè),共40頁(yè),2

6、022年,5月20日,5點(diǎn)40分,星期二2.4 創(chuàng)建并使用枚舉類型 定義枚舉類型使用枚舉類型顯示變量enum Planet Mercury,Venus,Earth,MarsPlanet aPlanet = Planet.Mars;Console.WriteLine(“0”, aPlanet); /顯示 Mars 第11頁(yè),共40頁(yè),2022年,5月20日,5點(diǎn)40分,星期二2.4 創(chuàng)建并使用枚舉類型討論:為什么需要使用枚舉類型?示例:MessageBox.Show方法的幾種用法。確保只將預(yù)定值賦給變量,使變量易于維護(hù);允許給數(shù)值賦以簡(jiǎn)單易認(rèn)的名字,提高代碼可讀性;易于輸入,因?yàn)榇a編輯器的“智

7、能感知”功能會(huì)顯示可使用的列表;允許指定一組常數(shù)值,并定義僅接受該組常數(shù)值的類型。第12頁(yè),共40頁(yè),2022年,5月20日,5點(diǎn)40分,星期二2.7 課堂練習(xí):使用C#類型將服務(wù)器上“面向?qū)ο蟆闭n件的文件夾中的“Csharp示例”文件夾復(fù)制到本地磁盤上。打開(kāi)“CSharp示例第2課TypesTypes.sln”復(fù)查任務(wù)列表本練習(xí)有3個(gè)任務(wù),分別完成之:聲明一個(gè)變量并將它初始化為Suzan Fine聲明變量,并把其初始化為135.20聲明 Planet變量,并賦值為Planet.Earth,然后顯示該值。使用調(diào)試工具,單步遍歷代碼,用局部變量窗口來(lái)檢查變量的值。保存應(yīng)用程序,然后退出Visua

8、l Studio .NET第13頁(yè),共40頁(yè),2022年,5月20日,5點(diǎn)40分,星期二2.5 創(chuàng)建和使用常量 使用 const 關(guān)鍵字以及該常量值的類型來(lái)聲明一個(gè)常量 聲明常量時(shí)必須對(duì)其賦值 /地球的半徑為6378kmconst int earthRadius = 6378;/到太陽(yáng)的平均距離為149600000kmconst long meanDistanceToSun = 149600000;/平均軌道速度是29.79km/s const double meanOrbitalVelocity = 29.79D;參見(jiàn)教材P15第14頁(yè),共40頁(yè),2022年,5月20日,5點(diǎn)40分,星期二課

9、堂討論為什么有必要使用常量?列舉更多的需要使用常量的情況;防止一些固定的量被無(wú)意修改,導(dǎo)致程序運(yùn)算出現(xiàn)錯(cuò)誤;可能的情況有物理化學(xué)數(shù)學(xué)等學(xué)科在計(jì)算中使用的常量,一些現(xiàn)實(shí)中固定不變的量,例如英文字母的個(gè)數(shù)等等。第15頁(yè),共40頁(yè),2022年,5月20日,5點(diǎn)40分,星期二課后練習(xí):計(jì)算圓柱體的體積輸入圓柱體的高度和寬度,計(jì)算它的表面積和體積。嘗試定義一個(gè)常量來(lái)表示圓周率。示例代碼位于“CSharp示例第2課Cylinder”第16頁(yè),共40頁(yè),2022年,5月20日,5點(diǎn)40分,星期二2.6 類型轉(zhuǎn)換 隱式轉(zhuǎn)換由編譯器自動(dòng)完成,但必須確保不會(huì)丟失信息顯式轉(zhuǎn)換需要明確要求編譯器完成的轉(zhuǎn)換,否則可能會(huì)

10、丟失信息int x = 123456; / int是4字節(jié)的整型long y = x; / 隱式轉(zhuǎn)換為longint x = 65537;short z = (short) x; / 顯式轉(zhuǎn)換為short, z = 1 第17頁(yè),共40頁(yè),2022年,5月20日,5點(diǎn)40分,星期二2.8 編寫(xiě)表達(dá)式 表達(dá)式和運(yùn)算符 確定運(yùn)算符的優(yōu)先級(jí) 課堂練習(xí) 使用運(yùn)算符第18頁(yè),共40頁(yè),2022年,5月20日,5點(diǎn)40分,星期二2.8.1 表達(dá)式和運(yùn)算符 運(yùn)算符就是表達(dá)式中的符號(hào)常見(jiàn)運(yùn)算符增 / 減算術(shù)關(guān)系相等條件賦值示例 + -* / % + - = != & | ! ?: = *= /= %= +=

11、-= = &= = |= 可參考教材Visual C#程序設(shè)計(jì)教程P29P35第19頁(yè),共40頁(yè),2022年,5月20日,5點(diǎn)40分,星期二2.8.2 確定運(yùn)算符的優(yōu)先級(jí) 按照運(yùn)算符的優(yōu)先級(jí)計(jì)算表達(dá)式可以使用圓括號(hào)控制運(yùn)算的順序左結(jié)合和右結(jié)合 所有二元運(yùn)算符都是左結(jié)合的 賦值運(yùn)算符和條件運(yùn)算符是右結(jié)合的 (10 + 20) / 5 結(jié)果是 610 + (20 / 5) 結(jié)果是 1410 + 20 / 5結(jié)果是 14第20頁(yè),共40頁(yè),2022年,5月20日,5點(diǎn)40分,星期二課堂討論防止因不清楚運(yùn)算符優(yōu)先級(jí)而出現(xiàn)錯(cuò)誤的辦法是什么?使用括號(hào),按照預(yù)想的順序?qū)Ρ磉_(dá)式求值。第21頁(yè),共40頁(yè),202

12、2年,5月20日,5點(diǎn)40分,星期二2.8.3 課堂練習(xí):使用運(yùn)算符1、讀右列中的代碼,然后回答問(wèn)題。int x=10;int y=x+;?y的值是什么,為什么?2、讀右列中的代碼,然后回答問(wèn)題。x+=10;?x的值是什么,為什么?3、讀右列中的代碼,然后回答問(wèn)題。int z=30;int a=x+y*z;?a的值是什么?為什么?將該代碼改寫(xiě)成更具有可讀性的形式。4、讀右列中的代碼,然后回答問(wèn)題。int a=10;int b=a+;bool myBool=(a=b);?這段代碼做了些什么?myBool的值是多少?第22頁(yè),共40頁(yè),2022年,5月20日,5點(diǎn)40分,星期二2.8.3 課堂練習(xí)

13、:使用運(yùn)算符(續(xù))5、打開(kāi)“CSharp示例第2課OperatorsOperators.sln ”6、單步跟蹤代碼,以檢查前面所作答案的正確性。第23頁(yè),共40頁(yè),2022年,5月20日,5點(diǎn)40分,星期二演示:貸款計(jì)算器教材P28頁(yè)實(shí)例。示例代碼位于“CSharp示例第2課Loan”第24頁(yè),共40頁(yè),2022年,5月20日,5點(diǎn)40分,星期二2.9 異常處理異常:表示在應(yīng)用程序執(zhí)行期間發(fā)生的錯(cuò)誤。異常處理的格式:try可能運(yùn)行期間出錯(cuò)的語(yǔ)句;catch (異常類型)處理異常的語(yǔ)句;finally始終要執(zhí)行的語(yǔ)句,用于清理資源;第25頁(yè),共40頁(yè),2022年,5月20日,5點(diǎn)40分,星期二2

14、.9 異常處理結(jié)合該示例說(shuō)明異常處理:第26頁(yè),共40頁(yè),2022年,5月20日,5點(diǎn)40分,星期二2.10 綜合實(shí)例:某公司職工基本薪資的計(jì)算某公司的月薪基數(shù)根據(jù)本月的公司效益進(jìn)行確定。職工基本月薪根據(jù)其崗位系數(shù)來(lái)確定本人的月薪。該公司的崗位系數(shù)分為作業(yè)員、技術(shù)員、工程師、部門經(jīng)理4級(jí),其系數(shù)分別為0.9, 1.0, 1.5和2?,F(xiàn)希望編制一個(gè)程序,輸入公司的月薪基數(shù)和該職工的崗位,計(jì)算其該月基本月薪。如:該月公司月薪基數(shù)為850.00元,該職工為工程師,則其當(dāng)月基本月薪為850.00*1.5=1275.00元。通過(guò)本演示,了解NumericUpDown控件、ComboBox控件、TextB

15、ox控件的使用,及掌握如何使用枚舉類型,并將枚舉類型數(shù)據(jù)綁定到控件。示例代碼位于“CSharp示例第2課Salary”第27頁(yè),共40頁(yè),2022年,5月20日,5點(diǎn)40分,星期二演示:月薪計(jì)算1、界面組成NumericUpDown控件,命名為numBaseSalaryComboBox控件,命名為combPostTextBox控件,命名為txtSalaryButton控件,命名為btnCaculate第28頁(yè),共40頁(yè),2022年,5月20日,5點(diǎn)40分,星期二演示:月薪計(jì)算2、控件屬性設(shè)置txtBaseSalary控件:Value:默認(rèn)值,設(shè)為1000Maximum:最大值,設(shè)為5000Mi

16、nimum:最小值,設(shè)為300Increment:增長(zhǎng)值,設(shè)為10DecimalPlaces:小數(shù)位,設(shè)為2ThousandsSeparator:千分位符,設(shè)為TruecombPost控件:DropDownStyle:組合框的風(fēng)格,有以下幾種形式,使用第3項(xiàng):Simple:列表框部分總是可見(jiàn),用戶可以編輯文本DropDown:默認(rèn)。正常時(shí)列表部分隱藏,用戶可以編輯文本DropDownList:正常時(shí)列表部分隱藏,用戶不可以編輯文本Items:組合框中列表項(xiàng)集合SelectedItem:用戶選擇的項(xiàng)目第29頁(yè),共40頁(yè),2022年,5月20日,5點(diǎn)40分,星期二演示:月薪計(jì)算2、控件屬性設(shè)置使用

17、集合編輯器設(shè)置組合框(combPost)的列表項(xiàng)第30頁(yè),共40頁(yè),2022年,5月20日,5點(diǎn)40分,星期二演示:月薪計(jì)算為使得運(yùn)行時(shí),第0項(xiàng)處于選中狀態(tài),在Form1_Load事件中,添加以下代碼:private void Form1_Load(object sender, System.EventArgs e)/ 設(shè)置第0項(xiàng)為默認(rèn)選項(xiàng)combPost.SelectedItem = combPost.Items0;第31頁(yè),共40頁(yè),2022年,5月20日,5點(diǎn)40分,星期二演示:月薪計(jì)算3、讀取用戶輸入的數(shù)值decimal baseSalary = numBaseSalary.Value

18、;double postCoefficient = 1.0;string post = combPost.SelectedItem.ToString();if (post =作業(yè)員)postCoefficient = 0.8;else if (post = 技術(shù)員)postCoefficient = 1.0;使用if語(yǔ)句判斷第32頁(yè),共40頁(yè),2022年,5月20日,5點(diǎn)40分,星期二演示:月薪計(jì)算4、計(jì)算并輸出 有關(guān)格式化輸出String.Format( )方法的介紹,請(qǐng)參見(jiàn)教材P32.decimal salary = baseSalary*(decimal)postCoefficient;

19、txtSalary.Text = String.Format(0:C,salary);第33頁(yè),共40頁(yè),2022年,5月20日,5點(diǎn)40分,星期二演示:月薪計(jì)算5、進(jìn)一步改進(jìn),將第3步的判斷,由原來(lái)的if語(yǔ)句改成switch語(yǔ)句decimal baseSalary = numBaseSalary.Value;double postCoefficient = 1.0;string post = combPost.SelectedItem.ToString();switch (post)case 作業(yè)員:postCoefficient = 0.8;break;case 技術(shù)員:postCoeff

20、icient = 1.0;break;使用switch語(yǔ)句判斷第34頁(yè),共40頁(yè),2022年,5月20日,5點(diǎn)40分,星期二演示:月薪計(jì)算6、進(jìn)一步考慮,使用枚舉類型崗位(Post)枚舉類型的定義:注意該類型定義的位置。enum Post作業(yè)員,技術(shù)員,工程師,部門經(jīng)理第35頁(yè),共40頁(yè),2022年,5月20日,5點(diǎn)40分,星期二演示:月薪計(jì)算6、枚舉類型及其與控件的數(shù)據(jù)綁定將枚舉值添加到combPost控件的列表中下列代碼添加在Form1_Load事件中,以在程序啟動(dòng)時(shí)就執(zhí)行。combPost.Items.Add(Post.作業(yè)員);combPost.Items.Add(Post.技術(shù)員);

21、combPost.Items.Add(Post.工程師);combPost.Items.Add(Post.部門經(jīng)理);combPost.SelectedItem = combPost.Items0;第36頁(yè),共40頁(yè),2022年,5月20日,5點(diǎn)40分,星期二演示:月薪計(jì)算7、將計(jì)算過(guò)程抽象為1個(gè)獨(dú)立的Caculate( )方法。然后在按鈕btnCaculate的單擊事件中調(diào)用。private void CaculateSalary()decimal = numBaseSalary.Value;txtSalary.Text = String.Format(0:C,salary);private void button1_Click()CaculateSala

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 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ì)用戶上傳內(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)論