220 likes | 423 Views
Ngôn ngữ C#. Trần Văn Tèo tvteo@agu.edu.vn. Chương 2: Căn bản Ngôn ngữ C#. Kiểu dữ liệu (Type). Biến (Variable) và Hằng (Constant). Biểu thức (Expression) Whitespace Các câu lệnh (Statements). Các toán tử (Operators). Namespace Các chỉ thị tiền xử lý (Preprocessor Directives).
E N D
Ngôn ngữ C# Trần Văn Tèo tvteo@agu.edu.vn Ngôn ngữ C#
Chương 2: Căn bản Ngôn ngữ C# • Kiểu dữ liệu (Type). • Biến (Variable) và Hằng (Constant). • Biểu thức (Expression) • Whitespace • Các câu lệnh (Statements). • Các toán tử (Operators). • Namespace • Các chỉ thị tiền xử lý (Preprocessor Directives) Ngôn ngữ C#
Kiểu dữ liệu (Type). • C# là một ngôn ngữ kiểm soát chặt chẽ về mặt kiểu dữ liệu. • Hai nhóm kiểu dữ liệu: bẩm sinh (build-in), tự tạo (user-defined). • Hai loại kiểu dữ liệu: kiểu trị (value-type), kiểu qui chiếu (reference type). • Dữ liệu được lưu trên stack hoặc heap tùy vào đặc thù của kiểu dữ liệu. Ngôn ngữ C#
Kiểu dữ liệu (Type). Ngôn ngữ C#
Kiểu dữ liệu (Type). Ngôn ngữ C#
Chuyển đổi kiểu dữ liệu. • Hai cách chuyển đổi: ngầm (implicit), tường minh (explicit). • Chuyển đổi ngầm (implicit): • Chuyển đổi ngầm sẽ tự động được thực hiện và bảo đảm không mất thông tin. • Ví dụ: short x = 5; int y = x; • Chuyển đổi tường minh (explicit). • Có những chuyển đổi ngầm không thể thực hiện được và để chuyển đổi thì phải ép kiểu (cast). • Ví dụ: short x; int y = 500; x = (short)y; • Khi ép kiểu có thể sẽ gây ra nếu không kiểm soát được giá trị của chúng. • Ví dụ: int y = 35.000; short x = (short) y; Ngôn ngữ C#
Biến (Variable) Cú pháp khai báo một biến: [modifier] datatype identifier; • modifier là một trong những từ khóa: public, private, protected, …. • datatype là kiểu dữ liệu (int, long,…) • identifier là tên biến. • Có thể khai báo và khởi gán nhiều biến cùng một lúc, với điều kiện các biến thuộc cùng một datatype và cùng một modifier. • Ví dụ: public static int x = 10, y =20//đúng public int x = 10, private byte y = 20;//sai Ngôn ngữ C#
Hằng (Constant) • Là một biến nhưng trị không thay đổi trong suốt thời gian thi hành chương trình. • Khai báo: const datatype identifier = value • Đặc điểm: • Phải có từ khóa const. • Phải được gán lúc khai báo. • Không thể gán hằng từ một trị của một biến. • Luôn là static nhưng không dùng từ khóa static khi khai báo. Ngôn ngữ C#
Hằng (Constant) • Ưu điểm: • Dễ đọc chương trình, bằng cách thay thế các con số mang bởi những tên đầy ý nghĩa. • Dễ sửa chương trình, bằng cách chỉ một lần thay đổi giá trị của hằng. • Tránh lỗi dễ dàng hơn. Nếu gán lại giá trị cho hằng thì chương trình sẽ báo lỗi ngay. • Các loại hằng: literals, symbolic constant, enumeration. Ngôn ngữ C#
Enumeration (Liệt kê) • Là một tập hợp những hằng được đặt tên. • Là một kiểu dữ liệu số nguyên tự tạo. • Cú pháp: [atrributes][modifiers] enum identifier [:base-type] {enumerator-list}; • base-type là bất kỳ kiểu dữ liệu nào là số (ngoại trừ char). • anumerator-list là danh sách các hằng, mỗi hằng có một trị số, cách nhau bằng dấu phẩy. Nếu phần phần tử không có trị số thì hằng đầu tiên có giá trị là 0, hằng đi sau sẽ tăng lên 1 so với trị của hằng trước • Ví dụ: enum SomeValues{ First, Second, Third = 20, Fourth }; Ngôn ngữ C#
Phạm vi hoạt động của biến Ngôn ngữ C#
Biểu thức và khoảng trắng • Biểu thức (expression): • Các câu lệnh cho ra một trị được gọi là biểu thức. • Ví dụ: myVariable = 57; mySecondVariable = myVariable = 57; • Khoảng trắng (whitespace): • Các ký tự trắng (space), khoảng trắng canh cột (tab), dòng mới (newline) đều được gọi là khoảng trắng (whitespace). • C# làm lơ đi các khoảng trắng trong các câu lệnh. Ngôn ngữ C#
Các câu lệnh (statement) • Các câu lệnh rẽ nhánh • if…else. • switch. • Các câu lệnh lặp • while • do…while • for • Các câu lệnh nhảy: continue, break, return, goto. Ngôn ngữ C#
Câu lệnh if…else • Cú pháp: if (x > y) WriteLine(“x > y”); if (condition-expression) statement1 [else statement2] if (x > y) WriteLine(“x > y”); else WriteLine(“x <= y”); Ngôn ngữ C#
Câu lệnh switch const int one = 1; int nSelect = 2; switch(nSelect) { case one: Console.WriteLine("1"); break; case 2: Console.WriteLine("2"); break; case 3: Console.WriteLine(“3"); gotocase 2; default: Console.WriteLine(“4"); break; } • Cú pháp: switch(expresstion) { case constant-expression: statement jump-statement [default:statement] } Ngôn ngữ C#
Vòng lặp while • Thực hiện statement khi expression trả về kết quả true while (expresstion) statement int i = 0; while (i < 10) { Console.WriteLine(i); i++; } 0 1 2 3 4 5 6 7 8 9 Ngôn ngữ C#
Vòng lặp do…while • Tương tự while, nhưng thực hiện ít nhất một lần. do statement while (expresstion); int i = 0; do{ Console.WriteLine(i); i++; }while (i < 10) 0 1 2 3 4 5 6 7 8 9 Ngôn ngữ C#
Vòng lặp for for([initializers];[condition];[iterators]) statement for (int i = 0; i < 10; i++) { Console.WriteLine(i); } 0 1 2 3 4 5 6 7 8 9 • Biến trong khối for chỉ có ý nghĩa trong phạm vi của khối này. for (int i = 0; i < 10; i++) Console.WriteLine(i); Console.WriteLine(i);//Error Ngôn ngữ C#
Lệnh goto • Cho phép nhảy trực tiếp đến một câu lệnh được đánh dấu bởi một nhản (Label). • Không thể nhảy vào một khối đoạn mã chẳng hạn vòng lặp for. • Không thể nhảy ra khỏi một lớp hoặc một khối fianlly if (number % 2 == 0) goto Even; Console.WriteLine("odd"); goto End; Even: Console.WriteLine("even"); End:; Ngôn ngữ C#
Lệnh break và continue • break: nhảy ra khỏi vòng lặp. • continue: nhảy đến lần lặp tiếp theo. int i = 0; while (true) { Console.WriteLine(i); i++; if (i < 10) continue; else break; } Ngôn ngữ C#
Q & A Ngôn ngữ C#