MES開(kāi)發(fā)與應(yīng)用 課件全套 韓祎 模塊1-3 MES及其基礎(chǔ)概念- 車(chē)間配送管理模塊_第1頁(yè)
MES開(kāi)發(fā)與應(yīng)用 課件全套 韓祎 模塊1-3 MES及其基礎(chǔ)概念- 車(chē)間配送管理模塊_第2頁(yè)
MES開(kāi)發(fā)與應(yīng)用 課件全套 韓祎 模塊1-3 MES及其基礎(chǔ)概念- 車(chē)間配送管理模塊_第3頁(yè)
MES開(kāi)發(fā)與應(yīng)用 課件全套 韓祎 模塊1-3 MES及其基礎(chǔ)概念- 車(chē)間配送管理模塊_第4頁(yè)
MES開(kāi)發(fā)與應(yīng)用 課件全套 韓祎 模塊1-3 MES及其基礎(chǔ)概念- 車(chē)間配送管理模塊_第5頁(yè)
已閱讀5頁(yè),還剩1217頁(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.1系統(tǒng)技術(shù)棧介紹深圳市信息職業(yè)技術(shù)學(xué)院——SMOM技術(shù)棧介紹系統(tǒng)技術(shù)棧組成01目

錄.Net技術(shù)介紹02WebUI(extjs)03PDA(vue)04工業(yè)管理軟件系統(tǒng)(SMOM)支持的數(shù)據(jù)庫(kù)05學(xué)習(xí)目標(biāo)通過(guò)本節(jié)學(xué)習(xí)可以:了解工業(yè)管理軟件系統(tǒng)技術(shù)棧組成;工業(yè)管理軟件后端使用的開(kāi)發(fā)語(yǔ)言?工業(yè)管理軟件UI使用的框架?工業(yè)app使用的開(kāi)發(fā)框架?工業(yè)管理軟件支持的數(shù)據(jù)庫(kù)包含哪些?01系統(tǒng)技術(shù)棧介紹工業(yè)管理軟件系統(tǒng)的技術(shù)棧02.NET技術(shù)介紹思考題工業(yè)管理軟件后端開(kāi)發(fā)為什么使用.net框架?.NET技術(shù)介紹工業(yè)管理軟件系統(tǒng)主要的基礎(chǔ)平臺(tái)和業(yè)務(wù)功能模塊都是基于.NET框架和相關(guān)系列技術(shù)棧進(jìn)行實(shí)現(xiàn)。.NET是一個(gè)可以用來(lái)構(gòu)建現(xiàn)代、可伸縮和高性能的跨平臺(tái)軟件應(yīng)用程序的通用開(kāi)發(fā)框架??捎糜跒閃indows、Linux和MacOS構(gòu)建軟件應(yīng)用程序。.NET提供了最先進(jìn)、最成熟和最廣泛的類(lèi)庫(kù)、公共API、多語(yǔ)言支持和工具。借助于VisualStudio和VisualStudioCode這些最先進(jìn)和最現(xiàn)代的開(kāi)發(fā)工具,使得.NETCore成為開(kāi)發(fā)人員最高效的平臺(tái)之一。.NET是免費(fèi)和開(kāi)源的。C#語(yǔ)言C#又稱(chēng)“CSharp”,是微軟發(fā)布的一種簡(jiǎn)單、安全、穩(wěn)定、通用的面向?qū)ο缶幊陶Z(yǔ)言。C#是從C/C++衍生出來(lái)的,它在繼承C/C++強(qiáng)大功能的同時(shí),拋棄了C/C++的一些復(fù)雜特性。C#還和Java非常類(lèi)似,僅僅在一些細(xì)節(jié)上有差別。借助C#我們可以開(kāi)發(fā)不同類(lèi)型的應(yīng)用程序:桌面應(yīng)用程序、網(wǎng)絡(luò)應(yīng)用程序、分布式應(yīng)用程序、Web服務(wù)應(yīng)用程序、數(shù)據(jù)庫(kù)應(yīng)用程序等。工業(yè)管理軟件系統(tǒng)的主要基礎(chǔ)架構(gòu)和業(yè)務(wù)代碼都是基于C#語(yǔ)言在.NET框架平臺(tái)上實(shí)現(xiàn)的。.NET框架主流開(kāi)發(fā)軟件上面這些是使用.NET框架開(kāi)發(fā)的一些主流軟件的例子,涵蓋了不同領(lǐng)域和用途的應(yīng)用程序。03WebUI(extjs)Extjs技術(shù)介紹ExtJS是一個(gè)流行的JavaScript框架,為使用跨瀏覽器功能構(gòu)建Web應(yīng)用程序提供了豐富的UI。ExtJS基本上用于創(chuàng)建網(wǎng)頁(yè)端應(yīng)用程序,它支持所有現(xiàn)代瀏覽器,如IE6+,F(xiàn)F,Chrome,safari6+等。EXT擁有絢麗的外表。同時(shí)有很多用其他技術(shù)無(wú)法實(shí)現(xiàn)或極難實(shí)現(xiàn)的功能,卻能用EXT輕易實(shí)現(xiàn),比如EXT中的表格、樹(shù)形、布局等控件能為我們的日常開(kāi)發(fā)工作節(jié)約大量的時(shí)間和精力。ExtJS在工業(yè)管理軟件(SMOM)中的應(yīng)用主要在于PC端的Web界面展示。ExtJSAPI:Ext.grid.column.Column|ExtJS6.5.0()ExtJSExamples:Sencha|ExtJSExamplesEXTjs框架主流開(kāi)發(fā)軟件以上是使用ExtJS框架開(kāi)發(fā)的主流軟件的例子。04PDA(vue)Vue技術(shù)介紹Vue在SMOM中的應(yīng)用主要在于移動(dòng)端的UI界面展示,可跨平臺(tái)支持安卓、蘋(píng)果和Windows操作系統(tǒng)的設(shè)備。Vue(發(fā)音為/vju?/,類(lèi)似view)是一款用于構(gòu)建用戶界面的JavaScript框架。Vue基于標(biāo)準(zhǔn)HTML、CSS和JavaScript構(gòu)建,并提供了一套聲明式的、組件化的編程模型,幫助你高效地開(kāi)發(fā)用戶界面。無(wú)論是簡(jiǎn)單還是復(fù)雜的界面,Vue都可以勝任。Vue框架主流開(kāi)發(fā)軟件以上是使用Vue框架開(kāi)發(fā)的主流軟件的例子。05SMOM系統(tǒng)支持的數(shù)據(jù)庫(kù)SMOM支持的數(shù)據(jù)庫(kù)類(lèi)型支持Oracle,支持Oracle的版本在Oracle11g或者以上;支持SQLServer,支持SQLServer的版本在2012或以上;支持MySQL,支持5.7或以上版本,建議使用5.7的版本;MySQL,可支持PolarDB和MariaDB,目前比較全面的應(yīng)用是PolarDB。Oracle數(shù)據(jù)庫(kù)介紹和配置Oracle數(shù)據(jù)庫(kù)是甲骨文公司的一款關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)。它是在數(shù)據(jù)庫(kù)領(lǐng)域一直處于領(lǐng)先地位的產(chǎn)品。可以說(shuō)Oracle數(shù)據(jù)庫(kù)系統(tǒng)是世界上流行的關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng),系統(tǒng)可移植性好、使用方便、功能強(qiáng),適用于各類(lèi)大、中、小微機(jī)環(huán)境。它是一種高效率的、可靠性好的、適應(yīng)高吞吐量的數(shù)據(jù)庫(kù)方案。Oracle數(shù)據(jù)庫(kù)在SMOM中的配置方式:1.通過(guò)config文件中添加配置節(jié):"master":{

"Name":"master",

"ConnectionString":"DataSource=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=)(PORT=1522))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=orcl)));UserId=SMOM_TEST;Password=SMOM_TEST;MetadataPooling=false;",

"ProviderName":"Oracle.ManagedDataAccess.Client"

},2.環(huán)境說(shuō)明:需要安裝32位的ODAC,項(xiàng)目工程要添加Oracle.ManagedDataAccess.Core的依賴包SQLServer數(shù)據(jù)庫(kù)介紹和配置MicrosoftSQLServer是一個(gè)全面的數(shù)據(jù)庫(kù)平臺(tái),使用集成的商業(yè)智能(BI)工具提供了企業(yè)級(jí)的數(shù)據(jù)管理。MicrosoftSQLServer數(shù)據(jù)庫(kù)引擎為關(guān)系型數(shù)據(jù)和結(jié)構(gòu)化數(shù)據(jù)提供了更安全可靠的存儲(chǔ)功能,可以構(gòu)建和管理用于業(yè)務(wù)的高可用和高性能的數(shù)據(jù)應(yīng)用程序。SMOM中,SQLServer數(shù)據(jù)庫(kù)鏈接配置方式:"master":{

"Name":"master",

"ConnectionString":"DataSource=Win10-2021JRWLR;Userid=sa;Password=123456;InitialCatalog=MES;MultipleActiveResultSets=true;",

"ProviderName":"System.Data.SqlClient"

},如果采用的是VS自帶SQLServer數(shù)據(jù)庫(kù),則配置如下:"master":{

"Name":"master",

"ConnectionString":"DataSource=(LocalDB)\\MSSQLLocalDB;AttachDbFilename=D:\\Project\\DEMO\\App_Data\\DEMO_83.mdf;IntegratedSecurity=True;UserId=DEMO_83",

"ProviderName":"System.Data.SqlClient"

},SQLServer數(shù)據(jù)庫(kù)依賴包和常見(jiàn)問(wèn)題使用SQLServer需要添加SqlClient依賴包,方法:點(diǎn)擊“依賴項(xiàng)”右鍵“管理NuGet程序包”,添加System.Data.SqlClient的依賴包,如果已經(jīng)存在該依賴該步驟忽略,如右圖所示。常見(jiàn)問(wèn)題:使用SqlServer數(shù)據(jù)庫(kù),引用進(jìn)來(lái)的nuget包的System.Data.SqlClient.dll大小不對(duì),直接運(yùn)行會(huì)報(bào)錯(cuò),BS運(yùn)行項(xiàng)目使用的System.Data.SqlClient.dll的大小是979kb的,這里需要把該dll替換下,demo中是使用生成后事件進(jìn)行替換的,先把正確的dll放到了packages包下(左下圖),再用生成后事件進(jìn)行替換(右下圖)事件腳本:COPY/Y"$(SolutionDir)packages\System.Data.SqlClient.dll""$(ProjectDir)$(OutDir)"MySQL數(shù)據(jù)庫(kù)介紹和配置MySQL是一個(gè)關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng),由瑞典MySQLAB公司開(kāi)發(fā),屬于Oracle旗下產(chǎn)品。MySQL是最流行的關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng)之一,在WEB應(yīng)用方面,MySQL是最好的RDBMS(RelationalDatabaseManagementSystem,關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng))應(yīng)用軟件之一。MySql數(shù)據(jù)庫(kù)在SMOM中的配置方式:1.通過(guò)config文件中添加配置節(jié):

"master":{

"Name":"master",

"ConnectionString":"server=;UserId=code_prod;password=123456;Database=test1;ConnectionTimeout=300;DefaultCommandTimeout=300",

"ProviderName":"PolarDB"

},依賴包:MySql.Data,需要引用的程序集:SIE.Data.MySql.dll和SIE.Data.PolarDB.dll練習(xí)1、以下關(guān)于SMOM系統(tǒng)支持的數(shù)據(jù)庫(kù),說(shuō)法錯(cuò)誤的是()A:支持oracle數(shù)據(jù)庫(kù)連接,oracle的版本必須11g或者以上;B:使用oracle數(shù)據(jù)庫(kù),開(kāi)發(fā)環(huán)境必須安裝ODAC,ODAC可以是32位或者是64位的版本;C:支持SQLServer,SQLServer的版本必須是2012或者以上;D:支持MySql,MySql的版本必須5.7或者以上。B本章小結(jié)SMOM技術(shù)棧介紹系統(tǒng)支持的數(shù)據(jù)庫(kù)1.SMOM支持Oracle、SQLServer和MySql三種關(guān)系型數(shù)據(jù)庫(kù)2.需要掌握三種關(guān)系型數(shù)據(jù)庫(kù)的配置。系統(tǒng)使用的技術(shù)棧1.SMOM后端使用的是.NET框架的C#語(yǔ)言。2.SMOMWebUI使用的是ExtJS框架。3.SMOMApp使用的是vue框架。THANKYOU深圳市信息職業(yè)技術(shù)學(xué)院1.1系統(tǒng)技術(shù)棧介紹——認(rèn)識(shí)C#語(yǔ)言深圳市信息職業(yè)技術(shù)學(xué)院.Net基礎(chǔ)知識(shí)01目

錄開(kāi)發(fā)環(huán)境搭建02第一個(gè)C#程序03運(yùn)行原理04知識(shí)回顧工業(yè)管理軟件的系統(tǒng)技術(shù)棧組成;工業(yè)管理軟件系統(tǒng)后端開(kāi)發(fā)框架和語(yǔ)言;工業(yè)管理軟件系統(tǒng)WebUI框架;工業(yè)App軟件系統(tǒng)框架;工業(yè)管理軟件系統(tǒng)支持的數(shù)據(jù)庫(kù)。學(xué)習(xí)目標(biāo)通過(guò)本節(jié)學(xué)習(xí):重點(diǎn)理解和掌握開(kāi)發(fā)環(huán)境搭建和第一個(gè)C#程序。掌握C#運(yùn)行原理。了解.NETFramework和C#語(yǔ)言。01.Net基礎(chǔ)知識(shí).NetFramework什么是.NETFramework?.NetFramework.NETFramework是一個(gè)全新的、集成的、面向?qū)ο蟮钠脚_(tái)可以創(chuàng)建桌面應(yīng)用程序可以創(chuàng)建Web應(yīng)用程序可以創(chuàng)建Web服務(wù)其他各種類(lèi)型的應(yīng)用程序Microsoft創(chuàng)建的開(kāi)發(fā)應(yīng)用程序平臺(tái).NetFrameworkNETFramework主要由公共語(yǔ)言運(yùn)行時(shí)(CLR)和.NETFramework基礎(chǔ)類(lèi)庫(kù)(BaseClassLibrary,簡(jiǎn)稱(chēng)BCL)兩部分組成。接下來(lái)通過(guò)一個(gè)圖例來(lái)描述.NETFramework的基本結(jié)構(gòu),如下圖所示。.NETFrameworkC#語(yǔ)言C#是微軟公司在2000年6月發(fā)布的一種通用的、面向?qū)ο蟮木幊陶Z(yǔ)言,是.NET平臺(tái)的主要編程語(yǔ)言之一。可以用于開(kāi)發(fā)各種類(lèi)型的應(yīng)用程序,包括桌面應(yīng)用程序、Web應(yīng)用程序、移動(dòng)應(yīng)用程序、游戲等。C#語(yǔ)言的特點(diǎn)和功能:面向?qū)ο箢?lèi)型安全簡(jiǎn)潔易讀強(qiáng)大的標(biāo)準(zhǔn)庫(kù)支持異步編程可擴(kuò)展性C#語(yǔ)言02開(kāi)發(fā)環(huán)境搭建VisualStudio介紹SDK:MicrosoftVisualStudio(簡(jiǎn)稱(chēng)VS)是美國(guó)微軟公司的開(kāi)發(fā)工具包系列產(chǎn)品。VS是一個(gè)基本完整的開(kāi)發(fā)工具集,他包括了整個(gè)軟件生命周期中所需要的大部分工具,如UML工具、代碼管控工具、集成開(kāi)發(fā)環(huán)境(IDE)等。VisualStudio是目前最流行的Windows平臺(tái)應(yīng)用程序的集成開(kāi)發(fā)環(huán)境,最新版本為VisualStudio2022。VisualStudio介紹VisualStudio介紹VisualStudio近三個(gè)版本差異功能VS2017VS2019VS2022C++標(biāo)準(zhǔn)C++14C++17C++20IDEMSBuildMSBuildMSBuild.NET版本.NETFramework4.7.NETFramework4.8.NET6C#版本C#7.0C#8.0C#9.0IntelliSense基本支持改進(jìn)支持改進(jìn)支持NuGet支持支持支持XAMLDesigner基本支持改進(jìn)支持改進(jìn)支持Azure開(kāi)發(fā)有限支持改進(jìn)支持改進(jìn)支持Docker支持有限支持改進(jìn)支持改進(jìn)支持VisualStudio2022特點(diǎn)123456VisualStudio2022特點(diǎn)改進(jìn)的性能VisualStudio2022引入了許多性能改進(jìn),包括更快的啟動(dòng)時(shí)間、更快的解決方案加載、更快的編輯器響應(yīng)速度等。這些改進(jìn)使開(kāi)發(fā)人員能夠更高效地進(jìn)行開(kāi)發(fā)工作。支持最新的.NET版本VisualStudio2022提供了對(duì)最新的.NET版本的支持,包括.NET6和.NETCore3.1。開(kāi)發(fā)人員可以使用最新的.NET功能和工具來(lái)構(gòu)建現(xiàn)代化的應(yīng)用程序。全新的設(shè)計(jì)VisualStudio2022引入了全新的外觀和用戶界面設(shè)計(jì),采用了更現(xiàn)代化的外觀和更直觀的操作方式。它提供了更好的可視化體驗(yàn)和更流暢的工作流程??缙脚_(tái)開(kāi)發(fā)VisualStudio2022支持跨平臺(tái)開(kāi)發(fā),使開(kāi)發(fā)人員能夠在Windows、macOS和Linux等不同的操作系統(tǒng)上進(jìn)行應(yīng)用程序開(kāi)發(fā)。它提供了針對(duì)不同平臺(tái)的工具和調(diào)試器,簡(jiǎn)化了跨平臺(tái)開(kāi)發(fā)的復(fù)雜性。AI增強(qiáng)功能VisualStudio2022集成了人工智能(ArtificialIntelligence,AI)增強(qiáng)功能,如智能代碼補(bǔ)全、智能錯(cuò)誤檢測(cè)和智能調(diào)試等。這些功能可以提高開(kāi)發(fā)人員的生產(chǎn)力,并提供更好的開(kāi)發(fā)體驗(yàn)。改進(jìn)的協(xié)作和團(tuán)隊(duì)開(kāi)發(fā)VisualStudio2022提供了改進(jìn)的協(xié)作和團(tuán)隊(duì)開(kāi)發(fā)功能,包括實(shí)時(shí)協(xié)作編輯、Git集成、代碼審查工具等。這些功能使團(tuán)隊(duì)能夠更好地協(xié)作開(kāi)發(fā),并提高代碼質(zhì)量和可維護(hù)性。VisualStudio安裝2VisualStudio2022的安裝1VisualStudio2022的下載103第一個(gè)C#程序開(kāi)發(fā)第一個(gè)C#程序功能描述:技術(shù)要點(diǎn):在VisualStudio工具的起始窗口中單擊添加-【創(chuàng)建新項(xiàng)目(N)】按鈕-創(chuàng)建控制臺(tái)應(yīng)用程序編寫(xiě)程序代碼點(diǎn)擊工具欄中的運(yùn)行按鈕運(yùn)行程序?qū)崿F(xiàn)步驟:在控制臺(tái)輸出HelloWorld。使用VisualStudio創(chuàng)建程序,使用控制臺(tái)輸出程序結(jié)果。23104運(yùn)行原理運(yùn)行原理

運(yùn)行期:CLR會(huì)針對(duì)目前特定的硬件環(huán)境使用即時(shí)編譯(JIT),也就是將中間語(yǔ)言編譯成為本機(jī)代碼并執(zhí)行。在運(yùn)行期,CLR把將編譯過(guò)后的代碼放入一個(gè)緩沖區(qū)中。下次使用相同的代碼時(shí),就直接從緩沖區(qū)調(diào)用。也就是說(shuō)相同代碼只編譯一次,提高了程序運(yùn)行的速度。

編譯期:CLR對(duì)C#代碼進(jìn)行第一次編譯,將編寫(xiě)的代碼編譯成.dll文件或.exe文件。此時(shí)代碼被編譯為中間語(yǔ)言練習(xí)?本章練習(xí)簡(jiǎn)述.NET平臺(tái)的特點(diǎn)。簡(jiǎn)述C#程序的運(yùn)行原理。?預(yù)習(xí)練習(xí)C#的有什么語(yǔ)法格式?C#中的條件語(yǔ)句有哪些,特點(diǎn)是什么?C#中的循環(huán)語(yǔ)句有哪些,特點(diǎn)是什么?本章小結(jié)認(rèn)識(shí)C#語(yǔ)言需要重點(diǎn)掌握開(kāi)發(fā)環(huán)境的搭建,理解C#的運(yùn)行原理。C#運(yùn)行原理和.Net基礎(chǔ)1.理解C#程序編譯器和運(yùn)行期的原理。2.了解.NETFramework和C#的概念和特點(diǎn)。開(kāi)發(fā)環(huán)境搭建1.掌握VS開(kāi)發(fā)工具的安裝。2.能夠使用VS獨(dú)立編寫(xiě)C#的一個(gè)簡(jiǎn)單的控制臺(tái)應(yīng)用程序。THANKYOU深圳市信息職業(yè)技術(shù)學(xué)院1.1系統(tǒng)技術(shù)棧介紹——C#編程基礎(chǔ)C#中的變量C#中的運(yùn)算符選擇結(jié)構(gòu)語(yǔ)句循環(huán)結(jié)構(gòu)語(yǔ)句C#基本語(yǔ)法方法06數(shù)組07程序調(diào)試08知識(shí)回顧.NET基礎(chǔ)知識(shí);開(kāi)發(fā)環(huán)境搭建;第一個(gè)C#程序;C#運(yùn)行原理。學(xué)習(xí)目標(biāo)通過(guò)本節(jié)學(xué)習(xí):重點(diǎn)理解和掌握C#的變量、選擇結(jié)構(gòu)語(yǔ)句和循環(huán)結(jié)構(gòu)語(yǔ)句。掌握C#的語(yǔ)法格式、運(yùn)算符和方法。了解數(shù)組和程序調(diào)試。01C#基本語(yǔ)法思考題C#有什么語(yǔ)法格式?C#代碼的基本格式C#代碼的基本格式每一種編程語(yǔ)言都有一套自己的語(yǔ)法規(guī)范,C#語(yǔ)言也不例外,同樣需要遵從一定的語(yǔ)法規(guī)范,如代碼的書(shū)寫(xiě)、標(biāo)識(shí)符的定義、關(guān)鍵字的應(yīng)用等。定義類(lèi)的格式[修飾符]class類(lèi)名{程序代碼}C#代碼的基本格式注意事項(xiàng)在編寫(xiě)C#代碼時(shí),除了要遵從定義類(lèi)的語(yǔ)法格式外,還需要特別注意以下幾點(diǎn),具體如下:C#中的程序代碼可分為結(jié)構(gòu)定義語(yǔ)句和功能執(zhí)行語(yǔ)句,其中,結(jié)構(gòu)定義語(yǔ)句用于聲明一個(gè)類(lèi)或方法,功能執(zhí)行語(yǔ)句用于實(shí)現(xiàn)具體的功能。每條功能執(zhí)行語(yǔ)句的最后都必須用分號(hào)(;)結(jié)束。C#語(yǔ)言是嚴(yán)格區(qū)分大小寫(xiě)的。在編寫(xiě)C#代碼時(shí),為了便于閱讀,通常會(huì)使用一種良好的格式進(jìn)行排版??偨Y(jié):“;”、“大小寫(xiě)”、“格式”C#中的注釋C#中的注釋在編寫(xiě)程序時(shí),為了使代碼易于閱讀,通常會(huì)在實(shí)現(xiàn)功能的同時(shí)為代碼加一些注釋。注釋是對(duì)程序中某個(gè)功能或者某行代碼的解釋說(shuō)明,在編譯程序時(shí)編譯器不會(huì)編譯這些注釋信息。intc=10;//定義一個(gè)整型變量注釋類(lèi)型單行注釋?zhuān)簡(jiǎn)涡凶⑨屚ǔS糜趯?duì)程序中的某一行代碼進(jìn)行解釋?zhuān)梅?hào)“//”表示,“//”后面為被注釋的內(nèi)容??偨Y(jié):注釋使用”//”C#中的注釋C#中的注釋多行注釋?zhuān)憾嘈凶⑨尵褪亲⑨屩械膬?nèi)容可以為多行,它以符號(hào)“/*”開(kāi)頭,以符號(hào)“*/”結(jié)尾。/*intc=1 0;intx=5;*////<summary>///在集合中添加元素///</summary>staticvoidAdd(){}多行注釋?zhuān)憾嘈凶⑨尵褪亲⑨屩械膬?nèi)容可以為多行,它以符號(hào)“/*”開(kāi)頭,以符號(hào)“*/”結(jié)尾??偨Y(jié):注釋使用”/**/”C#中的標(biāo)識(shí)符C#中的標(biāo)識(shí)符在編程過(guò)程中,經(jīng)常需要在程序中定義一些符號(hào)來(lái)標(biāo)記一些名稱(chēng),如類(lèi)名、方法名、參數(shù)名、變量名等,這些符號(hào)被稱(chēng)為標(biāo)識(shí)符。標(biāo)識(shí)符可以由任意順序的大小寫(xiě)字母、數(shù)字、下劃線(_)和@符號(hào)組成,但標(biāo)識(shí)符不能以數(shù)字開(kāi)頭,且不能是C#中的關(guān)鍵字。//合法的標(biāo)識(shí)符usernameusername123user_name_userName//不合法的標(biāo)識(shí)符123usernameclass98.3HelloWorld以數(shù)字開(kāi)頭關(guān)鍵字以數(shù)字開(kāi)頭包含空格必須要嚴(yán)格遵守上面列出的規(guī)范,否則程序在編譯時(shí)會(huì)報(bào)錯(cuò)C#中的標(biāo)識(shí)符標(biāo)識(shí)符規(guī)范為了增強(qiáng)代碼的可讀性,建議初學(xué)者在定義標(biāo)識(shí)符時(shí)還應(yīng)該遵循以下規(guī)范:類(lèi)名、方法名和屬性名中的每個(gè)單詞的首字母要大寫(xiě)。例如Age。這種命名方式被稱(chēng)為大駝峰命名法或帕斯卡(Pascal)命名法字段名、變量名的首字母要小寫(xiě),之后的每個(gè)單詞的首字母均為大寫(xiě)。例如:age、userName。這種命名方式被稱(chēng)為小駝峰命名法。。常量名中的所有字母都大寫(xiě),單詞之間用下劃線連接。例如:DAY_OF_MONTH。在程序中,應(yīng)該盡量使用有意義的英文單詞來(lái)定義標(biāo)識(shí)符,使得程序便于閱讀。例如使用userName表示用戶名,password表示密碼。C#中的關(guān)鍵字C#中的關(guān)鍵字關(guān)鍵字是編程語(yǔ)言中事先定義好并賦予了特殊含義的單詞,也稱(chēng)作保留字。和其他語(yǔ)言一樣,C#中保留了許多關(guān)鍵字。注意:1、所有的關(guān)鍵字都是小寫(xiě)的。

2、程序中的標(biāo)識(shí)符不能以關(guān)鍵字命名。C#中的常量C#中的常量常量就是在程序中固定不變的值,是不能改變的數(shù)據(jù)。例如數(shù)字1、字符'a'、浮點(diǎn)數(shù)3.2等。常量類(lèi)型整型常量:整型常量是整數(shù)類(lèi)型的數(shù)據(jù),有二進(jìn)制、八進(jìn)制、十進(jìn)制和十六進(jìn)制4種表示形式。二進(jìn)制:由數(shù)字0和1組成的數(shù)字序列。如01000000、10000001。八進(jìn)制:以0開(kāi)頭并且其后由0~7之間(包括0和7)的整數(shù)組成的數(shù)字序列,如:0342。十進(jìn)制:數(shù)字0~9之間(包括0和9)的整數(shù)組成的數(shù)字序列。如:198。十六進(jìn)制:以0x或者0X開(kāi)頭并且其后由0~9、A~F(包括0和9、A和F)組成的數(shù)字序列,如0x25AF。C#中的常量C#中的常量浮點(diǎn)數(shù)常量:就是在數(shù)學(xué)中用到的小數(shù)。浮點(diǎn)數(shù)常量的類(lèi)型如下所示:float單精度浮點(diǎn)數(shù):后面以F或f結(jié)尾。double雙精度浮點(diǎn)數(shù):后面以以D或d結(jié)尾。當(dāng)在使用浮點(diǎn)數(shù)時(shí)也可以在結(jié)尾處不加任何的后綴,此時(shí)虛擬機(jī)會(huì)默認(rèn)為double雙精度浮點(diǎn)數(shù)。2e3f3.6d0f3.84d5.022e+23f字符常量:用于表示一個(gè)字符,一個(gè)字符常量要用一對(duì)英文半角格式的單引號(hào)('')引起來(lái),他可以是英文字母、數(shù)字、標(biāo)點(diǎn)符號(hào)以及由轉(zhuǎn)義序列來(lái)表示的特殊字符。‘a(chǎn)’‘1’‘&''\r''\u0000'空白字符C#中的常量C#中的常量字符串常量:用于表示一串連續(xù)的字符,一個(gè)字符串常量要用一對(duì)英文半角格式的雙引號(hào)(“”)引起來(lái)。"HelloWorld""123""Welcome\nXXX"""布爾常量:布爾常量即布爾型的兩個(gè)值true和false,該常量用于區(qū)分一個(gè)事物的真與假。null常量:null常量只有一個(gè)值null,表示對(duì)象的引用為空。02C#中的變量變量的定義變量的定義程序運(yùn)行期間,隨時(shí)可能產(chǎn)生一些臨時(shí)數(shù)據(jù),應(yīng)用程序會(huì)將這些數(shù)據(jù)保存在一些內(nèi)存單元中,每個(gè)內(nèi)存單元都用一個(gè)標(biāo)識(shí)符來(lái)標(biāo)識(shí)。這些內(nèi)存單元我們稱(chēng)之為變量,定義的標(biāo)識(shí)符就是變量名,內(nèi)存單元中存儲(chǔ)的數(shù)據(jù)就是變量的值。intx=0,y;y=x+3;變量的數(shù)據(jù)類(lèi)型變量的數(shù)據(jù)類(lèi)型C#是一門(mén)強(qiáng)類(lèi)型的編程語(yǔ)言,他對(duì)變量的數(shù)據(jù)類(lèi)型有嚴(yán)格的限定。在定義變量時(shí)必須聲明變量的類(lèi)型,在為變量賦值時(shí)必須賦予和變量同一種類(lèi)型的值,否則程序會(huì)報(bào)錯(cuò)。變量的數(shù)據(jù)類(lèi)型值類(lèi)型引用類(lèi)型變量的數(shù)據(jù)類(lèi)型整數(shù)類(lèi)型變量整數(shù)類(lèi)型變量:用來(lái)存儲(chǔ)整數(shù)數(shù)值,即沒(méi)有小數(shù)部分的值。整數(shù)類(lèi)型分類(lèi):字節(jié)型(byte)、短整型(short)、整型(int)和長(zhǎng)整型(long)四種類(lèi)型所占存儲(chǔ)空間的大小以及取值范圍:類(lèi)型名占用空間取值范圍byte8位(1個(gè)字節(jié))-27~27-1short16位(2個(gè)字節(jié))-215~215-1int32位(4個(gè)字節(jié))-231~231-1long64位(8個(gè)字節(jié))-263~263-1占用的內(nèi)存大小變量的數(shù)據(jù)類(lèi)型浮點(diǎn)數(shù)類(lèi)型變量浮點(diǎn)數(shù)類(lèi)型變量:用來(lái)存儲(chǔ)小數(shù)數(shù)值。浮點(diǎn)數(shù)類(lèi)型分類(lèi):?jiǎn)尉雀↑c(diǎn)數(shù)(float)、雙精度浮點(diǎn)數(shù)(double),double型所表示的浮點(diǎn)數(shù)比f(wàn)loat型更精確。兩種浮點(diǎn)數(shù)所占存儲(chǔ)空間的大小以及取值范圍:類(lèi)型名占用空間取值范圍float32位(4個(gè)字節(jié))1.4E-45~3.4E+38,-1.4E-45~-3.4E+38double64位(8個(gè)字節(jié))4.9E-324~1.7E+308,-4.9E-324~-1.7E+308注意:在C#中,一個(gè)小數(shù)會(huì)被默認(rèn)為double類(lèi)型的值,因此在為一個(gè)float類(lèi)型的變量賦值時(shí)需要注意一點(diǎn),所賦值的后面一定要加上字母“F”(或者小寫(xiě)“f”);而為double類(lèi)型的變量賦值時(shí),可以在所賦值的后面加上字符“D”(或小寫(xiě)“d”),也可以不加。變量的數(shù)據(jù)類(lèi)型字符類(lèi)型變量字符類(lèi)型變量:用于存儲(chǔ)一個(gè)單一字符,在C#中用char表示。占用空間:C#中每個(gè)char類(lèi)型的字符變量都會(huì)占用2個(gè)字節(jié)。符號(hào):在給char類(lèi)型的變量賦值時(shí),需要用一對(duì)英文半角格式的單引號(hào)(‘’)把字符括起來(lái),如‘a(chǎn)‘。charc='a';//為一個(gè)char類(lèi)型的變量賦值字符'a'變量的數(shù)據(jù)類(lèi)型布爾類(lèi)型變量布爾類(lèi)型變量:布爾類(lèi)型變量用來(lái)存儲(chǔ)布爾值,在C#中用bool表示,該類(lèi)型的變量只有兩個(gè)值,即true和false。boolflag=false; //聲明一個(gè)bool類(lèi)型的變量,初始值為falseflag=true; //改變flag變量的值為true變量的類(lèi)型轉(zhuǎn)換變量的類(lèi)型轉(zhuǎn)換在程序中,當(dāng)把一種數(shù)據(jù)類(lèi)型的值賦給另一種數(shù)據(jù)類(lèi)型的變量時(shí),需要進(jìn)行數(shù)據(jù)類(lèi)型轉(zhuǎn)換。類(lèi)型轉(zhuǎn)換分類(lèi):自動(dòng)類(lèi)型轉(zhuǎn)換和強(qiáng)制類(lèi)型轉(zhuǎn)換。自動(dòng)類(lèi)型轉(zhuǎn)換:自動(dòng)類(lèi)型轉(zhuǎn)換也叫隱式類(lèi)型轉(zhuǎn)換,指的是兩種數(shù)據(jù)類(lèi)型在轉(zhuǎn)換的過(guò)程中不需要顯式地進(jìn)行聲明。自動(dòng)類(lèi)型轉(zhuǎn)換滿足的條件:兩種數(shù)據(jù)類(lèi)型彼此兼容。目標(biāo)類(lèi)型的取值范圍大于源類(lèi)型的取值范圍。變量的類(lèi)型轉(zhuǎn)換自動(dòng)類(lèi)型轉(zhuǎn)換自動(dòng)類(lèi)型轉(zhuǎn)換的三種條件:整數(shù)類(lèi)型之間可以實(shí)現(xiàn)轉(zhuǎn)換。整數(shù)類(lèi)型轉(zhuǎn)換為float類(lèi)型。其他類(lèi)型轉(zhuǎn)換為double類(lèi)型。

byteb=3;intx=b;//程序把byte類(lèi)型的變量b轉(zhuǎn)換成了int類(lèi)型,無(wú)需特殊聲明變量的類(lèi)型轉(zhuǎn)換變量的類(lèi)型轉(zhuǎn)換強(qiáng)制類(lèi)型轉(zhuǎn)換:也叫顯式類(lèi)型轉(zhuǎn)換,指的是兩種數(shù)據(jù)類(lèi)型之間的轉(zhuǎn)換需要進(jìn)行顯式地聲明。強(qiáng)制類(lèi)型轉(zhuǎn)換滿足的條件:當(dāng)兩種類(lèi)型彼此不兼容,或者目標(biāo)類(lèi)型取值范圍小于源類(lèi)型時(shí),自動(dòng)類(lèi)型轉(zhuǎn)換無(wú)法進(jìn)行,這時(shí)就需要進(jìn)行強(qiáng)制類(lèi)型轉(zhuǎn)換。變量的類(lèi)型轉(zhuǎn)換強(qiáng)制類(lèi)型轉(zhuǎn)換usingSystem;namespaceProgram02{classProgram{staticvoidMain(string[]args){bytea;//定義byte類(lèi)型的變量aintb=298;//定義int類(lèi)型的變量ba=(byte)b;Console.WriteLine("b="+b);Console.WriteLine("a="+a);Console.ReadKey();}}}將int類(lèi)型的變量b強(qiáng)制轉(zhuǎn)換成byte類(lèi)型,并復(fù)制給a變量的作用域變量的作用域變量需要在他的作用范圍內(nèi)才可以被使用,這個(gè)作用范圍稱(chēng)為變量的作用域。程序中,變量一定會(huì)被定義在某一對(duì)大括號(hào)中,該大括號(hào)所包含的代碼區(qū)域便是這個(gè)變量的作用域。一對(duì)大括號(hào)就是一個(gè)作用域,里作用域可以調(diào)用外作用域資源,外作用域不可調(diào)用里作用域資源。變量的類(lèi)型轉(zhuǎn)換強(qiáng)制類(lèi)型轉(zhuǎn)換classProgram{staticvoidMain(string[]args){intx=12;//定義了變量x{inty=96;//定義了變量yConsole.WriteLine("xis"+x);//訪問(wèn)變量xConsole.WriteLine("yis"+y);//訪問(wèn)變量y}y=x;//訪問(wèn)變量x,為變量y賦值Console.WriteLine("xis"+x);//訪問(wèn)變量xConsole.ReadKey();

}}x的作用域在紅色大括號(hào)內(nèi)y的作用域y的作用域外訪問(wèn)變量外y,會(huì)出現(xiàn)編譯錯(cuò)誤的提示將該行刪除,再運(yùn)行程序03C#的運(yùn)算符C#中的運(yùn)算符運(yùn)算符算術(shù)運(yùn)算符賦值運(yùn)算符比較運(yùn)算符邏輯運(yùn)算符位運(yùn)算符特點(diǎn):處理四則運(yùn)算的符號(hào)特點(diǎn):將常量、變量或表達(dá)式的值賦給某一個(gè)變量特點(diǎn):對(duì)兩個(gè)數(shù)值或變量進(jìn)行比較,其結(jié)果是一個(gè)布爾值特點(diǎn):邏輯運(yùn)算符用于對(duì)布爾型的數(shù)據(jù)進(jìn)行操作,其結(jié)果仍是一個(gè)布爾型特點(diǎn):專(zhuān)門(mén)針對(duì)數(shù)字0和1進(jìn)行操作的算術(shù)運(yùn)算符算術(shù)運(yùn)算符運(yùn)算符運(yùn)算范例結(jié)果+正號(hào)+33-負(fù)號(hào)b=4;-b;-4+、-、*、/加、減、乘、除省略省略%取模(求余數(shù))7%52++自增(前)a=2;b=++a;a=3;b=3;++自增(后)a=2;b=a++;a=3;b=2;--自減(前)a=2;b=--a;a=1;b=1;--自減(后)a=2;b=a--;a=1;b=2;算術(shù)運(yùn)算符:用來(lái)處理四則運(yùn)算的符號(hào),這是最簡(jiǎn)單、最常用的運(yùn)算符號(hào)。算術(shù)運(yùn)算符及其用法:算術(shù)運(yùn)算符算術(shù)運(yùn)算符在進(jìn)行自增(++)和自減(--)的運(yùn)算時(shí),如果運(yùn)算符(++或--)放在操作數(shù)的前面則是先進(jìn)行自增或自減運(yùn)算,再進(jìn)行其他運(yùn)算。反之,如果運(yùn)算符放在操作數(shù)的后面則是先進(jìn)行其他運(yùn)算再進(jìn)行自增或自減運(yùn)算。intnum1=1;intnum2=2;intres=num1+num2++;Console.WriteLine("num2="+num2);Console.WriteLine("res="+res);運(yùn)算符++寫(xiě)在了變量num2的后面,屬于先運(yùn)算再自增,因此運(yùn)行結(jié)果為:num2=3、res=3算術(shù)運(yùn)算符算術(shù)運(yùn)算符在進(jìn)行除法運(yùn)算時(shí),當(dāng)除數(shù)和被除數(shù)都為整數(shù)時(shí),得到的結(jié)果也是一個(gè)整數(shù)。如果除法運(yùn)算有小數(shù)參與,得到的結(jié)果會(huì)是一個(gè)小數(shù)。在進(jìn)行取模(%)運(yùn)算時(shí),運(yùn)算結(jié)果的正負(fù)取決于被模數(shù)(%左邊的數(shù))的符號(hào),與模數(shù)(%右邊的數(shù))的符號(hào)無(wú)關(guān)。如:(-5)%3=-2,而5%(-3)=2。3500/1000*1000先執(zhí)行除法運(yùn)算3500/1000,得到結(jié)果為3,再乘以1000,因此運(yùn)行結(jié)果為3000賦值運(yùn)算符賦值運(yùn)算符運(yùn)算符運(yùn)算范例結(jié)果=賦值a=3;b=2;a=3;b=2;+=加等于a=3;b=2;a+=b;a=5;b=2;-=減等于a=3;b=2;a-=b;a=1;b=2;*=乘等于a=3;b=2;a*=b;a=6;b=2;/=除等于a=3;b=2;a/=b;a=1;b=2;%=模等于a=3;b=2;a%=b;a=1;b=2;賦值運(yùn)算符:將常量、變量或表達(dá)式的值賦給某一個(gè)變量。賦值運(yùn)算符及其用法:賦值運(yùn)算符賦值運(yùn)算符在賦值過(guò)程中,運(yùn)算順序從右往左,將右邊表達(dá)式的結(jié)果賦值給左邊的變量。注意事項(xiàng):在C#中可以通過(guò)一條賦值語(yǔ)句對(duì)多個(gè)變量進(jìn)行賦值算術(shù)運(yùn)算符除了“=”,其他的都是特殊的賦值運(yùn)算符,以“+=”為例,x+=3就相當(dāng)于x=x+3,首先會(huì)進(jìn)行加法運(yùn)算x+3,再將運(yùn)算結(jié)果賦值給變量x。-=、*=、/=、%=賦值運(yùn)算符都可依此類(lèi)推。intx,y,z;//定義int類(lèi)型變量x,y,zx=y=z=5;//同時(shí)為x,y,z三個(gè)變量賦值比較運(yùn)算符比較運(yùn)算符運(yùn)算符運(yùn)算范例結(jié)果==相等于4==3false!=不等于4!=3true<小于4<3false>大于4>3true<=小于等于4<=3false>=大于等于4>=3true比較運(yùn)算符:用于對(duì)兩個(gè)數(shù)值或變量進(jìn)行比較,其結(jié)果是一個(gè)布爾值,即true或false。比較運(yùn)算符及其用法:邏輯運(yùn)算符邏輯運(yùn)算符運(yùn)算符運(yùn)算范例結(jié)果&與true&truetrue|或false|truetrue^異或true^truefalse!非!falsetrue&&短路與true&&falsefalse||短路或true||falsetrue邏輯運(yùn)算符:用于對(duì)布爾型的數(shù)據(jù)進(jìn)行操作,其結(jié)果仍是一個(gè)布爾型。邏輯運(yùn)算符及其用法:邏輯運(yùn)算符邏輯運(yùn)算符邏輯運(yùn)算符運(yùn)算過(guò)程中的細(xì)節(jié):

邏輯運(yùn)算符可以針對(duì)結(jié)果為布爾值的表達(dá)式進(jìn)行運(yùn)算。運(yùn)算符“&”和“&&”都表示與操作,當(dāng)且僅當(dāng)運(yùn)算符兩邊的操作數(shù)都為true時(shí),其結(jié)果才為true,否則結(jié)果為false。使用“&”進(jìn)行運(yùn)算時(shí),不論左邊為true或者false,右邊的表達(dá)式都會(huì)進(jìn)行運(yùn)算。如果使用“&&”進(jìn)行運(yùn)算,當(dāng)左邊為false時(shí),右邊的表達(dá)式不會(huì)進(jìn)行運(yùn)算,因此“&&”被稱(chēng)作短路與。運(yùn)算符“|”和“||”都表示或操作,當(dāng)運(yùn)算符兩邊的操作數(shù)任何一邊的值為true時(shí),其結(jié)果為true,當(dāng)兩邊的值都為false時(shí),其結(jié)果才為false。同與操作類(lèi)似,“||”表示短路或,當(dāng)運(yùn)算符“||”的左邊為true時(shí),右邊的表達(dá)式不會(huì)進(jìn)行運(yùn)算。運(yùn)算符“^”表示異或操作,當(dāng)運(yùn)算符兩邊的布爾值相同時(shí)(都為true或都為false),其結(jié)果為false。當(dāng)兩邊布爾值不相同時(shí),其結(jié)果為true。000位運(yùn)算符000位運(yùn)算符運(yùn)算符運(yùn)算范例結(jié)果&按位與0&10|按位或0|11~取反~01^按位異或0^11<<左移00000010<<200001000>>右移11100010>>211111000位運(yùn)算符:是針對(duì)二進(jìn)制數(shù)的每一位進(jìn)行運(yùn)算的符號(hào),他是專(zhuān)門(mén)針對(duì)數(shù)字0和1進(jìn)行操作的。位運(yùn)算符

及其用法:運(yùn)算符的優(yōu)先級(jí)運(yùn)算符的優(yōu)先級(jí)優(yōu)先級(jí)運(yùn)算符1.[]()2++--~!(數(shù)據(jù)類(lèi)型)3*/%4+-5<<>>>>>6<><=>=7==!=在對(duì)一些比較復(fù)雜的表達(dá)式進(jìn)行運(yùn)算時(shí),要明確表達(dá)式中所有運(yùn)算符參與運(yùn)算的先后順序,我們把這種順序稱(chēng)作運(yùn)算符的優(yōu)先級(jí)。運(yùn)算符的優(yōu)先級(jí):優(yōu)先級(jí)運(yùn)算符8&9++--~!10&11|12&&13?:(三元運(yùn)算符)14=*=/=%=+=-=<<=>>=>>>=&=^=|=04選擇結(jié)構(gòu)語(yǔ)句思考題C#中的條件語(yǔ)句有哪些,特點(diǎn)是什么?If條件語(yǔ)句if條件語(yǔ)句選擇語(yǔ)句:需要對(duì)一些條件作出判斷,從而決定執(zhí)行哪一段代碼。選擇語(yǔ)句分為if條件語(yǔ)句和switch條件語(yǔ)句。if條件語(yǔ)句的語(yǔ)法格式分為3種:if語(yǔ)句:if語(yǔ)句是指如果滿足某種條件,就進(jìn)行某種處理。if(條件語(yǔ)句){

代碼塊}當(dāng)條件語(yǔ)句為true時(shí),執(zhí)行代碼塊,否則不執(zhí)行if語(yǔ)句的語(yǔ)法格式:if語(yǔ)句的執(zhí)行流程:條件語(yǔ)句if條件語(yǔ)句namespaceProgram06{classProgram{staticvoidMain(string[]args){//聲明變量x作為判斷依據(jù)intx=5;//如果x的值小于10則執(zhí)行if大括號(hào)中的代碼if(x<10){x++;}Console.WriteLine("x="+x);Console.ReadKey();}}}5<10,因此條件成立,執(zhí)行x++If…else條件語(yǔ)句if…else條件語(yǔ)句if…else語(yǔ)句:是指如果滿足某種條件,就進(jìn)行某種處理,否則就進(jìn)行另一種處理。

if(判斷條件){

執(zhí)行語(yǔ)句1 ……}else{

執(zhí)行語(yǔ)句2 ……}當(dāng)判斷條件為true時(shí),執(zhí)行“執(zhí)行語(yǔ)句1”,否則,執(zhí)行“執(zhí)行語(yǔ)句2”if…else語(yǔ)句的語(yǔ)法格式:if條件語(yǔ)句的執(zhí)行流程:If…else條件語(yǔ)句namespaceProgram07{classProgram{staticvoidMain(string[]args){intnum=19;if(num%2==0){//判斷條件成立,num被2整除Console.WriteLine("num是一個(gè)偶數(shù)");}else{Console.WriteLine("num是一個(gè)奇數(shù)");}Console.ReadKey();}}}19模以2的結(jié)果為1,判斷條件不成立。因此會(huì)執(zhí)行else后面{}中的語(yǔ)句if…else條件語(yǔ)句If…elseif…else條件語(yǔ)句If…elseif…else條件語(yǔ)句if…elseif…else語(yǔ)句:用于對(duì)多個(gè)條件進(jìn)行判斷,進(jìn)行多種不同的處理。

if(判斷條件1){

執(zhí)行語(yǔ)句1}elseif(判斷條件2){

執(zhí)行語(yǔ)句2}...elseif(判斷條件n){

執(zhí)行語(yǔ)句n}else{

執(zhí)行語(yǔ)句n+1}當(dāng)判斷條件1為true時(shí),執(zhí)行“執(zhí)行語(yǔ)句1”,否則,判斷“判斷條件2”是否為true,否則,判斷“判斷條件3”是否為true,依次類(lèi)推if…elseif…else語(yǔ)句的語(yǔ)法格式:if條件語(yǔ)句的執(zhí)行流程:If…elseif…else條件語(yǔ)句staticvoidMain(string[]args){intgrade=75;//定義學(xué)生成績(jī)if(grade>=80){Console.WriteLine("該成績(jī)的等級(jí)為優(yōu)");}elseif(grade>=70){Console.WriteLine("該成績(jī)的等級(jí)為良");}elseif(grade>=60){Console.WriteLine("該成績(jī)的等級(jí)為中");}else{Console.WriteLine("該成績(jī)的等級(jí)為差");}Console.ReadKey();}成績(jī)大于等于80執(zhí)行成績(jī)大于等于70小于80時(shí)執(zhí)行成績(jī)大于等于60小于70時(shí)執(zhí)行小于60時(shí)執(zhí)行If…elseif…else條件語(yǔ)句三元運(yùn)算符多學(xué)一招——三元運(yùn)算符三元運(yùn)算符的作用和if-else語(yǔ)句類(lèi)似。語(yǔ)法格式如下:

判斷條件?表達(dá)式1:表達(dá)式2intx=0;inty=1;intmax;if(x>y){max=x;}else{max=y;}獲取最大值if..else語(yǔ)句:獲取最大值三元云算符:intx=0;inty=1;intmax;max=x>y?x:y;Switch條件語(yǔ)句switch條件語(yǔ)句switch條件語(yǔ)句也是一種很常用的選擇語(yǔ)句,他針對(duì)某個(gè)表達(dá)式的值作出判斷,從而決定程序執(zhí)行哪一段代碼。switch語(yǔ)句的具體格式:switch(表達(dá)式){

case目標(biāo)值1:

執(zhí)行語(yǔ)句1

break;

case目標(biāo)值n:

執(zhí)行語(yǔ)句n

break;default:

執(zhí)行語(yǔ)句n+1 break;}表達(dá)式的值與case語(yǔ)句中的目標(biāo)值匹配如果與表達(dá)式的值匹配,則執(zhí)行“執(zhí)行語(yǔ)句n”跳出switch語(yǔ)句,不再執(zhí)行switch中的語(yǔ)句如果沒(méi)找到任何匹配的值,就會(huì)執(zhí)行default后的語(yǔ)句Switch條件語(yǔ)句switch條件語(yǔ)句staticvoidMain(string[]args){intweek=5;switch(week){case1:…….case5:Console.WriteLine(“星期五");break;……}Console.ReadKey();}表達(dá)式的值為5表達(dá)式5匹配到的目標(biāo)值在控制臺(tái)輸出“星期五”05循環(huán)結(jié)構(gòu)語(yǔ)句思考題C#中的循環(huán)語(yǔ)句有哪些,特點(diǎn)是什么?While循環(huán)語(yǔ)句while循環(huán)語(yǔ)句循環(huán)語(yǔ)句:在C#中有一種可以重復(fù)執(zhí)行同一代碼塊的語(yǔ)句。循環(huán)語(yǔ)句分為while循環(huán)語(yǔ)句、do…while循環(huán)語(yǔ)句和for循環(huán)語(yǔ)句。while循環(huán)語(yǔ)句:反復(fù)地根據(jù)條件判斷來(lái)決定是否執(zhí)行大括號(hào)內(nèi)的執(zhí)行語(yǔ)句。while(循環(huán)條件){執(zhí)行語(yǔ)句………}條件成立,則執(zhí)行“執(zhí)行語(yǔ)句”,反復(fù)的判斷循環(huán)條件,直到不滿足條件時(shí),結(jié)束while循環(huán)while的語(yǔ)法結(jié)構(gòu):while執(zhí)行流程:While循環(huán)語(yǔ)句while循環(huán)語(yǔ)句usingSystem;namespaceProgram11{classProgram{staticvoidMain(string[]args){intx=1;//定義變量x,初始值為1while(x<=4){//循環(huán)條件Console.WriteLine("x="+x);//條件成立,打印x的值x++;}Console.ReadKey();}}}1小于4,執(zhí)行循環(huán)體x進(jìn)行自增x等于2,小于4,執(zhí)行循環(huán)體x進(jìn)行自增x等于3,小于4,執(zhí)行循環(huán)體x進(jìn)行自增x等于4,執(zhí)行循環(huán)體x進(jìn)行自增x等于5,小于4,條件不成立,結(jié)束while循環(huán)Do…while循環(huán)語(yǔ)句do…while循環(huán)語(yǔ)句do…while循環(huán)語(yǔ)句和while循環(huán)語(yǔ)句功能類(lèi)似,二者的不同之處在于,while語(yǔ)句需要先判斷循環(huán)條件,然后根據(jù)循環(huán)條件的結(jié)果來(lái)決定是否執(zhí)行大括號(hào)中的代碼,而do…while循環(huán)語(yǔ)句先要執(zhí)行一次大括號(hào)內(nèi)的代碼再判斷循環(huán)條件。do{執(zhí)行語(yǔ)句………}while(循環(huán)條件);do…while的語(yǔ)法結(jié)構(gòu):while執(zhí)行流程:循環(huán)體無(wú)論循環(huán)條件是否成立,循環(huán)體都執(zhí)行一次Do…while循環(huán)語(yǔ)句do…while循環(huán)語(yǔ)句usingSystem;namespaceProgram12{classProgram{staticvoidMain(string[]args){intx=1;//定義變量x,初始值為1do{Console.WriteLine("x="+x);//打印x的值x++;//將x的值自增}while(x<=4);//循環(huán)條件Console.ReadKey();}}}首先執(zhí)行循環(huán)體,x進(jìn)行自增然后判斷循環(huán)條件是否成立,x為2,條件成立,再次執(zhí)行循環(huán)體For循環(huán)語(yǔ)句for循環(huán)語(yǔ)句for循環(huán):通常用于循環(huán)次數(shù)已知的情況。for(初始化表達(dá)式;循環(huán)條件;操作表達(dá)式){

執(zhí)行語(yǔ)句

………}for循環(huán)的語(yǔ)法結(jié)構(gòu):循環(huán)體分別用①表示初始化表達(dá)式、②表示循環(huán)條件、③表示操作表達(dá)式、④表示循環(huán)體,通過(guò)序號(hào)來(lái)具體分析for循環(huán)的執(zhí)行流程。For循環(huán)語(yǔ)句for循環(huán)語(yǔ)句for(①;②;③){ ④}第一步,執(zhí)行①第二步,執(zhí)行②,如果判斷結(jié)果為true,執(zhí)行第三步,如果判斷結(jié)果為false,執(zhí)行第五步第三步,執(zhí)行④第四步,執(zhí)行③,然后繼續(xù)執(zhí)行第二步第五步,退出循環(huán)For循環(huán)語(yǔ)句for循環(huán)語(yǔ)句usingSystem;namespaceProgram13{classProgram{staticvoidMain(string[]args){intsum=0;//定義變量sum,用于記住累加的和for(inti=1;i<=4;i++){//i的值會(huì)在1~4之間變化sum+=i;//實(shí)現(xiàn)sum與i的累加}Console.WriteLine("sum="+sum);//打印累加的和Console.ReadKey();}}}i=1,并且i小于4,條件成立,執(zhí)行循環(huán)體首先執(zhí)行i++,i=2,i小于4,執(zhí)行循環(huán)體然后再次執(zhí)行i++,i=3,i小于4,執(zhí)行循環(huán)體,按照這樣的步驟執(zhí)行代碼,直到i大于4,結(jié)束循環(huán)跳轉(zhuǎn)語(yǔ)句跳轉(zhuǎn)語(yǔ)句跳轉(zhuǎn)語(yǔ)句:用于實(shí)現(xiàn)循環(huán)執(zhí)行過(guò)程中程序流程的跳轉(zhuǎn)。包括break語(yǔ)句、goto語(yǔ)句和continue語(yǔ)句。break語(yǔ)句使用在switch條件語(yǔ)句和循環(huán)語(yǔ)句。switch條件語(yǔ)句:終止某個(gè)case并跳出switch結(jié)構(gòu)。循環(huán)語(yǔ)句:跳出當(dāng)前循環(huán)語(yǔ)句,執(zhí)行后面的代碼。當(dāng)break語(yǔ)句出現(xiàn)在嵌套循環(huán)中的內(nèi)層循環(huán)時(shí),他只能跳出內(nèi)層循環(huán)goto語(yǔ)句:當(dāng)在嵌套循環(huán)中首先需要對(duì)外層循環(huán)添加標(biāo)記,然后使用goto語(yǔ)句跳出外層循環(huán)。continue語(yǔ)句:終止本次循環(huán),并執(zhí)行下一次循環(huán)。跳轉(zhuǎn)語(yǔ)句跳轉(zhuǎn)語(yǔ)句——breakclassProgram{staticvoidMain(string[]args){intx=1;//定義變量x,初始值為1while(x<=4){//循環(huán)條件Console.WriteLine("x="+x);//條件成立,打印x的值if(x==3){break;}x++;//x進(jìn)行自增}Console.ReadKey();}}當(dāng)x==3時(shí),執(zhí)行break語(yǔ)句,跳出while循環(huán),結(jié)束循環(huán)跳轉(zhuǎn)語(yǔ)句跳轉(zhuǎn)語(yǔ)句——gotostaticvoidMain(string[]args){inti,j;//定義兩個(gè)循環(huán)變量for(i=1;i<=9;i++){//外層循環(huán)for(j=1;j<=i;j++){//內(nèi)層循環(huán)if(i>4){//判斷i的值是否大于4gotoend;}Console.Write("*");//輸出*}Console.WriteLine();//換行}end:Console.ReadKey();}跳轉(zhuǎn)到end標(biāo)識(shí)的語(yǔ)句執(zhí)行該語(yǔ)句跳轉(zhuǎn)語(yǔ)句跳轉(zhuǎn)語(yǔ)句——continueclassProgram{staticvoidMain(string[]args){intsum=0;//定義變量sum,用于記住和for(inti=1;i<=100;i++){if(i%2==0){//如果i是一個(gè)偶數(shù),執(zhí)行if語(yǔ)句中的代碼continue;}sum+=i;//實(shí)現(xiàn)sum和i的累加}Console.WriteLine("sum="+sum);Console.ReadKey();}}結(jié)束本次循環(huán),即不執(zhí)行sum+=i;語(yǔ)句,直接進(jìn)入下次循環(huán)中循環(huán)嵌套循環(huán)嵌套循環(huán)嵌套:在一個(gè)循環(huán)中嵌套一個(gè)循環(huán)。最常見(jiàn)的嵌套循環(huán)為for循環(huán)中嵌套for循環(huán)。for循環(huán)中嵌套for循環(huán)的語(yǔ)法格式:for(初始化表達(dá)式;循環(huán)條件;操作表達(dá)式){………for(初始化表達(dá)式;循環(huán)條件;操作表達(dá)式){執(zhí)行語(yǔ)句

………}………}外層循環(huán)內(nèi)層循環(huán)循環(huán)嵌套循環(huán)嵌套namespaceProgram17{classProgram{staticvoidMain(string[]args){inti,j;//定義兩個(gè)循環(huán)變量for(i=1;i<=9;i++){//外層循環(huán)for(j=1;j<=i;j++){//內(nèi)層循環(huán)Console.Write("*");//打印*}Console.WriteLine();//換行}Console.ReadKey();}}}外層循環(huán)控制行數(shù)內(nèi)層循環(huán)控制在一行中打印*的個(gè)數(shù)06方法什么是方法什么是方法在程序中,將可以完成一定特定功能的代碼段提出來(lái)用一個(gè)方法來(lái)表示。例如一個(gè)段求兩個(gè)數(shù)之和代碼,我們可以用以Add()方法來(lái)表示,需要求和時(shí),只需調(diào)用Add()方法即可。方法的語(yǔ)法格式:[修飾符]返回值類(lèi)型方法名([[參數(shù)類(lèi)型參數(shù)名1],[參數(shù)類(lèi)型參數(shù)名2],……]){

方法體 return返回值;}可選,修飾符可以省略,可以用于對(duì)訪問(wèn)權(quán)限進(jìn)行限定,如private,也可使用靜態(tài)修飾符static描述方法返回值的數(shù)據(jù)類(lèi)型方法名使用變量的命名規(guī)則中的帕斯卡命名規(guī)范用于結(jié)束方法以及返回方法指定類(lèi)型的值被return語(yǔ)句返回的值,該值會(huì)返回給調(diào)用者用于限定調(diào)用方法時(shí)傳入?yún)?shù)的數(shù)據(jù)類(lèi)型用于接收調(diào)用方法時(shí)傳入的數(shù)據(jù)什么是方法什么是方法classProgram{staticvoidMain(string[]args){……intproduct=Multiply(3,5);Console.WriteLine("num1*num2="+product);Console.ReadKey();}……//定義兩個(gè)數(shù)相乘的方法publicstaticintMultiply(intnum1,intnum2){intsum=num1*num2;returnsum;}}在Main()中調(diào)用Multiply()方法方法的重載方法的重載C#中允許在一個(gè)程序中定義多個(gè)同名方法,但是參數(shù)的類(lèi)型或個(gè)數(shù)必須不同,這種方式被稱(chēng)作方法的重載。重載的條件:方法名相同。參數(shù)個(gè)數(shù)或參數(shù)類(lèi)型不相同。需要注意的是:方法的重載與返回值類(lèi)型無(wú)關(guān)。方法的重載方法的重載//下面的方法實(shí)現(xiàn)了兩個(gè)整數(shù)相加publicstaticintAdd(intx,inty){returnx+y;}//下面的方法實(shí)現(xiàn)了三個(gè)整數(shù)相加publicstaticintAdd(intx,inty,intz){returnx+y+z;}//下面的方法實(shí)現(xiàn)了兩個(gè)小數(shù)相加publicstaticdoubleAdd(doublex,doubley){returnx+y;}Add()方法中有兩個(gè)int型的參數(shù),返回值為int型Add()方法中有三個(gè)int型的參數(shù),返回值為int型Add()方法中有三個(gè)double型的參數(shù),返回值為double型方法的重載多學(xué)一招——快速判斷方法重載快速判斷方法重載:將方法名前面的修飾符、返回類(lèi)型以及方法體去掉。將方法參數(shù)列表中的參數(shù)名去掉。將兩個(gè)方法做比較,首先名稱(chēng)不相同一定不是重載方法,其次如果名稱(chēng)相同,其他部分不相同的構(gòu)成重載,相同的則不是重載的方法。

publicstaticintFunc(intnum){…} //方法1publicstaticboolFunc(intnum1,intnum2){…} //方法2publicstaticstringFunc(strings1,strings2){…} //方法3publicstaticstringFunc(strings2,strings1){…} //方法4 Func(intnum) //方法1 Func(intnum1,intnum2) //方法2 Func(strings1,strings2) //方法3 Func(strings2,strings1) //方法4

Func(int) //方法1 Func(int,int) //方法2 Func(string,string) //方法3 Func(string,string) //方法4

方法的重載方法的重載namespaceProgram19{classProgram{staticvoidMain(string[]args){Console.WriteLine("-2的絕對(duì)值={0}",Math.Abs(-2));

Console.WriteLine("-2的3次方={0}",Math.Pow(-2,3));

Console.WriteLine("sin(0°)={0}",Math.Sin(0));

Console.WriteLine("cos(0°)={0}",Math.Cos(0));

Console.ReadKey();}}}求0°的余弦值求-2的絕對(duì)值求-2的3次方求0°的正弦值07數(shù)組數(shù)組的定義數(shù)組的定義數(shù)組中的元素會(huì)被自動(dòng)賦予一個(gè)默認(rèn)值,根據(jù)元素類(lèi)型的不同,默認(rèn)初始化的值也是不同的。數(shù)組中元素的默認(rèn)初始化值:數(shù)據(jù)類(lèi)型默認(rèn)初始化值byte、short、int、long0float、double0.0char一個(gè)空字符,即’\u0000’boolfalse引用類(lèi)型null,表示變量不引用任何對(duì)象數(shù)組的定義數(shù)組的定義為了更好地理解數(shù)組的這種定義方式,我們將定義和賦值分開(kāi)來(lái)定義:int[]x; //聲明一個(gè)int[]類(lèi)型的變量xx=newint[100]; //創(chuàng)建一個(gè)長(zhǎng)度為100的數(shù)組

數(shù)組定義的內(nèi)存狀態(tài):聲明變量x的內(nèi)存狀態(tài):創(chuàng)建數(shù)組時(shí)的內(nèi)存狀態(tài):數(shù)組的定義數(shù)組的定義usingSystem;namespaceProgram22{classProgram{staticvoidMain(string[]args){int[]arr; arr=newint[3];Console.WriteLine("arr[0]="+arr[0]); //訪問(wèn)數(shù)組中的第一個(gè)元素Console.WriteLine("arr[1]="+arr[1]); //訪問(wèn)數(shù)組中的第二個(gè)元素Console.WriteLine("arr[2]="+arr[2]); //訪問(wèn)數(shù)組中的第三個(gè)元素Console.WriteLine("數(shù)組的長(zhǎng)度是:"+arr.Length);//打印數(shù)組長(zhǎng)度Console.ReadKey();}}}聲明int型數(shù)組變量arr創(chuàng)建數(shù)組對(duì)象通過(guò)Length屬性獲取數(shù)組的長(zhǎng)度數(shù)組的定義數(shù)組的定義數(shù)組是指一組數(shù)據(jù)的集合,數(shù)組中的每個(gè)數(shù)據(jù)被稱(chēng)作元素。在數(shù)組中可以存放任意類(lèi)型的元素,但同一個(gè)數(shù)組里存放的元素類(lèi)型必須一致。數(shù)組類(lèi)型:一維數(shù)組和多維數(shù)組。數(shù)組的定義:int[]數(shù)組名=newint[數(shù)組的長(zhǎng)度];

int[]數(shù)組名=newint[100];

定義一個(gè)長(zhǎng)度為

溫馨提示

  • 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)論