版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、 2009 Pearson Education, Inc. All rights reserved.23C# 程序入門程序入門 2009 Pearson Education, Inc. All rights reserved.3Whats in a name? That which we call a roseby any other name would smell as sweet. William ShakespeareWhen faced with a decision, I always ask,“What would be the most fun?” Peggy Walker 2
2、009 Pearson Education, Inc. All rights reserved.4“Take some more tea,” the March Hare said to Alice, very earnestly. “Ive had nothing yet,” Alice replied in an offended tone, “so I cant take more.” “You mean you cant take less,” said the Hatter: “its very easy to take more than nothing.” Lewis Carro
3、ll 2009 Pearson Education, Inc. All rights reserved.5目標(biāo)目標(biāo)本章將講解: 用代碼而不用可視化編程技術(shù)編寫簡單的C#程序 從鍵盤輸入數(shù)據(jù)和向屏幕輸出數(shù)據(jù) 聲明并使用各種類型的數(shù)據(jù) 存儲和讀取內(nèi)存數(shù)據(jù) 使用算術(shù)運(yùn)算符 確定運(yùn)算符的執(zhí)行順序 編寫判斷語句 使用關(guān)系運(yùn)算符和相等運(yùn)算符 2009 Pearson Education, Inc. All rights reserved.63.1 簡介簡介3.2 一個(gè)簡單的一個(gè)簡單的C#程序:顯示一行文本程序:顯示一行文本3.3 在在Visual Studio中創(chuàng)建簡單的程序中創(chuàng)建簡單的程序3.4 修改修
4、改C#程序程序3.5 用用Console.WriteConsole.Write 和和Console.WriteLineConsole.WriteLine格式化文本格式化文本3.6 另一個(gè)另一個(gè) C# 程序:數(shù)據(jù)相加程序:數(shù)據(jù)相加3.7 內(nèi)存概念內(nèi)存概念3.8 算術(shù)運(yùn)算符算術(shù)運(yùn)算符3.9 判斷:相等運(yùn)算符與關(guān)系運(yùn)算符判斷:相等運(yùn)算符與關(guān)系運(yùn)算符3.10 (可選可選) ATM需求文檔需求文檔 2009 Pearson Education, Inc. All rights reserved.73.1 簡介簡介 控制臺應(yīng)用程序控制臺應(yīng)用程序(Console applications)在控制臺窗口中輸入
5、和輸出文本, 在Windows XP 和 Windows Vista 系統(tǒng)中稱為命令提示命令提示(Command Prompt)。 2009 Pearson Education, Inc. All rights reserved.8Welcome1.csWelcome1.cs圖圖. 3.1 | 顯示文本的程序顯示文本的程序聲明 Welcome1類注釋提高代碼可讀性3.2一個(gè)簡單C#程序:顯示一行文本(續(xù).) 2009 Pearson Education, Inc. All rights reserved.93.2 一個(gè)簡單C#程序:顯示一行文本(續(xù).) 程序員給程序文檔插入注釋。 注釋提高代碼
6、的可讀性。 C# 編譯器會忽略注釋,因此當(dāng)運(yùn)行程序時(shí),注釋不會讓計(jì)算機(jī)執(zhí)行任何動作。 以/ 開頭的注釋叫做單行注釋(single-line comment), 因?yàn)樽⑨屧谛械哪┪簿徒Y(jié)束了。 一個(gè) / 注釋也可以在行中間開始并直到行末尾。 定界注釋(Delimited comments) 以定界符/*開始 并以定界符*/結(jié)束。所有包含在定界符之間的文本會被編譯器忽略。 2009 Pearson Education, Inc. All rights reserved.103.2 一個(gè)簡單C#程序:顯示一行文本(續(xù).)常見的編程錯(cuò)誤常見的編程錯(cuò)誤 3.1遺忘定界注釋的某個(gè)定界符是一個(gè)語法錯(cuò)誤。編程語
7、言的語法制定了以這種語言創(chuàng)建正確的程序規(guī)則。當(dāng)編譯器遇到違反C#語言規(guī)則的代碼時(shí),就會出現(xiàn)語法錯(cuò)誤。 2009 Pearson Education, Inc. All rights reserved.113.2 一個(gè)簡單C#程序:顯示一行文本(續(xù).) 一個(gè) usingusing 指令告訴編譯器到哪里去尋找程序中使用的類。 預(yù)定義的類被放在命名空間命名空間相關(guān)類的命名集合。.NET的名字空間統(tǒng)稱為.NET 框架類庫。框架類庫。 System 名字空間包含預(yù)定義Console類和其他有用的類 。 2009 Pearson Education, Inc. All rights reserved.12
8、3.2 一個(gè)簡單C#程序:顯示一行文本(續(xù).)錯(cuò)誤防止提示錯(cuò)誤防止提示 3.1如果程序中用到的類沒有用using 指令指定它的名字空間,通常會造成編譯錯(cuò)誤,出現(xiàn)諸如 “The name Console does not exist in the current context.” 的消息。如果出現(xiàn)這種錯(cuò)誤,應(yīng)檢查是否提供了合適的using指令,還要檢查using指令,還要檢查using指令中的單詞是否拼寫正確,包括大小寫字母是否正確。 2009 Pearson Education, Inc. All rights reserved.133.2 一個(gè)簡單C#程序:顯示一行文本(續(xù).) 程序員使用
9、空行和空字符來使程序更易于閱讀。 空行、空字符和制表符一起被稱為空白(whitespace),空白被編譯器忽略。 2009 Pearson Education, Inc. All rights reserved.143.2 一個(gè)簡單C#程序:顯示一行文本(續(xù).) 關(guān)鍵字關(guān)鍵字Keywords (有時(shí)被稱為保留字保留字reserved words) 是C#保留使用的,全部采用小寫字母。 每一個(gè)程序至少有一個(gè)由程序員定義的類聲明class declaration ,稱為“用戶定義類” user-defined classes 。 類關(guān)鍵字引入類聲明,它的后面緊跟類的名稱。 2009 Pearson
10、 Education, Inc. All rights reserved.153.2 一個(gè)簡單C#程序:顯示一行文本(續(xù).)好的編程經(jīng)驗(yàn)好的編程經(jīng)驗(yàn) 3.1按照慣例,類名稱標(biāo)識符總是以一個(gè)大寫字母開頭,并將其后的每個(gè)單詞的首字母都大寫。 2009 Pearson Education, Inc. All rights reserved.16圖圖. 3.2 | C# 關(guān)鍵字和上下文關(guān)鍵字 (部分1.) 類名稱是一個(gè)標(biāo)識符類名稱是一個(gè)標(biāo)識符identifier: 一系列的字母、數(shù)字和下劃線 ( _ )組成。 不能以數(shù)字開頭,也不能包含空格。 圖 3.2中列出了C#關(guān)鍵字的完整清單。3.2 一個(gè)簡單C
11、#程序:顯示一行文本(續(xù).) 2009 Pearson Education, Inc. All rights reserved.17圖圖. 3.2 | C# 關(guān)鍵字和上下文關(guān)鍵字 (部分2.) 在圖3.2中的上下文關(guān)鍵字被用于標(biāo)識符,但為了清晰起見,不推薦這樣做。3.2 一個(gè)簡單C#程序:顯示一行文本(續(xù).) 2009 Pearson Education, Inc. All rights reserved.183.2 一個(gè)簡單C#程序:顯示一行文本(續(xù).) C# 是大小寫敏感 case sensitive大小寫字母是有區(qū)別的,因此 a1 和 A1 是不同的 (但有效) 標(biāo)識符。常見的編程錯(cuò)誤常
12、見的編程錯(cuò)誤 3.2C#是大小寫敏感的。用錯(cuò)了標(biāo)識符的大寫和小寫字母,通常會導(dǎo)致編譯錯(cuò)誤。 標(biāo)識符的前面還可以加上 符號。這個(gè)符號表明了單詞應(yīng)當(dāng)解釋為標(biāo)識符,即使它為關(guān)鍵字。 (e.g. int). 2009 Pearson Education, Inc. All rights reserved.193.2 一個(gè)簡單C#程序:顯示一行文本(續(xù).)好的編程經(jīng)驗(yàn)好的編程經(jīng)驗(yàn) 3.2按照慣例,命名包含一個(gè)公共類的文件時(shí)應(yīng)和類同名 (加上.cs擴(kuò)展名),拼寫和大小寫都一致。 這樣的命名有利于確定程序類的位置。 2009 Pearson Education, Inc. All rights reserv
13、ed.203.2 一個(gè)簡單C#程序:顯示一行文本(續(xù).) 每個(gè)類聲明的類體(body)都以一個(gè)左花括號 開始。并以一個(gè)對應(yīng)的右花括號 來結(jié)束類的聲明。錯(cuò)誤預(yù)防提示錯(cuò)誤預(yù)防提示 3.2一旦在程序中輸入了左花括號 ,就立即輸入右花括號 。然后將光標(biāo)重新定位到二者之間并進(jìn)行縮進(jìn),再進(jìn)行輸入。這一經(jīng)驗(yàn)有助于避免因遺漏花括號而出現(xiàn)錯(cuò)誤。好的編程經(jīng)驗(yàn)好的編程經(jīng)驗(yàn) 3.3在界定體的左花括號和右花括號之間,應(yīng)將每個(gè)類聲明的整個(gè)類體都縮進(jìn)一“級”。這種格式既突出了類聲明的結(jié)構(gòu),又使它更易閱讀。選擇Edit Advanced Format Document??梢宰孖DE格式化代碼。 2009 Pearson Ed
14、ucation, Inc. All rights reserved.213.2 一個(gè)簡單C#程序:顯示一行文本(續(xù).)好的編程好的編程 經(jīng)驗(yàn)經(jīng)驗(yàn) 3.4設(shè)置愿意采用的縮進(jìn)量,然后一致地使用它。也可以使用Tab鍵來來產(chǎn)生縮進(jìn),但不同的文本編輯器的制表符長度可能不同。推進(jìn)每個(gè)縮進(jìn)三個(gè)空格。在3.3中講解了如何進(jìn)行這種設(shè)置。常見的編程錯(cuò)誤常見的編程錯(cuò)誤 3.3如果花括號不成對出現(xiàn),則是一種語法錯(cuò)誤。 2009 Pearson Education, Inc. All rights reserved.223.2 一個(gè)簡單C#程序:顯示一行文本(續(xù).) 標(biāo)識符后面的圓括號Parentheses表示它是一個(gè)
15、稱為方法的程序構(gòu)建塊 。類聲明中通常包含一個(gè)或多個(gè)方法。 方法名采用與類名相同的大小寫慣例。 對每個(gè)應(yīng)用程序, 類中必須有一個(gè)Main方法; 否則程序?qū)⒉荒苓\(yùn)行。 方法能夠執(zhí)行任務(wù),并在完成任務(wù)后返回信息。關(guān)鍵字voidvoid 表示這個(gè)方法在完成任務(wù)后不返回任何信息。 2009 Pearson Education, Inc. All rights reserved.233.2 一個(gè)簡單C#程序:顯示一行文本(續(xù).) 方法體聲明以左花括號開始,以對應(yīng)的右花括號結(jié)束。好的編程經(jīng)驗(yàn)好的編程經(jīng)驗(yàn) 3.5和類聲明一樣,在界定方法體的左花括號和右花括號之間,應(yīng)將和類聲明一樣,在界定方法體的左花括號和右花
16、括號之間,應(yīng)將每個(gè)方法聲明的整個(gè)方法體都縮進(jìn)一級。這種格式使方法的結(jié)構(gòu)每個(gè)方法聲明的整個(gè)方法體都縮進(jìn)一級。這種格式使方法的結(jié)構(gòu)更突出,也使方法聲明更易讀。更突出,也使方法聲明更易讀。 2009 Pearson Education, Inc. All rights reserved.243.2 一個(gè)簡單C#程序:顯示一行文本(續(xù).) 在雙引號之間的字符表示是字符串字符串strings。 在字符串中的空白符不會被編譯器忽略。 Console.WriteLineConsole.WriteLine 方法實(shí)現(xiàn)在控制臺窗口中顯示一行文本。 括號中的字符串是Console.WriteLineConsole.
17、WriteLine 方法的參數(shù)。 Console.WriteLineConsole.WriteLine 方法的作用在控制臺窗口中顯示參數(shù)(也叫輸出)。 2009 Pearson Education, Inc. All rights reserved.253.2 一個(gè)簡單C#程序:顯示一行文本(續(xù).) 一個(gè)方法一般由一條或多條語句組成,執(zhí)行方法的任務(wù)。(語句: statements ) 多數(shù)語句以分號結(jié)束。(分號:semicolon)常見的編程錯(cuò)誤常見的編程錯(cuò)誤3.4在語句的結(jié)尾省略分號是一個(gè)語法錯(cuò)誤。在語句的結(jié)尾省略分號是一個(gè)語法錯(cuò)誤。 2009 Pearson Education, Inc.
18、 All rights reserved.263.2 一個(gè)簡單C#程序:顯示一行文本(續(xù).)錯(cuò)誤防止提示錯(cuò)誤防止提示 3.3當(dāng)編譯器報(bào)告語法錯(cuò)誤時(shí),錯(cuò)誤可能不在錯(cuò)誤消息所指的行當(dāng)編譯器報(bào)告語法錯(cuò)誤時(shí),錯(cuò)誤可能不在錯(cuò)誤消息所指的行中。首先要檢查報(bào)告錯(cuò)誤的行,如果該行沒有語法錯(cuò)誤,則中。首先要檢查報(bào)告錯(cuò)誤的行,如果該行沒有語法錯(cuò)誤,則要檢查前面的幾個(gè)行。要檢查前面的幾個(gè)行。好的編程經(jīng)驗(yàn)好的編程經(jīng)驗(yàn) 3.6在方法體或類聲明的后面,進(jìn)行注釋有利于提高程序的可讀在方法體或類聲明的后面,進(jìn)行注釋有利于提高程序的可讀性。性。 2009 Pearson Education, Inc. All rights r
19、eserved.273.3 在在Visual C# Express中創(chuàng)建一個(gè)簡單的中創(chuàng)建一個(gè)簡單的程序程序創(chuàng)建控制臺應(yīng)用程序創(chuàng)建控制臺應(yīng)用程序r 選擇“文件文件” File “新建新建”-“項(xiàng)項(xiàng)目目” New Project 顯示“新建項(xiàng)目”對話框 (Fig. 3.3)。 選擇選擇“控制臺應(yīng)用程序控制臺應(yīng)用程序”Console Application 模板。 在對話框的名稱欄中,輸入Welcome1, 并單擊“確定” OK 創(chuàng)建工程。 2009 Pearson Education, Inc. All rights reserved.283.3 在在Visual C# Express中創(chuàng)建一個(gè)簡
20、單的中創(chuàng)建一個(gè)簡單的程序(續(xù)程序(續(xù).)Project name圖圖. 3.3 | 用新建工程創(chuàng)建控制臺應(yīng)用程序用新建工程創(chuàng)建控制臺應(yīng)用程序 工程名 2009 Pearson Education, Inc. All rights reserved.293.3 在在Visual C# Express中創(chuàng)建一個(gè)簡單的中創(chuàng)建一個(gè)簡單的程序程序(續(xù)續(xù).) IDE現(xiàn)在包含了打開的控制臺應(yīng)用程序。 IDE使用的代碼配色方案稱為“語法顏色高亮” syntax-color shading ,可以幫助程序員直觀地區(qū)分程序元素。 2009 Pearson Education, Inc. All rights re
21、served.303.3 在在Visual C# Express中創(chuàng)建一個(gè)簡單的中創(chuàng)建一個(gè)簡單的程序程序(續(xù)續(xù).)圖圖. 3.4 | 打開控制臺程序的打開控制臺程序的IDE編輯器窗口 2009 Pearson Education, Inc. All rights reserved.313.3 在在Visual C# Express中創(chuàng)建一個(gè)簡單的中創(chuàng)建一個(gè)簡單的程序程序(續(xù)續(xù).) 設(shè)置IDE顯示行號,選擇“工具工具” Tools “選選項(xiàng)項(xiàng)” Options. 在對話框中顯示 (圖. 3.5), 單擊對話框的左下方的“顯示所有設(shè)置” Show all settings 復(fù)選框。 展開左邊的“文
22、本編輯器文本編輯器”Text Editor的節(jié)點(diǎn) ,并選擇“所有語言所有語言”All Languages. 在右側(cè), 選中“行號”Line numbers 復(fù)選框。 注:由于Visual Studio 版本不同,設(shè)置稍有差異。 2009 Pearson Education, Inc. All rights reserved.323.3 在在Visual C# Express中創(chuàng)建一個(gè)簡單的中創(chuàng)建一個(gè)簡單的程序程序(續(xù)續(xù).)圖圖. 3.5 | 修改修改IDE的設(shè)置的設(shè)置 2009 Pearson Education, Inc. All rights reserved.333.3 在在Visual
23、 C# Express中創(chuàng)建一個(gè)簡單的中創(chuàng)建一個(gè)簡單的程序程序(續(xù)續(xù).) 設(shè)置代碼縮進(jìn)三個(gè)字符: 在選項(xiàng)對話框中,展開左面板中C#節(jié)點(diǎn)并并選擇制表符。 確保選中插入空格??s進(jìn)大小和制表符大小都輸入。. 單擊“確定”保存設(shè)置。關(guān)閉對話框轉(zhuǎn)入編輯窗口。 2009 Pearson Education, Inc. All rights reserved.343.3 在在Visual C# Express中創(chuàng)建一個(gè)簡單的中創(chuàng)建一個(gè)簡單的程序程序(續(xù)續(xù).) 重命名程序文件, 單擊“解決方案資源管理器”窗口中的Program.cs 文件,在屬性窗口中顯示它的屬性 (圖. 3.6). 改變文件名為Welcom
24、e1.cs。 2009 Pearson Education, Inc. All rights reserved.353.3 在在Visual C# Express中創(chuàng)建一個(gè)簡單的中創(chuàng)建一個(gè)簡單的程序程序(續(xù)續(xù).)圖圖. 3.6 | 在在Properties 窗口中重命名程序文件 單擊 Program.cs ,顯示它的屬性在此處輸入Welcome.cs,重命名文件File Name 屬性屬性窗口Solution Explorer 2009 Pearson Education, Inc. All rights reserved.363.3 在在Visual C# Express中創(chuàng)建一個(gè)簡單的中創(chuàng)
25、建一個(gè)簡單的程序程序(續(xù)續(xù).) 智能感應(yīng)智能感應(yīng)IntelliSense 列出類的成員, 包括方法的名稱。 當(dāng)輸入時(shí),Visual C# Express 會高亮顯示第一個(gè)成員,輸入匹配全部字符, 然后顯示工具提示包含這個(gè)成員的描述。 你既可以輸入全部的成員名稱,也可以雙擊列表中成員名或按Tab鍵來完成輸入。 當(dāng)智能感應(yīng)窗口顯示時(shí),按Ctrl 鍵使窗口透明以致于可以看見窗口后面的代碼。 2009 Pearson Education, Inc. All rights reserved.373.3 在在Visual C# Express中創(chuàng)建一個(gè)簡單的中創(chuàng)建一個(gè)簡單的程序程序(續(xù)續(xù).)圖圖. 3.7
26、 | Visual C# Express.的智能感應(yīng)特點(diǎn) 鍵入的部分名稱智能感應(yīng)窗口最匹配的項(xiàng)被高亮顯示工具提示描述了被高亮顯示的項(xiàng) 2009 Pearson Education, Inc. All rights reserved.383.3 在在Visual C# Express中創(chuàng)建一個(gè)簡單的中創(chuàng)建一個(gè)簡單的程序程序(續(xù)續(xù).) 當(dāng)你輸入開始圓括號字符, (, 在方法名之后, 會顯示 參數(shù)信息Parameter Info窗口 (圖. 3.8)。 這個(gè)窗口包含方法參數(shù)的信息。向下箭頭參數(shù)信息窗口向上箭頭圖圖. 3.8 | 參數(shù)信息窗口 向上向下箭頭允許通過滾動來加載方法 2009 Pearso
27、n Education, Inc. All rights reserved.393.3 在在Visual C# Express中創(chuàng)建一個(gè)簡單的中創(chuàng)建一個(gè)簡單的程序程序(續(xù)續(xù).) 保存程序, 選擇“文件文件” File “保存全部保存全部” Save All 顯示保存工程對話框。 在“位置”Location 文本框中, 指定想要保存的目錄。 選擇“為解決方案創(chuàng)建目錄” Create directory for solution 復(fù)選框并單擊“保存”Save。 2009 Pearson Education, Inc. All rights reserved.403.3 在在Visual C# Ex
28、press中創(chuàng)建一個(gè)簡單的中創(chuàng)建一個(gè)簡單的程序程序(續(xù)續(xù).) 編譯程序, 選擇“生成” Build “生成解決方案生成解決方案” Build Solution。 運(yùn)行程序, 選擇“調(diào)試調(diào)試” Debug 開始執(zhí)行開始執(zhí)行Start Without Debugging (或按Ctrl + F5)。 這樣就會調(diào)用Main方法。 圖 3.10 顯示了程序的執(zhí)行結(jié)果, 在控制臺窗口顯示 。(控制臺也就是命令窗口Command Prompt) 2009 Pearson Education, Inc. All rights reserved.413.3 在在Visual C# Express中創(chuàng)建一個(gè)簡單
29、的中創(chuàng)建一個(gè)簡單的程序程序(續(xù)續(xù).)圖圖. 3.9 | 在在圖. 3.1中執(zhí)行程序. 控制臺窗口 2009 Pearson Education, Inc. All rights reserved.423.3 在在Visual C# Express中創(chuàng)建一個(gè)簡單的中創(chuàng)建一個(gè)簡單的程序程序(續(xù)續(xù).)錯(cuò)誤防止提示錯(cuò)誤防止提示 3.4當(dāng)學(xué)習(xí)編程時(shí)當(dāng)學(xué)習(xí)編程時(shí), ,有時(shí)有時(shí)“停止停止”正在運(yùn)行的程序以便正在運(yùn)行的程序以便 了解編譯了解編譯的語法錯(cuò)誤信息。試圖移去圖的語法錯(cuò)誤信息。試圖移去圖Fig.3.1Fig.3.1中的分號或括號中的分號或括號, , 然然后重新編譯應(yīng)用程序,看被遺漏的錯(cuò)誤信息。后重新編
30、譯應(yīng)用程序,看被遺漏的錯(cuò)誤信息。 2009 Pearson Education, Inc. All rights reserved.433.3 在在Visual C# Express中創(chuàng)建一個(gè)簡單的中創(chuàng)建一個(gè)簡單的程序程序(續(xù)續(xù).) 當(dāng)輸入代碼時(shí), IDE通過語法顏色或語法錯(cuò)誤。 語法錯(cuò)誤表明違反了Visual C#創(chuàng)建應(yīng)用程序的規(guī)則。 當(dāng)語法錯(cuò)誤產(chǎn)生時(shí), IDE會用紅色標(biāo)注錯(cuò)誤 ,并顯示一個(gè)錯(cuò)誤描述的窗口。(圖. 3.10). 2009 Pearson Education, Inc. All rights reserved.443.3 在在Visual C# Express中創(chuàng)建一個(gè)簡單的中
31、創(chuàng)建一個(gè)簡單的程序程序(續(xù)續(xù).)圖圖. 3.10 | IDE中的語法錯(cuò)誤消息故意省略分號 (語法錯(cuò)誤)表明語法錯(cuò)誤的波浪線錯(cuò)誤描述錯(cuò)誤清單窗口 2009 Pearson Education, Inc. All rights reserved.453.3 在在Visual C# Express中創(chuàng)建一個(gè)簡單的中創(chuàng)建一個(gè)簡單的程序程序(續(xù)續(xù).) 錯(cuò)誤防止提示3.5一個(gè)語法錯(cuò)誤可能導(dǎo)致在錯(cuò)誤清單窗口中出現(xiàn)多條錯(cuò)誤信息。一個(gè)語法錯(cuò)誤可能導(dǎo)致在錯(cuò)誤清單窗口中出現(xiàn)多條錯(cuò)誤信息。改正一個(gè)錯(cuò)誤后,重新編譯程序時(shí)可能會消除多個(gè)后續(xù)的錯(cuò)改正一個(gè)錯(cuò)誤后,重新編譯程序時(shí)可能會消除多個(gè)后續(xù)的錯(cuò)誤消息。因此,看到并知道如
32、何修改一個(gè)錯(cuò)誤時(shí),應(yīng)先改正誤消息。因此,看到并知道如何修改一個(gè)錯(cuò)誤時(shí),應(yīng)先改正它并重新編譯。這樣可能消除多個(gè)其他的錯(cuò)誤信息。它并重新編譯。這樣可能消除多個(gè)其他的錯(cuò)誤信息。 2009 Pearson Education, Inc. All rights reserved.46 圖3.11所示的Welcome2類使用了兩條語句, 產(chǎn)生如前面的例子圖 3.11所示相同的輸出。 與 WriteLine不同, Console 類 Write 方法不能將光標(biāo)的位置定位到控制臺程序屏幕下一行的開始。3.4 修改修改 C# 程序程序 2009 Pearson Education, Inc. All right
33、s reserved.47圖圖. 3.11 | 用多條語句顯示一行文本用多條語句顯示一行文本.Write 方法不會將光標(biāo)移動到新的一行3.4 修改修改 C# 程序(續(xù)程序(續(xù).)Welcome2.csWelcome2.cs 2009 Pearson Education, Inc. All rights reserved.48 通過使用新行符可以用單條語句顯示多行文本。 與空格符和制表符一樣,新行符也是空白符。 圖3.12 的應(yīng)用程序輸出4行文本,用新行符表明什么時(shí)候開始新行。OutlineWelcome3.csWelcome3.cs圖圖. 3.12 |用單條語句顯示多行文本用單條語句顯示多行文
34、本 2009 Pearson Education, Inc. All rights reserved.493.4 修改修改 C# 程序(續(xù)程序(續(xù).) 反斜杠 backslash () 被稱為轉(zhuǎn)義符escape character,并且它是轉(zhuǎn)義序列escape sequence的一個(gè)字符。 轉(zhuǎn)義序列n 表明新行符newline character。 圖 3.13 列出了幾個(gè)常用的轉(zhuǎn)義序列并描述了在控制臺窗口中如何輸出。 2009 Pearson Education, Inc. All rights reserved.503.4 修改修改 C# 程序(續(xù)程序(續(xù).)Fig. 3.16 | Som
35、e common escape sequences. 圖. 3.13 | 一些常用的轉(zhuǎn)義序列S 2009 Pearson Education, Inc. All rights reserved.51 Console 的 Write 和 WriteLine方法的功能就是現(xiàn)實(shí)格式化的數(shù)據(jù)。 圖3.14 展示了另外一種方法來使用WriteLine 方法。OutlineWelcome4.csWelcome4.cs圖圖. 3.14 |用字符串格式化方式顯示多行文本用字符串格式化方式顯示多行文本.WriteLine方法的第一個(gè)參數(shù)是格式化字符串format string ,可以包含預(yù)置文本fixed te
36、xt 和格式項(xiàng)format items。3.5 用用Console.WriteConsole.Write 和和 Console.WriteLineConsole.WriteLine 格式化文本格式化文本 2009 Pearson Education, Inc. All rights reserved.523.5用Console.Write和Console.WriteLine格式化文本 當(dāng)一個(gè)方法需要多個(gè)實(shí)參時(shí),參數(shù)用逗號分隔。(commas:逗號:逗號)好的編程經(jīng)驗(yàn)3.7在每個(gè)實(shí)參列表的逗號之后加一個(gè)空格在每個(gè)實(shí)參列表的逗號之后加一個(gè)空格 (, ,)可以提高程序的可以提高程序的可讀性??勺x性。
37、 大語句可以分成多行,但是存在一定的限制。大語句可以分成多行,但是存在一定的限制。常見的編程錯(cuò)誤3.5將一條語句中的標(biāo)識符或字符串從中間斷行分開是一個(gè)語法將一條語句中的標(biāo)識符或字符串從中間斷行分開是一個(gè)語法錯(cuò)誤。錯(cuò)誤。 2009 Pearson Education, Inc. All rights reserved.533.5 用Console.Write和Console.WriteLine格式化文本 WriteLine方法的第一個(gè)參數(shù)是一個(gè)格式化字符串format string ,由固定文本fixed text 和格式項(xiàng) format items組成. 每個(gè)格式項(xiàng)都是一個(gè)值的占位符place
38、holder, WriteLine相對應(yīng)的其它額外的參數(shù): 0是第一個(gè)額外的參數(shù)占位符。 1是第二個(gè)額外的參數(shù)占位符, 等等。 格式項(xiàng)也可以包含可選的格式信息。 2009 Pearson Education, Inc. All rights reserved.543.6 另一個(gè)C#程序:整數(shù)相加 程序?qū)?shù)值和其他數(shù)據(jù)保存在計(jì)算機(jī)內(nèi)存中,并通過稱為變量variables的元素訪問這些數(shù)據(jù)。 變量變量variable 存放在內(nèi)存中,存儲在變量中在以后的程序中可以被使用。 變量聲明語句 variable declaration statement (也叫定義 declaration) 界定了變量的名
39、稱和類型 一個(gè)變量的名稱使程序訪問存儲在內(nèi)存中的變量名稱可以是任何有效的標(biāo)識。 一個(gè)變量的類型界定了在類存中存儲什么類型的信息。 2009 Pearson Education, Inc. All rights reserved.55 三個(gè)變量聲明為整形intintOutlineAddition.csAddition.cs(1 of 2 )圖圖. 3.15 | 顯示通過鍵盤輸入的兩個(gè)數(shù)的值顯示通過鍵盤輸入的兩個(gè)數(shù)的值. (Part 1 of 2).Console.ReadLine()讀取用戶輸入的信息,用 Convert.ToInt32 轉(zhuǎn)換成為整形值。將三個(gè)變量聲明為整形用戶提示信息 2009
40、 Pearson Education, Inc. All rights reserved.56OutlineAddition.csAddition.cs(2 of 2 )圖圖. 3.15 |顯示通過鍵盤輸入的兩個(gè)數(shù)的值顯示通過鍵盤輸入的兩個(gè)數(shù)的值(Part 2 of 2). 2009 Pearson Education, Inc. All rights reserved.573.6 另一個(gè)C#程序:整數(shù)相加(續(xù).) intint 變量類型存儲整形integer 值(數(shù)字如7, 11, 0 和 31914). floatfloat, doubledouble 和 decimaldecimal 類
41、型指定實(shí)數(shù)(帶有小數(shù)點(diǎn)的十進(jìn)制數(shù))。 charchar 類型表示單個(gè)字符。 這些類型成為簡單類型simple types。簡單類型的名稱是關(guān)鍵字因而必須是小寫字母 。 2009 Pearson Education, Inc. All rights reserved.583.6 另一個(gè)C#程序:整數(shù)相加(續(xù).) 變量聲明語句可以被分成幾行, 變量名用逗號分隔。(例如., 一個(gè)變量名的逗號分隔列表)。 相同類型的變量可以聲明在一行或多行中。好的編程經(jīng)驗(yàn)3.8在單獨(dú)的行中聲明每個(gè)變量。這種格式變量聲明使得很容易在單獨(dú)的行中聲明每個(gè)變量。這種格式變量聲明使得很容易插入注釋。插入注釋。 2009 Pea
42、rson Education, Inc. All rights reserved.593.6 另一個(gè)C#程序:整數(shù)相加(續(xù).)好的編程經(jīng)驗(yàn)3.9選擇有意義的變量名,可使代碼具有自說明性,也就是說只選擇有意義的變量名,可使代碼具有自說明性,也就是說只需閱讀代碼本身就可以理解它的功能,而無需查看手冊或注需閱讀代碼本身就可以理解它的功能,而無需查看手冊或注釋。釋。好的編程經(jīng)驗(yàn)3.10按照約定按照約定, , 變量名稱的第一個(gè)字母要小寫,而后續(xù)所有單詞變量名稱的第一個(gè)字母要小寫,而后續(xù)所有單詞都以一個(gè)大寫字母開始,這種命名慣例稱為小寫駝峰規(guī)則。都以一個(gè)大寫字母開始,這種命名慣例稱為小寫駝峰規(guī)則。(cam
43、el casing:駝駝峰)峰) 2009 Pearson Education, Inc. All rights reserved.603.6 另一個(gè)C#程序:整數(shù)相加(續(xù).) Console的ReadLineReadLine 方法等待用戶用鍵盤輸入字符并按“回車”鍵。 ReadLine 返回下一個(gè)用戶輸入。 ConvertConvert 類的 ToInt32ToInt32 方法轉(zhuǎn)換這個(gè)字符串為int類型的數(shù)據(jù)。 ToInt32 返回int 值,代表用戶的輸入。 2009 Pearson Education, Inc. All rights reserved.613.6 另一個(gè)C#程序:整數(shù)相
44、加(續(xù).) 一個(gè)值用賦值符號存儲在變量中。assignment operator:賦值符號( = = ) 符號“= ”被稱為二元運(yùn)算符binary operator, 因?yàn)樗鼘蓧K信息或操作數(shù)進(jìn)行操作。 賦值語句 assignment statement 將一個(gè)值賦給變量。 賦值運(yùn)算符右側(cè)任何內(nèi)容總是在賦值執(zhí)行之前計(jì)算的。好的編程習(xí)慣3.11在二元運(yùn)算符的兩邊插入空格可以使它更突出并使代碼更可在二元運(yùn)算符的兩邊插入空格可以使它更突出并使代碼更可讀。讀。 2009 Pearson Education, Inc. All rights reserved.623.6 另一個(gè)C#程序:整數(shù)相加(續(xù).)
45、 語句中與值相關(guān)的任何部分都是表達(dá)式。 number1 + number2 的表達(dá)式的值就是它們的和。 表達(dá)式Console.ReadLine()的值就是用戶輸入的字符串。 計(jì)算可以在輸出語句中執(zhí)行。 2009 Pearson Education, Inc. All rights reserved.633.7內(nèi)存概念 變量名實(shí)際上都對應(yīng)于計(jì)算機(jī)中內(nèi)存的某個(gè)位置。 每個(gè)變量都具有名稱、類型、大小和值。 在 圖 3.16, 計(jì)算機(jī)會將這個(gè)整數(shù)值45放入位置number1。圖圖. 3.16 | 展示變量展示變量 number1number1的名稱和的名稱和值值的內(nèi)存位置的內(nèi)存位置. 2009 Pea
46、rson Education, Inc. All rights reserved.643.7 內(nèi)存概念(續(xù).) 在圖. 3.17, 72 被放置在number2. 圖圖. 3.17 | 保存變量number1 和number2的值后的內(nèi)存位置. 2009 Pearson Education, Inc. All rights reserved.653.7 內(nèi)存概念(續(xù).) 在sum 被計(jì)算后, 內(nèi)存應(yīng)如圖. 3.18. 圖圖. 3.18 | 計(jì)算并保存變量 number1 與 number2的和之后的內(nèi)存位置. 2009 Pearson Education, Inc. All rights re
47、served.663.7 內(nèi)存概念(續(xù).) 當(dāng)一個(gè)值被放入內(nèi)存位置時(shí), 這個(gè)值替換同一位置以前的, 并且前面的值會丟失。 當(dāng)從內(nèi)存中讀值時(shí),過程是非破壞性的nondestructive。 2009 Pearson Education, Inc. All rights reserved.67圖圖. 3.19 | 算術(shù)運(yùn)算符 算術(shù)運(yùn)算符 arithmetic operators 被匯總在圖. 3.19。 圖. 3.19的操作運(yùn)算符是二元運(yùn)算符3.8 算算術(shù)術(shù)運(yùn)算符運(yùn)算符 2009 Pearson Education, Inc. All rights reserved.683.8 算術(shù)運(yùn)算符(續(xù).)
48、 整除整除Integer division 產(chǎn)生一個(gè)整數(shù)商整數(shù)后面的任何小數(shù)都直接刪除而不進(jìn)行四舍五入。 C# 提供了余數(shù)運(yùn)算符remainder operator %, 它產(chǎn)生整除后的余數(shù)。 余數(shù)操作大多數(shù)用在整數(shù)操作,但是也可以用于浮點(diǎn)數(shù)floats, 雙精度數(shù)doubles, 和小數(shù)decimals. 括號被用在C#表達(dá)式中同樣也用在代數(shù)表達(dá)式中。 假如一個(gè)表達(dá)式包含嵌套括號nested parentheses, 最內(nèi)層的括號表達(dá)式優(yōu)先計(jì)算。 2009 Pearson Education, Inc. All rights reserved.69圖圖. 3.20 | 算術(shù)運(yùn)算符的優(yōu)先級 算
49、術(shù)運(yùn)算符根據(jù)運(yùn)算符優(yōu)先級operator precedence規(guī)則來計(jì)算, 如下的代數(shù)運(yùn)算符也遵循優(yōu)先級規(guī)則。 (圖. 3.20). 3.8 算術(shù)運(yùn)算符(續(xù).) 2009 Pearson Education, Inc. All rights reserved.703.8 算術(shù)運(yùn)算符(續(xù).) 下面語句中圓圈中的數(shù)字表示C#執(zhí)行操作的順序。 乘法、求余和除法運(yùn)算會首先按從左到右的順序執(zhí)行(即它們的結(jié)合律是從左到右的),因?yàn)榕c加法和減法相比,它們具有更高的優(yōu)先級。然后進(jìn)行加法和減法運(yùn)算。這些運(yùn)算是從左到右的。 2009 Pearson Education, Inc. All rights reser
50、ved.713.8 算算術(shù)術(shù)運(yùn)算運(yùn)算(續(xù)續(xù).) 為了更好地理解運(yùn)算符優(yōu)先級的規(guī)則,考慮下面這個(gè)二次多項(xiàng)式second-degree polynomial (y = ax2 + bx + c): 2009 Pearson Education, Inc. All rights reserved.723.8 算術(shù)運(yùn)算算術(shù)運(yùn)算(續(xù)續(xù).) 在代數(shù)式中, 為了使代碼更加清楚加入非必要的括號 是可接受的(redundant:不需要的:不需要的)。 前面的賦值語句可以用括號來強(qiáng)調(diào)它的項(xiàng),如下所示:y = ( a * x * x ) + ( b * x ) + c; 2009 Pearson Education
51、, Inc. All rights reserved.733.8 算算術(shù)術(shù)運(yùn)算符運(yùn)算符 (續(xù)續(xù).) 圖圖. 3.21 | 二次多項(xiàng)式中的求值. 2009 Pearson Education, Inc. All rights reserved.743.9 判斷:相等運(yùn)算符與關(guān)系運(yùn)算符判斷:相等運(yùn)算符與關(guān)系運(yùn)算符Fig. 3.25 | Equality and relational operators. (Part 1 of 2.) 條件條件就是一個(gè)結(jié)果為真或假的表達(dá)式。 條件語句可以由相等運(yùn)算符相等運(yùn)算符equality operators (= and !=!=) 和關(guān)系運(yùn)算符關(guān)系運(yùn)算符 relational operators ( , = and = and !=, = and 和和 = = =, !=, = 和和 = = = =, ! =, = 和和 = =等等好的編程經(jīng)驗(yàn)3.12縮進(jìn)縮進(jìn)if if 語句體,可以使其更突出,能夠提高程序的可讀性。語句體,可以使其更突出,能夠提高程序的可讀性。 2009 Pearson Education, Inc. All rights reserved.823.9 判斷:相等運(yùn)算符與關(guān)系運(yùn)算符判斷:相等運(yùn)算符與關(guān)系運(yùn)算符 常常見見的的編編程程錯(cuò)誤錯(cuò)誤 3.10在在緊緊跟跟if語語
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度建筑材料加工生產(chǎn)合同范本4篇
- 專業(yè)出國留學(xué)輔導(dǎo)協(xié)議樣本(2024)版B版
- 2025年度醫(yī)療器械緊急運(yùn)輸服務(wù)協(xié)議3篇
- 2025年度數(shù)據(jù)中心場地租賃合作協(xié)議4篇
- 2025年度食品試用及消費(fèi)者滿意度調(diào)查合同4篇
- 2025年度綠色建筑設(shè)計(jì)與施工一體化服務(wù)合同4篇
- 2025年度市政基礎(chǔ)設(shè)施改造鏟車租賃協(xié)議書4篇
- 二零二四全新建筑工程施工聯(lián)營協(xié)議書下載3篇
- 2024重慶離婚協(xié)議書標(biāo)準(zhǔn)范文
- 二婚再婚2024年度財(cái)產(chǎn)共有協(xié)議
- 2024年黑河嫩江市招聘社區(qū)工作者考試真題
- 第22單元(二次函數(shù))-單元測試卷(2)-2024-2025學(xué)年數(shù)學(xué)人教版九年級上冊(含答案解析)
- 藍(lán)色3D風(fēng)工作總結(jié)匯報(bào)模板
- 安全常識課件
- 河北省石家莊市2023-2024學(xué)年高一上學(xué)期期末聯(lián)考化學(xué)試題(含答案)
- 2024年江蘇省導(dǎo)游服務(wù)技能大賽理論考試題庫(含答案)
- 2024年中考英語閱讀理解表格型解題技巧講解(含練習(xí)題及答案)
- 新版中國食物成分表
- 浙江省溫州市溫州中學(xué)2025屆數(shù)學(xué)高二上期末綜合測試試題含解析
- 2024年山東省青島市中考生物試題(含答案)
- 保安公司市場拓展方案-保安拓展工作方案
評論
0/150
提交評論