![[工學(xué)]C第二章-c語(yǔ)言基礎(chǔ)課件_第1頁(yè)](http://file4.renrendoc.com/view/47eb83bdc821d569ce7cc54308e3ff79/47eb83bdc821d569ce7cc54308e3ff791.gif)
![[工學(xué)]C第二章-c語(yǔ)言基礎(chǔ)課件_第2頁(yè)](http://file4.renrendoc.com/view/47eb83bdc821d569ce7cc54308e3ff79/47eb83bdc821d569ce7cc54308e3ff792.gif)
![[工學(xué)]C第二章-c語(yǔ)言基礎(chǔ)課件_第3頁(yè)](http://file4.renrendoc.com/view/47eb83bdc821d569ce7cc54308e3ff79/47eb83bdc821d569ce7cc54308e3ff793.gif)
![[工學(xué)]C第二章-c語(yǔ)言基礎(chǔ)課件_第4頁(yè)](http://file4.renrendoc.com/view/47eb83bdc821d569ce7cc54308e3ff79/47eb83bdc821d569ce7cc54308e3ff794.gif)
![[工學(xué)]C第二章-c語(yǔ)言基礎(chǔ)課件_第5頁(yè)](http://file4.renrendoc.com/view/47eb83bdc821d569ce7cc54308e3ff79/47eb83bdc821d569ce7cc54308e3ff795.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、第2章 c#語(yǔ)言基礎(chǔ)在本章中,您將學(xué)習(xí):使用變量操作符:算術(shù) 算術(shù)賦值一元 比較 邏輯使用條件結(jié)構(gòu)使用循環(huán)結(jié)構(gòu) 目標(biāo)應(yīng)用程序使用操作符來處理用戶輸入的數(shù)據(jù)。C#中的操作符可以分成:算術(shù)操作符算術(shù)賦值操作符一元操作符比較操作符邏輯操作符使用操作符運(yùn)算符和表達(dá)式Result=number*100變量變量常量操作數(shù)表達(dá)式操作數(shù)和運(yùn)算符的組合運(yùn)算符類別運(yùn)算符說明表達(dá)式算術(shù)運(yùn)算符+執(zhí)行加法運(yùn)算(如果兩個(gè)操作數(shù)是字符串,則該運(yùn)算符用作字符串連接運(yùn)算符,將一個(gè)字符串添加到另一個(gè)字符串的末尾) 操作數(shù)1 + 操作數(shù)2-執(zhí)行減法運(yùn)算 操作數(shù)1 - 操作數(shù)2*執(zhí)行乘法運(yùn)算操作數(shù)1 * 操作數(shù)2/執(zhí)行除法運(yùn)算操作數(shù)
2、1 / 操作數(shù)2%獲得進(jìn)行除法運(yùn)算后的余數(shù) 操作數(shù)1 % 操作數(shù)2將一個(gè)數(shù)按位取反 操作數(shù)表達(dá)式類型計(jì)算方法結(jié)果(假定 num1 的值為 5)num2 = +num1;前置自加num1 = num1 + 1;num2 = num1;num2 = 6;num1 = 6;num2 = num1+;后置自加num2 = num1;num1 = num1 + 1;num2 = 5;num1 = 6;num2 = -num1;前置自減num1 = num1 - 1;num2 = num1;num2 = 4;Num1 = 4;num2 = num1-;后置自減num2 = num1;num1 = num1
3、 - 1;num2 = 5;Num1 = 4;計(jì)算結(jié)果:1、int i = 0;bool result = falseresult = (+i) + i = 2?true:false; result = true類別運(yùn)算符說明表達(dá)式三元運(yùn)算符(條件運(yùn)算符) ?:檢查給出的第一個(gè)表達(dá)式 expression 是否為真。如果為真,則計(jì)算 operand1,否則計(jì)算 operand2。這是唯一帶有三個(gè)操作數(shù)的運(yùn)算符 表達(dá)式? 操作數(shù)1:操作數(shù)2 下面的運(yùn)算結(jié)果是什么?1、27 % 5 = 2、11 = 2-12為什么?類別運(yùn)算符說明表達(dá)式比較運(yùn)算符檢查一個(gè)數(shù)是否大于另一個(gè)數(shù) 操作數(shù)1 操作數(shù)2檢查一
4、個(gè)數(shù)是否小于另一個(gè)數(shù) 操作數(shù)1 =檢查一個(gè)數(shù)是否大于或等于另一個(gè)數(shù) 操作數(shù)1 = 操作數(shù)2= 檢查一個(gè)數(shù)是否小于或等于另一個(gè)數(shù) 操作數(shù)1 = 操作數(shù)2= 檢查兩個(gè)值是否相等 操作數(shù)1 = 操作數(shù)2!= 檢查兩個(gè)值是否不相等操作數(shù)1 != 操作數(shù)2類別運(yùn)算符說明表達(dá)式成員訪問運(yùn)算符.用于訪問數(shù)據(jù)結(jié)構(gòu)的成員 數(shù)據(jù)結(jié)構(gòu).成員賦值運(yùn)算符=給變量賦值 操作數(shù)1 = 操作數(shù)2邏輯運(yùn)算符 & 對(duì)兩個(gè)表達(dá)式執(zhí)行邏輯“與”運(yùn)算 操作數(shù)1 & 操作數(shù)2|對(duì)兩個(gè)表達(dá)式執(zhí)行邏輯“或”運(yùn)算 操作數(shù)1 | 操作數(shù)2!對(duì)兩個(gè)表達(dá)式執(zhí)行邏輯“非”運(yùn)算! 操作數(shù)異或表達(dá)式1 表達(dá)式2運(yùn)算符計(jì)算方法表達(dá)式求值結(jié)果(假定 X =
5、10)+=運(yùn)算結(jié)果 = 操作數(shù)1 + 操作數(shù)2X += 5X = X + 515-=運(yùn)算結(jié)果 = 操作數(shù)1 - 操作數(shù)2X -= 5X = X - 55*=運(yùn)算結(jié)果 = 操作數(shù)1 * 操作數(shù)2X *= 5X = X * 550/=運(yùn)算結(jié)果 = 操作數(shù)1 / 操作數(shù)2X /= 5X = X / 52%=運(yùn)算結(jié)果 = 操作數(shù)1 % 操作數(shù)2X %= 5X = X % 50C# 運(yùn)算符的優(yōu)先級(jí)優(yōu)先級(jí)說明運(yùn)算符結(jié)合性1括號(hào)( )從左到右2自加/自減運(yùn)算符+/-從右到左3乘法運(yùn)算符、除法運(yùn)算符、取模運(yùn)算符*、/、%從左到右4加減法運(yùn)算符+ -從左到右5小于、小于等于大于、大于等于、=從左到右6等于不等于
6、=!=從左到右從左到右7邏輯與&從左到右8邏輯或|從左到右9賦值運(yùn)算符和快捷運(yùn)算符= 、+=、 *= /= 、%=、 -=從右到左使用條件結(jié)構(gòu)條件結(jié)構(gòu)能夠根據(jù)與其關(guān)聯(lián)的表達(dá)式值選擇執(zhí)行的語(yǔ)句。評(píng)估條件需要比較操作符。各種條件結(jié)構(gòu)是:ifelse 結(jié)構(gòu)switchcase 結(jié)構(gòu)if.else 條件結(jié)構(gòu)后跟一個(gè)邏輯表達(dá)式,在該表達(dá)式中比較數(shù)據(jù)并且根據(jù)比較結(jié)果作出決定。以下是if.else 結(jié)構(gòu)的語(yǔ)法:if (expression)statements;elsestatements;ifelse 結(jié)構(gòu) if.else 結(jié)構(gòu)可以彼此嵌入。當(dāng)它們嵌在一起時(shí),結(jié)構(gòu)就是級(jí)聯(lián)的if.else 結(jié)構(gòu)ifelse
7、 結(jié)構(gòu)(續(xù)) static void Main(string args) Console.WriteLine(請(qǐng)選擇要顯示的內(nèi)容); Console.WriteLine(1.開發(fā)環(huán)境); Console.WriteLine(2.編程語(yǔ)言); Console.WriteLine(3.項(xiàng)目類型); Console.WriteLine(4.退出); string i = Console.ReadLine(); if (i = 1) Console.WriteLine(microsoft visual basic); else if (i = 2) Console.WriteLine(c sharp)
8、; else if (i = 3) Console.WriteLine(控制臺(tái)應(yīng)用程序); 當(dāng)一個(gè)變量有多個(gè)值時(shí)要用到switchcase 結(jié)構(gòu)。以下代碼是switch.case 結(jié)構(gòu)的語(yǔ)法:switch (VariableName)case ConstantExpression_1:statements;break;case ConstantExpression_2:statements;break;case ConstantExpression_n:statements;break;default:statements;break;switchcase 結(jié)構(gòu)問題描述:編寫一個(gè)模擬計(jì)算器的程
9、序。計(jì)算器應(yīng)該能夠執(zhí)行以下算術(shù)操作:加法減法乘法除法 演示:使用條件結(jié)構(gòu)的計(jì)算器 使用循環(huán)結(jié)構(gòu) 循環(huán)結(jié)構(gòu)用于重復(fù)執(zhí)行一行或多行代碼。C# 支持以下的循環(huán)結(jié)構(gòu):while 循環(huán)dowhile 循環(huán)for 循環(huán)while 循環(huán)while 循環(huán)結(jié)構(gòu)根據(jù)條件來執(zhí)行一定次數(shù)的語(yǔ)句塊。以下代碼是while 循環(huán)結(jié)構(gòu)的語(yǔ)法:while (expression)statements;dowhile 循環(huán)do.while 循環(huán)結(jié)構(gòu)類似于 while 循環(huán)結(jié)構(gòu)。兩個(gè)結(jié)構(gòu)都要重復(fù)執(zhí)行語(yǔ)句直至指定的循環(huán)條件為false。以下代碼是 do.while 循環(huán)結(jié)構(gòu)的語(yǔ)法:dostatements; while(expres
10、sion);dowhile 循環(huán)(續(xù))下圖顯示了 do.while 和 while 循環(huán)結(jié)構(gòu)的區(qū)別。Falsedo whileFalseTrue執(zhí)行循環(huán)的主體評(píng)估條件True執(zhí)行循環(huán)的主體評(píng)估條件whilefor 循環(huán)for 循環(huán)結(jié)構(gòu)用于執(zhí)行特定次數(shù)的語(yǔ)句塊。以下代碼是for 循環(huán)結(jié)構(gòu)的語(yǔ)法: for (initialization; termination; increment/decrement) statementsfor 循環(huán)(續(xù))下圖顯示了完整的 for 循環(huán)結(jié)構(gòu)的執(zhí)行順序。TrueFalse初始化評(píng)估條件循環(huán)主體退出循環(huán)增量/減量 演示:使用循環(huán)結(jié)構(gòu)的Fibonacci 級(jí)數(shù)問題描
11、述:編寫能夠生成Fibonacci級(jí)數(shù)最高至200的程序。break 和 continue 語(yǔ)句 使用 break 語(yǔ)句退出for循環(huán)并停止剩余循環(huán)的執(zhí)行。使用Continue語(yǔ)句可以跳出所有后續(xù)的指令并將控制權(quán)交回給循環(huán)。演示3.24在本章中,您學(xué)習(xí)了:操作符用于計(jì)算和比較值并測(cè)試多個(gè)條件。使用算術(shù)操作符對(duì)變量執(zhí)行算術(shù)操作,例如加、減、乘、除。使用算術(shù)賦值操作符執(zhí)行算術(shù)操作并將結(jié)果賦值給變量。一元操作符(如增量和減量操作符)對(duì)一個(gè)操作數(shù)進(jìn)行操作。比較操作符用于比較兩個(gè)值并根據(jù)比較的結(jié)果執(zhí)行操作。 邏輯操作符用于評(píng)估表達(dá)式并返回布爾值。小結(jié)條件結(jié)構(gòu)允許選擇執(zhí)行語(yǔ)句。C# 中的條件結(jié)構(gòu)是:ife
12、lseswitchcase當(dāng)您要對(duì)程序的某個(gè)部分重復(fù)執(zhí)行一定的次數(shù)時(shí),可以使用循環(huán)結(jié)構(gòu)。C# 提供以下的循環(huán)結(jié)構(gòu):whiledowhileforbreak 和 continue 語(yǔ)句用于控制循環(huán)中的程序流。 小結(jié)(續(xù))異常異常是在程序執(zhí)行期間發(fā)生的錯(cuò)誤情況。當(dāng)一個(gè)異常在程序中發(fā)生的時(shí)候,系統(tǒng)拋出一個(gè)錯(cuò)誤。 錯(cuò)誤通過異常處理過程被處理。描述異常在程序中發(fā)生的錯(cuò)誤的類型有三種。它們是:語(yǔ)法錯(cuò)誤:語(yǔ)法錯(cuò)誤發(fā)生在語(yǔ)句沒有適當(dāng)構(gòu)造、關(guān)鍵字被拼錯(cuò)或標(biāo)點(diǎn)被忽略的時(shí)候。 運(yùn)行時(shí)錯(cuò)誤:運(yùn)行時(shí)錯(cuò)誤發(fā)生在程序試圖完成一個(gè)操作,但它在運(yùn)行時(shí)不被允許。邏輯錯(cuò)誤:邏輯錯(cuò)誤發(fā)生在程序編譯和運(yùn)行正常但沒有產(chǎn)生預(yù)期的結(jié)果的時(shí)候
13、。讓我們了解錯(cuò)誤類型的詳細(xì)信息。錯(cuò)誤的類型class ErrorsConsole.WriteLine(“Enjoy Errors”)Console.WriteLine 語(yǔ)句缺少分號(hào)語(yǔ)法錯(cuò)誤class Errorsint Num1=0;int Num2=20;int Num3;Num3=Num2/Num1;Console.WriteLine(“The Result is 0”, Num3);發(fā)生了除以零的情況運(yùn)行時(shí)錯(cuò)誤class Errorsint Num1=10;int Num2=2;int Num3;Num3=Num2/Num1;Console.WriteLine(“The Result i
14、s 0”, Num3);期望結(jié)果 = 5當(dāng)前結(jié)果 = 0邏輯錯(cuò)誤許多異常類都直接或間接的派生自System.Exception類。 這些類有:System.ApplicationException 類System.SystemException 類異常類System.SystemException是所有預(yù)定義系統(tǒng)異常的基類。下表描述了一些派生自System.System Exception類的類:異常類(續(xù))異常類描述System.IO.IOException處理I/O錯(cuò)誤System.IndexOutOfRangeException當(dāng)方法引用一個(gè)界外的數(shù)據(jù)元素時(shí),處理產(chǎn)生的錯(cuò)誤System.
15、NullReferenceException處理在解除空對(duì)象引用的過程中產(chǎn)生的錯(cuò)誤System.DivideByZeroException 處理在除法中除數(shù)為0的過程中產(chǎn)生的錯(cuò)誤System.InvalidCastException 處理在類型匹配中產(chǎn)生的錯(cuò)誤System.OutOfMemoryException 處理程序內(nèi)存分配的錯(cuò)誤處理異常在異常處理中,程序被分成代碼塊。一個(gè)顯示可能產(chǎn)生錯(cuò)誤的塊包含一個(gè)或者多個(gè)異常處理程序。異常處理遵守一個(gè)控制結(jié)構(gòu)和一個(gè)處理系統(tǒng)級(jí)和程序級(jí)錯(cuò)誤的統(tǒng)一方式。這些異常處理塊可以使用下面的關(guān)鍵字實(shí)現(xiàn):trycatchfinally讓我們了解這些關(guān)鍵字的詳情。處理異
16、常(續(xù))try 塊:try塊監(jiān)視可能拋出異常的語(yǔ)句。以下是 try 塊的語(yǔ)法:try/statements that may cause an exceptiontry塊管理包含在它內(nèi)部的語(yǔ)句,定義與它相關(guān)的異常處理程序的范圍。try塊必須至少有一個(gè)catch塊。處理異常(續(xù))catch 塊:catch塊的語(yǔ)句使用一個(gè)異常類的對(duì)象作為參數(shù),它引用一個(gè)產(chǎn)生的異常。你可以通過提供一個(gè)或更多catch處理程序?qū)⒁粋€(gè)異常處理程序與try塊相聯(lián)系,緊挨著try塊之后:try /statements that may cause an exceptioncatch ()/error handling co
17、depublic static void Adding_Numbers(int number1, int number2) try int res = number1 / number2; Console.WriteLine(res); catch (DivideByZeroException e) Console.WriteLine(Exception Caught.0,e.Message); Console.WriteLine(After handing exception); static void Main(string args) Adding_Numbers(10,0); Cons
18、ole.Read(); 多重 catch 塊try/程序代碼catch (IOException E)/錯(cuò)誤處理代碼catch (OutOfMemoryException E)/錯(cuò)誤處理代碼用于捕捉兩種異常的“catch”塊處理異常(續(xù))finally 塊:finally塊被用于執(zhí)行一個(gè)給定的語(yǔ)句集,不論異常是否被拋出。try /statements that may cause an exceptioncatch ()/error handling codefinally/statements to be executed演示10.9問題描述:David正在為一個(gè)項(xiàng)目工作,其中他正在計(jì)算一個(gè)整型數(shù)組中的總和。David需要處理當(dāng)他使用數(shù)組時(shí)發(fā)生的異常。如果David在執(zhí)行程序的時(shí)候遇到了任何異常情況,程序需要顯示一個(gè)異常消息。演示:處理數(shù)組越界異常實(shí)現(xiàn)用戶自定義異常在C#中,你可以創(chuàng)建你自己的異常類。這種類型的異常被稱為用戶自定義異常。在C#中Exception必須是所有異常的基類。用戶定義異常類必須遵守要么異常類的層次或一個(gè)標(biāo)準(zhǔn)的繼承類。 實(shí)現(xiàn)用戶自定義異常(續(xù))用戶自定義異常類派生自ApplicationException類。為了實(shí)現(xiàn)用戶自定義異常,
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 白酒總代理合同年
- 小學(xué)口算練習(xí)題小數(shù)300道
- 2025年呼和浩特貨運(yùn)從業(yè)考試試題及答案解析
- 2025年吉林市a2貨運(yùn)從業(yè)資格證模擬考試
- 小學(xué)四年級(jí)數(shù)學(xué)計(jì)算題大全
- 2022年新課標(biāo)八年級(jí)上冊(cè)道德與法治《8.2 堅(jiān)持國(guó)家利益至上 》聽課評(píng)課記錄
- 社區(qū)殘疾人工作計(jì)劃
- 酒店主管年度個(gè)人總結(jié)
- 車間生產(chǎn)主管年終總結(jié)
- 電子技術(shù)實(shí)習(xí)生工作總結(jié)
- 2025年中國(guó)銅畫市場(chǎng)調(diào)查研究報(bào)告
- 山西省太原市2024-2025學(xué)年九年級(jí)上學(xué)期期末歷史試題(含答案)
- 2024年全國(guó)體育專業(yè)單獨(dú)招生考試數(shù)學(xué)試卷試題真題(含答案)
- 2025屆高三八省聯(lián)考語(yǔ)文試卷分析 課件
- 2025年江蘇連云港灌云縣招聘“鄉(xiāng)村振興專干”16人高頻重點(diǎn)提升(共500題)附帶答案詳解
- 2025年度檢修計(jì)劃
- 2024-2025學(xué)年冀教版數(shù)學(xué)五年級(jí)上冊(cè)期末測(cè)試卷(含答案)
- 商業(yè)綜合體市場(chǎng)調(diào)研報(bào)告
- 少兒素描課件
- 天津市部分區(qū)2023-2024學(xué)年高二上學(xué)期期末考試 生物 含解析
- 《對(duì)私外匯業(yè)務(wù)從業(yè)資格》開放式測(cè)試答案
評(píng)論
0/150
提交評(píng)論