C#基礎學習筆記

1、三個///叫文檔註釋,用於對類和方法進行註釋的


2、#region和#endregion配合使用可以摺疊一段代碼,選中要摺疊的代碼,然後用快捷鍵Ctrl+k,s


3、在c#開發環境中,直接寫一個有小數點的數字,這個數字是double類型的。在一個小數後面加一個m/M,就告訴編譯器,
   這個數字是decimal類型的數。

4、c#變量命名編碼規範--Camel(駱駝)命名法:首個單詞的首字母小寫,其餘單詞的首字母大寫。在方法中用Camel命名法。
   Pascal命名規範:每一個單詞首字母都大寫。定義全局變量。如果使用到英文單詞的縮寫,全部用大寫如PI。
   
5、"+"在c#中有兩種意義:1)是數學上的加法運算:兩邊參與運算的數據類型是數字類型;
2)是連接的意思:兩邊參與加號運算的數據有一個是字符類型,那麼這個"+"就是連接的意義
6、c#中一個\+一個特殊字符組成轉義字符例如:\n(回車),\t(tab)有多個空格組成的一個字符,具有行與行的對齊功能。
\b(backspace) \\表示一個\ \"輸出"    \'輸出'

7、在字符串前面加@符號有兩個意義:1)字符串中有轉義符\時不再理解爲轉義符。2)使字符串可以換行。


->練習1:讓用戶輸入姓名,語文/數學/英語成績,求總分和平均分並在屏 幕上輸出xx的總成績是xx,平均分是xx。


->練習2:編程實現幾天(46)是幾周零幾天。


->練習3:編程實現107653秒是幾天幾小時幾分鐘幾秒。


->練習4:讓用戶輸入張三的語文和數學成績判斷下面情況是否正確,正確 輸出True,錯誤輸出False
1)語文和數學成績都大於90分 
2)語文和數學有一門大於90分

->練習5:判斷閏年。


8、邏輯運算符的短路問題。
   int a=10,b=5; 
   bool result = ++a > 50 && ++b > 1;
   Console.WriteLine("a={0},b={1}",a,b);
   ++a > 50表達式的值爲False,可以直接得出整個表達式的值爲False
   所以執行完表達式++a > 50後就不再執行++b > 1表達式,所以輸出的   結果是:a = 11, b = 5;
   
->練習1:讓用戶輸入年齡,如果年齡大於18歲,則給用戶顯示你已成年。


->練習2:讓用戶輸入用戶名和密碼,如果用戶名是admin,密碼是mypass,則提示登錄成功。


->練習3:提示用戶輸入用戶名,然後在提示用戶輸入密碼,如果用戶名是admin,並且密碼是888888,則提示正確,
否則如果用戶名不是admin還提示用戶名不存在,如果用戶名是admin則提示密碼錯誤。
 
->練習4:用戶輸入年份,輸入月份,輸出該月的天數。


->練習5:打印100次“歡迎您來傳智博客學習”。


->練習6:輸入班級人數,然後依次輸入學員的成績,最後顯示學員的平均成績和總成績。


->練習7:老師問學生這道題你會做了嗎?如果學生回答會了(y),則可以放學,如果學生不會做(n),則老師再講一遍,
再問學生會做了嗎......直到學生會了或者老師講了10遍都放學。
 
->練習8:2006年培養學員8萬人,每年增長25%,請問按此增長速度,到哪一年培訓學員人數將達到20萬人。


->練習9:要求用戶輸入用戶名和密碼,只要不是admin和888888,就一直提示用戶名或者密碼錯誤,請重新輸入。


->練習10:不斷要求用戶輸入學生姓名,輸入q結束。


->練習1:不斷要求用戶輸入一個數字,然後打印這個數字的2倍,當用戶輸入q的時候程序退出。


->練習2:不斷要求用戶輸入一個數字,當用戶輸入end的時候顯示剛纔輸入數字的最大值。


->練習3:求1--100間所有偶數的和。


->練習4:找出100--999間的所有水仙花數。


->練習5:打印九九乘法表。


9、枚舉類型。定義:enum 自己起的類型名字 {值1,值2,值3,...值n}
枚舉的定義一般和類的定義在同一個級別,這樣在同一個命名空間下的所有類都可以使用這個枚舉了。
定義枚舉時的值不能是int類型。所有的枚舉類型的值都可以強制轉換成int類型。
枚舉的值在定義的時候是有一個默認的編號的,編號從0開始。
如何把一個字符串轉換爲枚舉類型:自枚:自己定義的枚舉類型。
(自枚)(Enum.Parse(typeof(自枚),"待轉換字符串"))

10、結構。結構的定義:訪問修飾符 struct 結構名 {定義結構成員},結構中定義結構成員要加public修飾符。
 定義好結構後就可以聲明變量了,聲明好變量後,通過 變量名.成員名,來訪問結構的成員。
 
->練習1:定義一個結構叫MyColor,有三個成員分別爲red,green,blue  聲明一個MyColor類型的變量並對其成員賦值,
使MyColor可以表示成一個紅色。
 
->練習2:定義一個結構類型Person有三個成員,分別爲姓名,性別,年齡.聲明兩個Person類型的變量分別表示 
張三 男 18歲|小蘭 女 16歲。
 
11、int類型的數組一旦聲明,裏面的所有元素會被初始化爲0. string類型的數組定義的時候不會被初始化。所以使用前要先賦值。
Console.Clear();清屏函數

->練習1:從一個整數數組中取出最大的整數。


->練習2:計算一個整數數組所有元素的和。


->練習3:將一個字符串數組輸出爲|分割的形式,比如"梅西|卡卡|大世"。


->練習4:將一個整數數組的每一個元素做如下處理,如果元素是正數則將這個元素的值加1,如果元素是負數則將這個位置的元素
的值減1,如果元素的值是0,不處理。
 
->練習5:將一個字符串數組元素的順序進行反轉。{"3","a","8","haha"}{"haha","8","a","3"}


12、方法。功能:用來複用代碼的.當我們在一個程序中寫了同樣的代碼.那麼一般情況下,我們可以把需要重複寫的代碼
 定義在一個方法中,用的時候調用就可以了。
->方法的定義:[訪問修飾符][static]返回值類型 方法名(參數){方法體}
1)方法一般要定義在類中。2)如果方法沒有返回值,則返回值類型寫void

->命名規則:方法名開頭大寫,參數名開頭小寫,方法名、變量名要有意義

->方法的調用:
如果是靜態方法(由static修飾)則使用類名.方法名();在類中調用自己的方法可以只寫方法名()。
return:立即退出所在的方法。

12、在方法中定義的變量稱爲局部變量。作用域是從定義開始到其所在的大括號結束爲止。


->練習1:寫一個方法判斷一個年份是否是閏年bool LeapYear()。


->練習2:寫一個方法求兩個整數中最大值int Max(int x,int y)。


->練習3:寫一個方法求整數數組中元素的最大值int Max(int[] values)。


->練習4:寫一個方法計算數組的和int Sum(int[] values)。


13、字段:一個變量一旦定義在方法的外面,類的裏面,就叫做類的字段。這個變量就可以被本類的所有方法訪問。
 注意:靜態方法只能訪問靜態字段,非靜態方法(實例方法)既可以訪問靜態字段又可以訪問非靜態(實例)字段。
 方法不管是不是靜態都可以訪問常量,const修飾的常量不能聲明爲靜態的。
 
14、方法只能返回一個值,如果想要方法返回多個值怎麼辦?這就要用到參數反值了。方法中的out參數和ref參數。
在方法的參數前加out,那麼在調用該方法的時候所傳的參數也要加out,out修飾的參數不是用來向方法傳入值得,
而是用來向方法外傳出值的。如果參數是以out形式傳入的,那麼在傳入前可以不賦初值,在方法中對於由out修飾的參數,
必須先賦值,才能使用。例如int.TryParse(string s,out int result)。out注重傳出值  ref是用於雙向傳值類似於
c語言中的指針,一旦參數中。

->練習1:寫一個方法MyTryParse()方法,要求用戶傳入一個字符串,如果轉換成功,則返回true,
並且轉換後的int類型的數據通過方法的參數傳出,如果字符串不能轉換成int類型數據,則返回false,
那麼out傳出的參數就沒意義了,隨便賦一個值就行了。
 
->練習2:寫一個方法計算整型數組中的每個元素的總和,最大值,最小值


->練習3:重複讓用戶輸入一個數,判斷是否是質數,輸入q結束,判斷質數寫一個方法實現。


->練習4:將一個字符數組輸出爲|分割的形式,比如"梅西|卡卡|鄭大世"(用方法實現)。


->練習5:用方法實現找出一個int類型數組中最大值和最小值功能。


->練習1:提示用戶輸入用戶名,然後再提示輸入密碼,如果用戶名是“admin”並且密碼是“888888”,則提示正確,
否則提示錯誤,如果用戶名不是admin還提示用戶用戶名不存在。


->練習2:提示用戶輸入年齡,如果大於等於18,則告知用戶可以查看,如果小於10歲,則告知不允許查看,如果大於等於10歲,
則提示用戶是否繼續查看(yes、no),如果輸入的是yes則提示用戶可以查看,否則提示不可以查看.(給出測試用例)


->練習3:從一個整數數組中取出最大的整數


->練習4:計算一個整數數組的所有元素的和。


->練習5:將一個字符串數組輸出爲|分割的形式,比如{“浮雲”,”神馬”,”穿梭”}數組輸出爲“浮雲|神馬|穿梭”。
不要使用String.Join等.Net內置方法。


->練習6:有一個整數數組,請聲明一個字符串數組,將整數數組中的每一個元素的值轉換爲字符串保存到字符串數組中。


->練習7:將一個字符串數組的元素的順序進行反轉。{"3","a","8","haha"} 轉換爲{"haha","8","a","3"}。
提示:第i個和第length-i-1個進行交換。


->練習8:將一個整數數組排序後輸出。使用冒泡排序和選擇排序法。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章