C#基本語(yǔ)法先說(shuō)說(shuō)變量的命名規(guī)則吧,,一個(gè)變量的名字如同人的名字一樣都用一定的意義,,例如定義鋼筆的價(jià)格: double x=12.3,和double pen_price=12.35,兩者相比顯然是第二種比較好,,讓人一看就直到是鋼筆的價(jià)格,。變量的名字可以由:字母,數(shù)字和下劃線組成,,但是不能以數(shù)字開頭,。 特別要注意的是:C#中有很多關(guān)鍵字; while case for if public等等,,這里不一一列出。這些字符就像古代帝王的忌諱,,是不能用作其他的用途,。而且在開發(fā)環(huán)境中,,它們的顏色是特別明顯,,下面看個(gè)例題: using System; using System.Collections.Generic; using System.Text; namespace ceshi { class Program //類名大寫開頭 { static void Hello() //方法,即自定義函數(shù) { Console.WriteLine("hello,everyone"); } //結(jié)束符一對(duì)大括號(hào)要匹配 static void Print_number(int[] a) { int x; for (x = 0; x < a.Length; x++) { Console.WriteLine(a[x]); } } static void Main(string[] args) { Hello(); int[] a ={ 1, 5, 7, 5, 3, 3, 44, 7 }; Print_number(a); Console.ReadKey(); string public="guanjianzi";//錯(cuò)誤所在,,盜用系統(tǒng)關(guān)鍵字 // 單行注釋 /* *多行注釋 */ } } } 錯(cuò)誤 1 應(yīng)輸入標(biāo)識(shí)符,,“public”是關(guān)鍵字 錯(cuò)誤 2 無(wú)效的表達(dá)式項(xiàng)“public” 。 方法和類名稱的定義: 方法的名字應(yīng)該要表達(dá)這個(gè)方法要完成的功能,,而且第一個(gè)字母要大寫:如方法: public void Print_number(int []),這樣就知道這個(gè)方法要完成的功能,。定義方法也是,方法的名字的第一個(gè)字母也要大寫,。 C#中,,每一行代碼都要有個(gè)結(jié)束符——“;”,而且是英文輸入的,,中文輸入的分號(hào)會(huì)出現(xiàn)錯(cuò)誤,。 方法的定義: static void Print_number { 方法體代碼 } 類的定義: public class Full { public : string names; ………………. private Method1() {} private Method2() { } ………………….. } 其中,系統(tǒng)會(huì)自動(dòng)對(duì)齊大括號(hào),,另外就是代碼中的注釋,,這個(gè)很重要,如果沒有注釋的話,,你寫的代碼就沒有其他的人懂,,別人和自己閱讀起來(lái)很吃力的。 單行和多行的注釋方法都在上面的程序中標(biāo)出來(lái)了,,請(qǐng)讀者自己編程體會(huì),。
C#的基本運(yùn)算一. 數(shù)學(xué)運(yùn)算 一元的包括:+,-,,++和--,。 如:int x=10; int x1=+x;int x2=-x;那么x1=10;x2=-10. 這兩個(gè)運(yùn)算比較簡(jiǎn)單。二元運(yùn)算:加,、減,、乘,除,,取余,、,對(duì)應(yīng)的符號(hào)是+,,-,,*,,/和%;其中前面4個(gè)我不想多說(shuō),,小學(xué)就學(xué)過(guò),,基本上是:變量1=變量2(加減乘除)變量3的模式;主要學(xué)習(xí)取余運(yùn)算,。例如:x=42%10;結(jié)果x=2,,其實(shí)取余運(yùn)算和數(shù)學(xué)上是取模的原理是一樣的,就是第一個(gè)數(shù)字除以第二個(gè)數(shù)字得到的余數(shù),。int y=81%9;那么y=0;這樣的運(yùn)算在小學(xué)就回,,這里提問(wèn)的方法不一樣。 另外加號(hào)+在字符串中的可以當(dāng)作兩個(gè)字符串合并,。請(qǐng)看下面的例子: string str1 = "hello"; string str2 = "你好"; string str3 = str1 + str2; Console.WriteLine("str1={0}",str1); Console.WriteLine("str2={0}",str2); Console.WriteLine("str3=str1+str2:{0}",str3); Console.ReadKey();程序的其他部分省了,。 其輸出結(jié)果是: 自增和自減運(yùn)算:++,-- 這兩個(gè)運(yùn)算在后面的循環(huán)中有很大的作用,,++的作用是自己的值+1,,--就是自減1.但在賦值運(yùn)算的過(guò)程 int a=10; 那么:int b=++a;int c=a++;結(jié)果b和c是不相等的。 int a = 10; int a1=a; int b = ++a; int c = a++; Console.WriteLine("a原來(lái)的值a1{0}",a1); Console.WriteLine("a后來(lái)的值{0}", a); Console.WriteLine("b=++a{0}", b); Console.WriteLine("c=a++{0}", c); 輸出的結(jié)果是: 解釋:在b=++a這里,,先是a自加+再賦給b;同時(shí)用 a1=a;來(lái)保存a原來(lái)的值,。 此后經(jīng)過(guò)a=a1;a的值又變成10;c=a++;這里a先將值賦給c再自增1. 同樣++運(yùn)算也是一樣的,??傊绻?+或者—在前面,,那么就是先自增或者自減,,再賦值,如果++和—在后面則是先賦值再自增自減,。 二. 賦值運(yùn)算符號(hào) 主要運(yùn)算包括:=(賦值),,+=,-=,,*=,,/=,%=,。 賦值=運(yùn)算很簡(jiǎn)單,,基本是把兩個(gè)類型一樣的變量的一個(gè)的值賦給另一個(gè)。 int x = 0; int y; y = x;剩下的四個(gè)運(yùn)算原理都是一樣的,,如下面的例題所示: int x1, x2, x3; x1 = 11; x2 = 12; x3 = x1; x1 += x2;//x1=x1+x2; x2 -= x3;//x2=x2-x3;和x2=x2-x1;一樣 Console.WriteLine("x1原來(lái)的值是{0}",x3); Console.WriteLine("x1+=x2后x1的值{0}",x1); Console.WriteLine("x2-=x1后x2的值{0}",x2); Console.ReadKey(); 結(jié)果是: 再看*=; int x1, x2, x3; x1 = 11; x2 = 33; x3 = x1; x1 *= x2;//x1=x1*x2; x2 /= x3;//x2=x2/x3;和x2=x2-x1;一樣 Console.WriteLine("x1原來(lái)的值是{0}",x3); Console.WriteLine("x1*=x2后x1的值{0}",x1); Console.WriteLine("x2/=x1后x2的值{0}",x2); 輸出的結(jié)果是: 剩下的結(jié)果請(qǐng)讀者自己編程體會(huì),。 這里要說(shuō)明的一個(gè)地方是:Console.WriteLine("x1*=x2后x1的值{0}",x1);中的{0},這個(gè)是使用指定的格式輸出,請(qǐng)看: Console.WriteLine("x1的值是{0},x2的值是{1},,x3的值是{2} ",x1,x2,x3);結(jié)果是: 一. 布爾邏輯運(yùn)算 我們知道bool 類型的變量只有倆個(gè)值,,true和false;在數(shù)學(xué)上表示1和0。很多時(shí)候要判斷當(dāng)某個(gè)條件是否成立才能繼續(xù)執(zhí)行,,這樣就是條件表達(dá)式為真-true; 布爾運(yùn)算符主要有:==(等于),,!=(不等),>=(大于等于),<=(小于等于),>(大于),<(小于),。運(yùn)算示范如下:
bool flag; flag=(var1==var2);以上面的數(shù)據(jù)來(lái)算,,flag=false;其他的一次類推、在運(yùn)算過(guò)程中,,可以現(xiàn)定義bool類型的變量,,也可以直接實(shí)用,,要看情況而定,。同時(shí)要注意運(yùn)算符兩邊的變量類型要一致。 二,、下面介紹幾個(gè)邏輯運(yùn)算:&,|,!,^,&&,||. 介紹下:&是與運(yùn)算,,|是或運(yùn)算,!是非,,^異或運(yùn)算,。 它們的運(yùn)算法則如下所示: &運(yùn)算法則如下所示:var3=var1&var2
|,或運(yùn)算法則如下表:
!,,取非運(yùn)算,,這個(gè)更簡(jiǎn)單,true的!就是false,false的!ture; bool var1,var2;var1=true;var2=!var1;那么var2就等于false; ^,,異或運(yùn)算的原理也比較簡(jiǎn)單,,兩個(gè)變量只要它們的值是一樣的,它們?nèi)‘惢虻慕Y(jié)果就是false,,若一個(gè)false,一個(gè)true,,那么它們異或的結(jié)果就是true; 同時(shí)介紹下在循環(huán)條件等情況下很常見的&&,||運(yùn)算。這兩個(gè)與&,|的運(yùn)算法則是一樣的,,前面的兩個(gè)運(yùn)算性能較好,,&&運(yùn)算中只要第一個(gè)變量是false,其結(jié)果就是false,后面的不用管了,同理,,||運(yùn)算只要第一個(gè)變量是true,,那么其結(jié)果就是true,這與&和|不一樣,后兩個(gè)運(yùn)算要所有運(yùn)算變量都經(jīng)過(guò)運(yùn)算,。本文發(fā)表于編程入門網(wǎng):www.bianceng.cn 三,、位的運(yùn)算符 位的邏輯運(yùn)算符包括:與&,或|,異或^和非! 與的運(yùn)算是:將兩個(gè)操作數(shù)的二進(jìn)制位對(duì)應(yīng)位進(jìn)行與運(yùn)算 例如:int p1=10;int p2=7; P1的二進(jìn)制表示:1010 P2的二進(jìn)制表示:0111;兩者與運(yùn)算是:0010:即:2; 或運(yùn)算:操作數(shù)的二進(jìn)制對(duì)應(yīng)位進(jìn)行或運(yùn)算:1111:即:15,; 異或:結(jié)果:1101:13,; P1的非:0101:5。 位移運(yùn)算:右移>>,,左移<< Var1=var2<<var3;表示var2左移var3個(gè)位數(shù) Var2=5;var3=2,;具體過(guò)程是:0101—>010100:得到20; 四,、位運(yùn)算和邏輯運(yùn)算的賦值運(yùn)算 操作數(shù):op1,op2
以上的操作請(qǐng)各位讀者自己編程體會(huì),。 到此,C#的各種運(yùn)算基本上介紹完了,,但是如果一個(gè)表達(dá)式有多個(gè)操作符,,那么不同的操作符的優(yōu)先權(quán)來(lái)決定誰(shuí)先執(zhí)行,同時(shí)在操作的時(shí)候是從左邊向右邊執(zhí)行,。各種操作符的優(yōu)先權(quán)高低如下表所示:
同時(shí)還有一個(gè)三目運(yùn)算:表達(dá)式,?a:b; 舉例說(shuō)明:int x=4>5? 4 :5; 意思就是:4>5? 是否成立,,如果成立那么x=4,否則x=5; 此后開始正式進(jìn)入C#的學(xué)習(xí)了,下節(jié)開始學(xué)習(xí)條件語(yǔ)句if和循環(huán)語(yǔ)句 for each,、for和while,。 C#的分支語(yǔ)句一,if語(yǔ)句 語(yǔ)句形式: if(表達(dá)式) { <code><code>執(zhí)行的語(yǔ)句 } 只有當(dāng)表達(dá)式的值是真或者非0時(shí),{}里的語(yǔ)句才會(huì)被執(zhí)行;if-else是一對(duì)的,但是有時(shí)候只有if而沒有else.先看個(gè)例子吧;
從結(jié)果可以看出來(lái),雖然有那么多if分支,但是只有滿足條件的才會(huì)執(zhí)行,if語(yǔ)句可以包括嵌套,就是在if下面還有個(gè)if,在上面的例題中可以看出來(lái). if語(yǔ)句處理兩個(gè)分支,處理多個(gè)分支時(shí)需使用if-else-if結(jié)構(gòu),但如果分支較多,則嵌套的if語(yǔ)句層就越多,程序不但龐大而且理解也比較困難。本文發(fā)表于編程入門網(wǎng):www.bianceng.cn 二.switch-case switch-case 的基本用法如下:
當(dāng)然day可以換成字符串性質(zhì),那么在case處也要匹配一些字符串常量.
C#的循環(huán)語(yǔ)句循環(huán)就是重復(fù)執(zhí)行一些語(yǔ)句來(lái)達(dá)到一定的目的,這個(gè)技術(shù)用起來(lái)很好,只要設(shè)定好參數(shù),同樣的代碼可以執(zhí)行成千上萬(wàn)次,.C#中的循環(huán)方法有幾種:for, while,do-while 和for each.,在這里我們依次學(xué)習(xí)這些循環(huán)語(yǔ)句. 一. for循環(huán) for(參數(shù)初始值;表達(dá)式是否成立;參數(shù)變化) { 執(zhí)行循環(huán)語(yǔ)句 } 先看個(gè)例子;循環(huán)計(jì)數(shù)器設(shè)為count;
x控制循環(huán)次數(shù),執(zhí)行過(guò)程如下, 初始值是1,再判斷x<=7是否成立 如果成立則輸出(str);在x++; 到此第一次循環(huán)結(jié)束.然后又判斷 x<=7.如果成立就執(zhí)行循環(huán)語(yǔ)句, 當(dāng)循環(huán)到x=8時(shí),x <= 7不成立,循環(huán)結(jié)束了 同時(shí)也可以for循環(huán)可以寫成其他的形式:
二. while和do-while
其中兩者的區(qū)別是do-while主要先執(zhí)行一次在判斷表達(dá)式是否成立,while循環(huán)是先看計(jì)數(shù)器表達(dá)式是否成立.若成立則執(zhí)行循環(huán),否則循環(huán)結(jié)束,計(jì)數(shù)器的變化和初始化很重要,如果在循環(huán)體中沒有中斷語(yǔ)句,跳出循環(huán),否則是無(wú)窮循環(huán).. 下面先看兩個(gè)例子:
三. foreach 其實(shí)foreach的實(shí)用方法是foreach( type1 op1 in type1集合) 先看個(gè)例子:
到此循環(huán)語(yǔ)言的基本用法都介紹了,,就剩下跳出循環(huán)的return,break,continue沒有介紹了,在以后再介紹,。 |
|