using system;
using system.collections.generic;
using system.linq;
using system.text;
using system.threading.tasks;
//引用命名空間
namespace _2._1csharp程式結構
}}//命名空間或者專案名稱
.sln:解決方案檔案
.csproj:專案檔案
.cs:類檔案
解決方案檔案和專案檔案以及類檔案之間的關係?##
1.命名空間
2.是.net中提**用程式**容器的方式,這樣就可以唯一地標識**及其內容。
3.在c#中,建立命名空間的關鍵子是namespace,在vc中建立控制台應用程式時會自動加入命名空間,格式是以namespace空間名稱。命名空間是以「層」形式存在的,如有多層,則以「.」分開。
識別符號是程式人員為常量,變數,資料型別,方法,函式,屬性,類,程式等定義的名稱。
例如定義乙個字串變數:string username;
關鍵字對與c#編譯器而言,具有特定含義的名稱,比如程式中的using,clss,static,void都屬於關鍵字。如果錯誤地將關鍵字用作識別符號,編譯器會產生乙個錯誤,我們馬上就會知道出錯了,所以不必擔心
只能有大寫字母,小寫字母,數字和下劃線-組成
必須以字母或者下劃線開頭
c語言是區分大小寫的,username與username是不同的識別符號
如果c#關鍵字作為識別符號就在識別符號錢加上@
識別符號的命名最好辨認(可用英文)
編制**規範良好的程式編寫規範,不僅可以提高**的可讀性,而且可以提高團隊的合作效率。
正如寫文章一樣,分為若干個自然段,每段開頭空兩個。細想一下,如不分段,文章也不會影響其表達的意思,那麼分段的原因是讓讀者能夠有條有理地去看文章
編制**規範
建議使用系統的預設設定,同時,需要注意一下幾點:
1.注意養成不丟大括號的習慣。
例如在使用if語句時,如語句不多於一行,可以不使用大括號。
2.同時定義多個型別時,最好分開定義。
3.每一條語句寫成一行,也就是遇到「:」就換一行。多條語句寫為一行會使**比較混亂。
目前,在.net framework命名空間中有兩種命名約定,稱為pascalcase和camelcase.
這兩個名稱中使用的大小寫標識他們的用法。這兩種命名約定都應用到由多個單詞組成的名稱中,並指定名稱中的每個單詞除了第乙個字母大寫外,其餘字母都是小寫。在camelcase中,還有乙個規則,即第乙個單詞以小寫字母開口。
下面時camelcase變數名:
age
firstname
timeofdeath
下面是pascalcase變數名:
age
lastname
winterofdiscontent
microsoft建議:對於簡單的變數,使用camelcase規則,而對於比較高階的命名則使用pascalcase.
最後,注意許多以前的命名系統常常使用下劃線字元作為變數名中各個單詞之間的分隔符,如yet_another_variable。單這種用法現在已經淘汰了。
《再讀》第二章 語法「陷阱」
看了第一章後發現第一節還是那麼深奧啊 呵呵,今天看了第二章,雖然後點麻煩,不過 如果掌握了作者所說的關鍵的話,其實也不是特別難了,但還是有些宣告的方法覺得很怪異,也 許是因為沒有這樣用過,也沒聽說過吧。今天難得的在書中找到了一些錯誤啊 呵呵,這算是一 個不大不小的收穫吧。1.對函式宣告的理解。在c語...
第二章 演算法基礎
引言 演算法導論 在本章將向我們介紹乙個演算法設計和分析框架,在後續的章節也將在這個框架的基礎上來分許演算法。名詞解釋 1 偽 偽 就是以最清晰 最簡潔的表示方法來說明演算法,而忽略資料抽象 模組性和錯誤處理的問題 2 迴圈不變式 每次迴圈從陣列a中取出第j個元素插入有序數列a 1 j 1 然後遞增...
第二章 演算法基礎
2.1 插入排序 insertion sort 時間複雜度 o n 對於少量元素的排序,是乙個有效的演算法。為什麼叫插入排序呢?可以模擬撲克牌整牌 將未排序的數字通過遍歷插入到已排好序的數字中的對應位置 如何實現呢 num j 1 key 插入 for int i 1 i n i printf n ...