C#編程基礎(chǔ) (2)_第1頁
C#編程基礎(chǔ) (2)_第2頁
C#編程基礎(chǔ) (2)_第3頁
C#編程基礎(chǔ) (2)_第4頁
C#編程基礎(chǔ) (2)_第5頁
已閱讀5頁,還剩15頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、北京傳智播客教育 C#C#編程基礎(chǔ)編程基礎(chǔ)講師:楊中科講師:楊中科.Net開發(fā)環(huán)境(*了解).Net FrameworkC#VB.NetF#開發(fā)工具:Visual StudioC SharpIronPython使用.Net開發(fā)的程序必須運(yùn)行在安裝了.Net的機(jī)器上。 .Net的各個(gè)版本;.Net向下兼容的實(shí)現(xiàn)。第一個(gè)C#程序 創(chuàng)建第一個(gè)控制臺(tái)程序并且調(diào)試運(yùn)行。 為什么要從控制臺(tái)程序開始?不要把精力放到表現(xiàn)層,而是把精力放到寫代碼上。無論控制臺(tái)還是Winform還是ASP.Net最難的是寫代碼,而不是拖控件。 唯一需要學(xué)的三條控制臺(tái)指令:Console.WriteLine:打印輸出、Consol

2、e.ReadLine:從控制臺(tái)讀入一行、Console.ReadKey:控制臺(tái)暫停。至于Console.是什么意思不用管。1+1=2的例子 占位符是個(gè)什么玩意兒?0的個(gè)數(shù)必須和參數(shù)的個(gè)數(shù)一樣,是一一對(duì)應(yīng)的關(guān)系。序號(hào)從0開始在后面學(xué)習(xí)String.Format的時(shí)候還會(huì)用到這個(gè)類。VS開發(fā)環(huán)境介紹 解決方案管理器:解決方案、工程、文件 拖動(dòng)視圖、關(guān)閉/打開視圖、重置窗口布局 C#源文件一般以cs結(jié)尾。即使沒有VS也能用記事本打開 C#程序的入口是Main函數(shù),在Main中寫代碼就行,暫時(shí)不用關(guān)心其他部分是什么意思 錯(cuò)誤列表。見到編譯錯(cuò)誤不用慌。錯(cuò)誤排除演示。常見錯(cuò)誤:結(jié)尾沒有分號(hào),大小寫錯(cuò)誤。

3、顯示代碼行號(hào)。工具選項(xiàng)文本編輯器C#顯示行號(hào) 修改文本編輯器字體。VS開發(fā)環(huán)境介紹2 設(shè)置啟動(dòng)項(xiàng)目,將當(dāng)前項(xiàng)目自動(dòng)設(shè)置為啟動(dòng)項(xiàng)目,如果運(yùn)行結(jié)果很奇怪,看看是不是沒有設(shè)置啟動(dòng)項(xiàng)目。 一個(gè)解決方案包含多個(gè)項(xiàng)目,同時(shí)只能打開一個(gè)解決方案;在解決方案上點(diǎn)擊右鍵屬性啟動(dòng)項(xiàng)目,“當(dāng)前選定內(nèi)容”是把當(dāng)前編輯器所在的項(xiàng)目為啟動(dòng)項(xiàng)目,但啟動(dòng)項(xiàng)目就是右鍵設(shè)定啟動(dòng)項(xiàng)目設(shè)置的,多啟動(dòng)項(xiàng)目可以讓多個(gè)項(xiàng)目同時(shí)啟動(dòng),適合于開發(fā)客戶端、服務(wù)器的程序C#語法 從上到下一條條的依次執(zhí)行。過去的就讓他過去吧,不會(huì)返回頭執(zhí)行:int i1=3;int i2=5;int i3=i1+i2;i1=9;。 大小寫敏感。String和str

4、ing 都行是另外一個(gè)問題。 函數(shù)參數(shù)用()包圍。錯(cuò)誤:string s2 = Console.ReadLine; Console.WriteLine=3,區(qū)分方法和屬性,看圖標(biāo)顏色。 兩句代碼之間用分號(hào)(;)分割(易錯(cuò):全角問題) 注釋:?jiǎn)涡凶⑨?、多行注釋。批量注釋、反注釋。用VisualStudio的批量反注釋:快捷鍵、工具欄圖標(biāo)兩種方式。變量把變量看成放數(shù)據(jù)的容器。定義變量的方式:類型 變量名; int i3;變量只是容器,必須放進(jìn)去值才有意義,否則就是一個(gè)“杯具”。string s1=null和string s1不一樣。變量的類型:不同類型的容器放不同的東西。不能在int類型的變量中放

5、字符串。變量不能放和變量類型不兼容的數(shù)據(jù)。變量的名字不能重名(不嚴(yán)格) /int i3 = 33;/定義一個(gè)變量i3,賦值為33 i3 = 33;/為已有變量i3賦值為33 變量只能聲明一次,但是可以多次使用。 int i1=5;int i1=6;不可以。但是int i1=5;i1=6;是 可以的。問題 int i=10;Console.WriteLine(i); Console.WriteLine(i);常用基本數(shù)據(jù)類型string、int 、char 、bool long等。bool的取值:true、的表示范圍。long有多l(xiāng)ong為什么輸出要用轉(zhuǎn)義符,因?yàn)榫幾g器默認(rèn)是遇

6、到開始字符串,再遇到是結(jié)束字符串,但是如果遇到前面有的就不把它當(dāng)成有字符串起始意義的。表示不要把后的當(dāng)成字符串的開始或者結(jié)尾為什么要有轉(zhuǎn)義符,就是要在程序中輸出回車等特殊的字符,不能直接在字符串中打回車,所以必須轉(zhuǎn)移。n回車。string:ab、abnb、c:a.txt、c:a.txt(推薦)。表示字符串中的不當(dāng)成轉(zhuǎn)義符。還可以定義多行文本。一命償一命中是告訴編譯器不要把這個(gè)當(dāng)成字符串的結(jié)束。是不把當(dāng)成轉(zhuǎn)義符。不是萬能的,不能解決字符串中有雙引號(hào)的問題,如果有雙引號(hào)還是用轉(zhuǎn)義符a是char,“a”是string。string s = Console.ReadLine();難點(diǎn):?jiǎn)栴}:Strin

7、g str=Console.ReadLine();Console.WriteLine(str);用戶輸入anb,輸出什么?轉(zhuǎn)義符只針對(duì)在代碼中直接寫出的字符串,對(duì)于程序中讀取出來沒有這個(gè)問題。n是給編譯器看的。把“河蟹”翻譯成“和諧”簡(jiǎn)單的類型轉(zhuǎn)換:Convert.ToString()、ToString()、Convert.ToInt32() 。即可用中間變量,也可以不用。int i = Convert.ToInt32(Console.ReadLine();變量的命名命名規(guī)則:第一個(gè)字符必須是字母或者下劃線(_),其后的字符可以是任意個(gè)數(shù)字、字母、下劃線。不能全部使用C#的關(guān)鍵字,比如clas

8、s、namespace、new、void等。判斷方式:VS中亮藍(lán)色的就是關(guān)鍵字。這也是類、函數(shù)等的命名規(guī)則。還可以使用中文變量名(類名、函數(shù)名),不推薦。潛規(guī)則:C#中建議變量的開頭用小寫。專業(yè)的程序員一定要注意大小寫的問題!和“命名規(guī)則”不一樣不是強(qiáng)制性的規(guī)定 變量在聲明后才能使用變量的聲明:int i;int x,y;int i=3;變量使用之前必須賦值。運(yùn)算符、表達(dá)式 +、-、*(乘)、/(除)、%(求余) +可以用作字符串連接,其他不可以。 +(自增)、-(自減) (*)運(yùn)算符優(yōu)先級(jí):i1+i2*i3、(i1+i2)*i3。不要變態(tài),括號(hào)是王道。 變量可以和字面量混合運(yùn)算。 練習(xí):讓用

9、戶輸入兩個(gè)數(shù),打印出兩個(gè)數(shù)的和。賦值賦值運(yùn)算符=,讓左邊變量的值等于右邊的計(jì)算結(jié)果。這就能解釋令人不解的i=i+1;(*)+=、-=、*=、/=。i2=i1+;i2=+i1;(了解)。-同理。習(xí)題:int a=10;a+;a=a+a;Console.WriteLine(0,a);執(zhí)行結(jié)果是什么?int i=10;int j=i;i=5;j=?int x=10;x+y=80;Console.WriteLine(y); x + y = 80; /左邊的必須是變量!不能是常量,不能是表達(dá)式習(xí)題(重點(diǎn),難點(diǎn)):交換兩個(gè)變量的值。易錯(cuò)!布爾運(yùn)算相等判斷:=,不要和=混淆。WriteLine(0,i=1)

10、;WriteLine(0,i=1);的區(qū)別。Console.WriteLine(0,i=1);/C#中賦值表達(dá)式也有值,它的值表示為賦值后變量的值不等判斷:!=大小比較:、=取反:!組合運(yùn)算:&(并且)、|(或者)。 & 并且:只有兩邊都為true的時(shí)候,表達(dá)式的值才為true,否則是false; |或者:兩邊只要有一個(gè)為true的時(shí)候,表達(dá)式的值就是true,否則是false; &、|是短路運(yùn)算,試驗(yàn)。ifif(i1)if(i1)elseif(i100)else if(i100|i100&j10)if(i0&j0)|(i0&j10); Cons

11、ole.WriteLine(是);課上練習(xí)學(xué)編程不是看書,不是聽老師講,而是自己動(dòng)手寫。作業(yè)1:提示用戶輸入密碼,如果密碼是“888888”則提示正確,否則提示錯(cuò)誤。作業(yè)2:提示用戶輸入密碼,如果密碼是“888888”則提示正確,否則要求再輸入一次,如果密碼是“888888”則提示正確,否則提示錯(cuò)誤。作業(yè)3:提示用戶輸入用戶名,然后再提示輸入密碼,如果用戶名是“admin”并且密碼是“888888”,則提示正確,否則提示錯(cuò)誤,如果用戶名不是admin還提示用戶用戶名不存在。注意:變量命名要用有意義的變量名,不要x、y、z。switch case類似于if.else.else if.else,但

12、是是離散值的判斷。switch一般都可以用if重寫,但是if不一定能用switch重寫不要忘了break。C#中的break不寫是不行的,除了合并case的情況switch(i)case 1:/break;case 2:/break;switch(i)case 1:/break;case 2:/break;default:break;case中的值必須是常量,不能是變量、表達(dá)式。switch(i)case a:/break;switch(i)case 1:case 2:/break;被判定的值進(jìn)入滿足條件的分支執(zhí)行while循環(huán)while(i100) /打印i i+;只要while后小括號(hào)中的

13、表達(dá)式為true,就不斷執(zhí)行大括號(hào)中的代碼while(不是終點(diǎn)) 跑do /打印i i+;while(i100)先做如果滿足則再來一次,直至while表達(dá)式為false。至少被執(zhí)行一次。(*)易錯(cuò)while(i0);練習(xí)1:用while計(jì)算1到100之間整數(shù)的和;(有更好的數(shù)學(xué)解法)練習(xí)2:要求用戶輸入用戶名和密碼,只要不是admin、888888就一直提示要求重新輸入。練習(xí)3:不斷要求用戶輸入一個(gè)數(shù)字,然后打印這個(gè)數(shù)字的二倍,當(dāng)用戶輸入q的時(shí)候程序退出(return)。練習(xí)4:不斷要求用戶輸入一個(gè)數(shù)字(假定用戶輸入的都是正整數(shù)),當(dāng)用戶輸入end的時(shí)候顯示剛才輸入的數(shù)字中的最大值。設(shè)一個(gè)變量

14、int max,初始值為0,用戶每輸入一次就把用戶輸入的和max比較一下,如果輸入的比max大,則讓max等于用戶輸入。陷阱:判斷end是在之前還是之后。循環(huán)的中斷break:立即終止整個(gè)循環(huán)。continue:立即終止當(dāng)前循環(huán)步驟,進(jìn)行下一次循環(huán)步驟。練習(xí)1:用 while continue實(shí)現(xiàn)計(jì)算1到100之間的除了能被7整除之外所有整數(shù)的和。練習(xí)2:用while break實(shí)現(xiàn)要求用戶輸入用戶名和密碼,只要不是admin、888888就一直提示要求重新輸入。returnfor循環(huán)for(code1;code2;code3)。code1:循環(huán)的初始化代碼,只在循環(huán)開始之前運(yùn)行一次;code

15、2,bool類型的表達(dá)式,每次循環(huán)完成前都判斷一下是否為true,只有為true才會(huì)進(jìn)行本次循環(huán);code3在每次循環(huán)之后執(zhí)行一次。for的三段都可以省略,但是不能丟了“;”。break、continue同樣可以應(yīng)用于for。for和while代碼之間都可以互相轉(zhuǎn)換,究竟用哪種方式則取決于一些慣用用法和個(gè)人習(xí)慣,不用記,代碼寫多了自然就有感覺for(int i=0;i0;i-)for中終止條件注意是還是=。只要想好了想要的最后一個(gè)數(shù)是什么、第一個(gè)數(shù)是什么即可用 for實(shí)現(xiàn)計(jì)算1到100之間所有整數(shù)的和。用 for實(shí)現(xiàn)計(jì)算200到300之間所有整數(shù)的和。枚舉確定數(shù)量、確定值的幾個(gè)取值:東西南北、

16、男女、上中下。enum Gendermale,femaleenum QQStatusonline,offline,hidden枚舉的用法,QQStatus status = QQStatus.online;和用字符串比起來,用枚舉的好處就是限定了變量的取值范圍,程序處理起來更方便。數(shù)組保存多個(gè)值。幾乎任意類型都可以聲明數(shù)組。int nums = 5,3,8int nums = new int3int nums = new int35,3,8/個(gè)數(shù)和聲明數(shù)必須一致int nums = new int55,3,8/錯(cuò)誤使用索引器訪問指定編號(hào)位置的元素,訪問數(shù)組元素:nums0、nums1。索引從0開始。取到的元素的類型就是數(shù)組元素的類型。還可以對(duì)數(shù)組元素進(jìn)行賦值練習(xí)1:從一個(gè)整數(shù)數(shù)組中取出最大的整數(shù)練習(xí)2:計(jì)算一個(gè)整數(shù)數(shù)組的所有元素的和。練習(xí)6:將一個(gè)字符串?dāng)?shù)組的元素的順序進(jìn)行反轉(zhuǎn)。3,a,8

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論