I. Giới thiệuC#
NgônngữC#kháđơngiản,chỉkhoảng hơn80từkhóavàhơnmườimấy kiểudữliệu đượcdựngsẵn.Tuynhiên,ngônngữC#cóýnghĩatolớnkhinóthựcthinhữngkháiniệm lậptrìnhhiệnđại.C#baogồmtấtcả nhữnghỗtrợchocấutrúc,thànhphầncomponent,lập trình hướng đốitượng.Những tính chấtđó hiệndiện trong mộtngôn ngữ lập trìnhhiện đại. Hơn nữangôn ngữ C# đượcxâydựngtrên nền tảnghai ngôn ngữ mạnh nhất làC++vàJava.
Tóm lại, C# có cácđặctrưngsau đây:
-C# làngôn ngữ đơngiản
-C# làngôn ngữ hiện đại
-C# làngôn ngữ hướng đối tượng
-C# làngôn ngữ mạnhmẽvàmềm dẻo
-C# làngôn ngữ hướng module
-C# sẽtrở nên phổ biến
1. C# là ngônngữ đơngiản
-C# loại bỏ đượcmột vài sự phứctạp vàrối rắm củacácngôn ngữ C++vàJava.
-C# khágiốngC/ C++vềdiện mạo, cú pháp, biểu thức, toán tử.
-CácchứcnăngcủaC#đượclấytrựctiếptừngônngữC/C++nhưngđượccảitiếnđể làm cho ngôn ngữ đơn giản hơn.
2. C# là ngônngữ hiệnđại
C# có đượcnhữngđặctính củangôn ngữ hiện đại như:
-Xử lýngoại lệ
-Thu gom bộ nhớ tự động
-Có nhữngkiểu dữ liệumở rộng
-Bảo mật mãnguồn
3. C# là ngônngữ hướngđối tượng
C# hỗ trợ tất cảnhữngđặctính củangôn ngữ hướngđối tượnglà:
-Sự đóng gói (encapsulation)
-Sự kếthừa(inheritance)
-Đahình (polymorphism)
4. C# là ngônngữ mạnhmẽvàmềmdẻo
-VớingônngữC#,chúng tachỉbịgiớihạnởchínhbảnthâncủachúng ta.Ngônngữnày
khôngđặtranhữngràng buộclên nhữngviệccó thểlàm.
-C#đượcsửdụng chonhiềudựánkhácnhaunhư:tạoraứng dụng xửlý vănbản,ứng dụngđồ họa, xử lýbảng tính; thậm chí tạo ranhữngtrình biên dịchcho cácngôn ngữ khác.
-C#làngônngữsửdụnggiớihạnnhững từkhóa.Phầnlớncáctừkhóadùngđểmôtả thông tin,nhưng khônggìthếmàC# kémphầnmạnhmẽ.Chúng tacóthểtìmthấyrằng ngôn ngữ nàycó thểđượcsử dụngđểlàm bất cứ nhiệmvụ nào.
5. C# là ngônngữ hướngmodule
-MãnguồncủaC#đượcviếttrongClass(lớp).NhữngClassnàychứacácMethod (phươngthức)thành viêncủanó.
-Class(lớp)vàcácMethod(phươngthức)thànhviêncủanócóthểđượcsửdụnglại trongnhững ứngdụnghaychươngtrình khác.
6. C# sẽtrởnênphổ biến
C# mangđến sứcmạnh củaC++cùngvới sự dễdàng củangôn ngữVisualBasic.
II. Môitrường lậptrình
1. Sử dụng Notepadsoạnthảo
§Bước1: Soạn thảo tập tin vàlưu với tên C:\ChaoMung.cs có nội dungnhư sau
class ChaoMung
{
staticvoid Main()
{
// Xuat raman hinh chuoi thongbao'Chao mung ban den voi C# 2008 ' System.Console.WriteLine("Chao mungban denvoi C# 2008 "); System.Console.ReadLine();
}
}
§Bước2:VàomenuStart|AllPrograms|MicrosoftVisualStudio2008|Visual
Studio Tools |Visual Studio 2008 Command Prompt
§Bước3:
-Gõ lệnh biên dịch tập tin ChaoMung.cs sangtậptin ChaoMung.exe
C:\> csc/t:exe/out:chaomung.exechaomung.cs
-Chạytập tin ChaoMung.exevàđượckết quảnhư sau :
C:\> chaomung.exe
Chao mungban den voi C# 2008
2. Sử dụng MicosoftVisual Studio 2008đểtạo chương trình
§Bước1: Khởi độngVisual Studio 2008
Start|All Programs|Microsoft Visual Studio 2008|Microsoft Visual Studio 2008
§Bước2: Vào menuFile| New|Project
§Bước3: Khai báo
*Mặcđịnh:VisualStudio2008(VisualStudio.NET)sẽtạoratậptinProgram.cs chứamộtnamespacetênChaoMungvàtrong namespacenày chứamột class tên Program.
§Bước4: trongphươngthứcMain,gõ đoạn mãlệnh sau
* Ví dụ:
// Xuat raman hinh chuoi thongbao'Chao mung ban den voi C# 2008 ' System.Console.WriteLine("Chao mungban denvoi C# 2008 "); System.Console.ReadLine();
§Bước5: Đểchạychương trình, nhấn F5 hoặcnhắpvào nút
III. Biến, hằng, toántử
1. Biến
a) Khái niệm:
-Biến làmột vùnglưu trữ ứngvới một kiểu dữ liệu.
-Biếncóthểđượcgángiátrịvàcũngcóthểthayđổigiátrịtrongkhithựchiệncáclệnh củachươngtrình.
b) Khai báo biến:Sau khikhai báo biến phảigángiátrị cho biến
<Kiểu_Dữ_Liệu> <tên_biến> [= <giá_trị> ];
c) Ví dụ1.1: Khởi tạo vàgán giátrị một biến
class Bien
{
staticvoid Main()
{
// Khai bao vakhoi tao bien int bien =9 ;
System.Console.WriteLine("Sau khi khoi tao: bien ={0}", bien);
// Gan giatricho bien bien =5 ;
// Xuat raman hinh
System.Console.WriteLine("Sau khi gan: bien ={0}", bien);
}
}
2. Hằng
a) Khái niệm:
-Hằngcũnglàmộtbiếnnhưnggiátrịcủahằngkhôngthayđổitrongkhithựchiệncác
lệnh củachươngtrình.
-Hằngđượcphân làm 3loại:
+Giátrị hằng(literal)
+Biểu tượnghằng(symbolicconstants)
+Kiểu liệt kê(enumerations)
b) Giá trị hằng:
Ví dụ: x=100; // 100 đượcgọi làgiátrị hằng
c) Biểutượng hằng:gán một tên hằng cho một giátrị hằng.
Khai báo:
<const> <Kiểu_Dữ_Liệu> <tên_hằng> = <giá_trị> ;
Ví dụ1.2: Nhập vào bán kính, in rachu vi vàdiệntích hình tròn
class HinhTron
{
staticvoid Main()
{
// Khai bao bieu tuonghang const doublePI=3.14159 ;
// Khai bao bien int bankinh ;
doublechuvi , dientich ;
stringchuoi ;
// Nhap giatricho bien chuoi System.Console.Write("Nhap ban kinh hinh tron: "); chuoi =System.Console.ReadLine();
// Doi chuoi thanh so vagan vao bien so bankinh =System.Convert.ToInt32(chuoi);
// Gan giatricho bien chuvi =2 * bankinh * PI;
dientich =bankinh * bankinh * PI;
// Xuat raman hinh
System.Console.WriteLine("Chu vi hinh tron ={0:0.00}", chuvi); System.Console.WriteLine("Dien tich hinh tron ={0:0.00}", dientich);
}
}
d) Kiểuliệtkê:làtập hợp cáctên hằng cógiátrị sốkhôngthayđổi (danh sách liệt kê) Khai báo:
<enum> <Tên_Kiểu_Liệt_Kê>
{
<tên_hằng_1>=<giá_trị_số_1>,
<tên_hằng_2>=<giá_trị_số_2>,
... ,
};
Ví dụ:
enum NhietDoNuoc
{
DoDong =0, DoNguoi=20, DoAm =40, DoNong =60, DoSoi =100,
} ;
3. Toán tử
a) Toán tử toán học:+, -,* , / , %
b) Toán tử tăng / giảm:+=, -=, *=, /=,%=
c) Toán tử tăng / giảm1 đơnvị:++, --
d) Toán tử gán:=
e) Toán tử quanhệ:==, !=, >, >=, <, <=
f) Toán tử logic:!, &&,||
IV. Quy tắclậptrình, ứngdụng ConsoleApplication
1. Quy tắclậptrình
Khi tạo một chươngtrìnhtrongC#, chúngtanên thựchiện theo cácbướcsau:
§Bước1: Xácđịnh mụctiêu củachươngtrình
§Bước2: Xácđịnh những phươngphápgiải quyếtvấn đề
§Bước3: Tạo một chương trình đểgiải quyết vấn đề
§Bước4: Thựcthi chương trình đểxem kết quả
2. Ứng dụng ConsoleApplication
Làứngdụnggiaotiếpvớingườidùngthôngquabànphímvàkhôngcógiaodiệnngười
dùng(UI).
Ví dụ1.3:
usingSystem;
class ChaoMung
{
staticvoid Main()
{
// Xuat raman hinh chuoi thongbao'Chao mung ban den voi C# 2008 ' Console.WriteLine("Chao mungban den voi C# 2008 "); Console.ReadLine();
}
}
* PhầnBổsung
1. Namespace
-.NETcung cấpmộtthư việncácclassrấtđồsộ, trong đóConsolelàmột classnhỏtrong
thư viện cácclass này.
-Mỗiclasscómộttênriêng,vìvậy ngườilậptrìnhkhôngthểnàonhớhếttêncácclass trong .NET.Đểgiảiquyếtvấnđềnày làviệctạoramộtnamespace,namespacesẽhạnchế phạm vi củamột tên, làm cho tên nàychỉcóýnghĩatrongvùngđãđịnh nghĩa.
2. Từ khóa using
-Đểkhôngphải viết namespacecho từngđối tượng, tadùngtừ khóausing.
-Tacó thểdùngdònglệnh sau ở đầu chươngtrình:
usingSystem ;
Khi đó, thayvì viết đầyđủ System.Console. tachỉcần viết Console.
3. Từ khóa static
TừkhóastaticchỉrarằnghàmMain()cóthểđượcgọimàkhôngcầnphảitạođốitượng
ChaoMung.
4. Từ khóa this
Từ khóathis dùngđểtham chiếu đến thểhiện hiện hành củađối tượng.
5. Chúthích(Comment)
-Một chươngtrình đượcviết tốt thì cần phải có chú thích cácđoạn mãlệnhđượcviết.
-Mụcđích chính làlàmcho đoạn mãlệnh nguồnrõ ràngvàdễhiểu.
-Có 2 loại chú thích:
+Chú thích một dòng: //
+Chú thích nhiều dòng:/* */
6. Phânbiệtchữ thường và chữ hoa
C# làngôn ngữ phân biệt chữ thườngvớichữ hoa.
7. Toántử '. '
Toántử'.'đượcsửdụngđểtruycậpđếnphươngthứchaydữliệutrongmộtclassvà
ngăncáchgiữatênclassđến một namespace.
Ví dụ: System.Console.WriteLine()
namespace class phươngthức
8. Câulệnh(statement)
Một chỉ dẫn lập trình đầyđủ đượcgọi làmột câu lệnh.
Ví dụ: int bankinh =5 ; // một câu lệnh
chuvi =2 * bankinh * PI; // một câu lệnh khác
9. Kiểuchuỗi ký tự
Kiểu chuỗi kýtự làmột mảng cáckýtự.
a) Khai báo chuỗi hằng:
string<Tên_chuỗi_hằng>=<"Noi dungchuoi hang">;
Ví dụ: stringtentuong="Nhat Nghe";
b) Khai báo biếnkiểuchuỗi:
string<Biến_chuỗi>[="Noi dungchuoi hang"];
Ví dụ: stringhoten ="NguyenVan Teo";
c) Nhậpchuỗi:
<Biến_chuỗi>=System.Console.ReadLine();
Ví dụ: hoten =System.Console.ReadLine();
d) Xuấtchuỗi:
System.Console.WriteLine("Chuoi");
Ví dụ: System.Console.WriteLine("Do dai cuachuoi la:");
e) Mộtsố thao táctrênchuỗi:
Phươngthức |
Ý nghĩa |
Length |
Chiều dài củachuỗi |
Substring() |
Lấychuỗi con |
ToLower() |
Trảvềbản sao củachuỗiở kiểu chữ thường |
ToUpper() |
Trảvềbản sao củachuỗiở kiểu chữIN HOA |
Vídụ1.4:Nhậpvàohọvàtên,inramànhìnhhọtênbằngchữINHOA,chữthường,độ
dài củahọ vàtên. usingSystem ; class HoTen
{
staticvoid Main()
{ // Khai bao bien stringhoten ;
// Nhap giatricho bien chuoi Console.Write("Nhap HovaTen: "); hoten =Console.ReadLine();
// Thao tactren chuoi
stringHT=hoten.ToUpper(); stringht =hoten.ToLower(); int dodai =hoten.Length;
// Xuat raman hinh
Console.WriteLine("HovaTen (chuIN HOA): {0}", HT); Console.WriteLine("HovaTen (chu thuong): {0}", ht);
Console.WriteLine("Dodai Ho vaTen la: {0}",dodai);
}
}
10. Bảng liệtkêcáctừ khóa của ngônngữ C# 2008
abstract event new struct as explicit null switch base extern object this bool false operator throw break finally out true byte fixed override try case float params typeof catch for private unit Char foreach protected ulong
checked goto public unchecked Class if readonly unsafe Const implicit ref ushort continue in return using decimal interface sbyte virtual default internal sealed volatile delegate is short void
do lock sizeof while double long stackalloc
else namespace static enum string
from get group into join let
orderby partial (type) partial (method)
select set value where(generictypeconstraint) where(queryclause) yield
Bàitập
1. Viết chươngtrình nhập vào 1 số nguyên n. Cho biết:
a) n làsố chẵn haysố lẻ?
b) n làsố âm haysố không âm ?
2. Viếtchươngtrìnhnhậpvào2sốthựcdươngchỉchiềudàivàchiềurộngcủahìnhchữ
nhật.Inramàn hìnhchuvi vàdiện tích củahình chữ nhật đó.
3. Viếtchươngtrìnhnhậpvàomộtsốthựcdươngchỉcạnhcủamộthìnhvuông.Tínhdiện tích vàchu vi củahình vuôngđó.
4. Viếtchươngtrìnhnhậpvàohọtên(HoTen),điểmtoán(Toan),điểmlý(Ly),điểmhoá (Hoa)củamộthọcsinh.Inramànhìnhhọtêncủahọcsinhdướidạng chữINHOAvà điểm trungbình (Dtb)củahọcsinh nàytheo công thức: Dtb =(Toan+Ly+Hoa)/ 3
5. Viết chương trình nhập bậc lương (BacLuong), ngày công (NgayCong), phụ cấp
(PhuCap). Tính tiền lãnh (TienLanh)=BacLuong * 650000 * NCTL+PhuCap
Với: NCTL=NgayCong nếu NgayCong<25
=(NgayCong– 25)* 2+25 nếu NgayCong>=25
---oOo ---
» Tin mới nhất:
» Các tin khác: