Nội dung
 Nền tảng lập trình trên C#
 Dữ liệu trong ngôn ngữ C#
 Xây dựng các biểu thức
 Câu lệnh điều kiện
 Câu lệnh lặp
 Namespace
              
                                            
                                
            
 
            
                 38 trang
38 trang | 
Chia sẻ: phuongt97 | Lượt xem: 625 | Lượt tải: 0 
              
            Bạn đang xem trước 20 trang nội dung tài liệu Bài giảng Cơ sở Lập trình (Fundamental of Programming) - Chương 2: Nền tảng ngôn ngữ C# - Nguyễn Thị Khiêm Hòa, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
Chương 2: 
 Nền tảng ngôn ngữ C# 
 Giảng viên: Ths. Nguyễn Thị Khiêm Hòa 
 Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM 
Nội dung 
  Nền tảng lập trình trên C# 
  Dữ liệu trong ngôn ngữ C# 
  Xây dựng các biểu thức 
  Câu lệnh điều kiện 
  Câu lệnh lặp 
  Namespace 
 Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM 
Nền tảng ngôn ngữ C# 
  Cấu trúc chương trình C# 
  Cách viết code trên C# 
 Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM 
Cấu trúc chương trình C# 
  Chương trình thực thi bắt đầu bởi hàm Main( ) 
  Từ khóa using để sử dụng thư viện lớp .NET 
 (Framework class library_FCL) 
  Câu lệnh 
  Câu lệnh kết thúc bởi dấu chấm phẩy. 
  Dùng ngoặc móc để nhóm các câu lệnh lại với nhau 
 using System; 
 class HelloWorld 
 { 
 static void Main() 
 { 
 Console.WriteLine ("Hello, World"); 
 } 
 } 
 Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM 
Cách viết code trong C# 
  Các câu lệnh cùng nhóm được canh lề với nhau 
  C# phân biệt chữ hoa và chữ thường 
  Dùng dấu // để ghi chú trên 1 dòng 
  Dùng /* và */ để ghi chú trên nhiều dòng 
 using System; 
 class HelloWorld 
 { 
 static void Main() 
 { 
 Console.WriteLine ("Hello, World"); 
 } 
 } 
 Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM 
Dữ liệu trong C# 
  Khai báo biến 
  Khai báo hằng 
  Kiểu Enum 
  Chuyển kiểu 
 Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM 
Các kiểu dữ liệu cơ bản 
 Số Kiểu 
 Kiểu C# Mô tả Ví dụ 
 Byte .NET 
object Kiểu dữ liệu đối tượng object o = null; 
string Chuỗi ký tự string s = “hello”; 
 Số nguyên có dấu giá trị từ -32768 đến 
short 2 Int16 
 32767. 
ushort 2 Uint16 Số nguyên không dấu 0 – 65.535 
 Số nguyên có dấu –2.147.483.647 đến 
int 4 Int32 int val = 12; 
 2.147.483.647 
 Số nguyên không dấu 0 – 
uint 4 Uint32 
 4.294.967.295 
sbyte 1 Sbyte Số nguyên có dấu ( từ -128 đến 127) 
byte 1 Byte Số nguyên không dấu từ 0 - 255 byte val = 12; 
 Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM 
Các kiểu dữ liệu cơ bản 
 Số 
 Kiểu C# Kiểu .NET Mô tả Ví dụ 
 Byte 
 Kiểu dấu chấm động, giá trị xấp xỉ từ 3,4E- 38 đến 
 float 4 Single 3,4E+38, với 7 chữ số có nghĩa. Có thêm hậu tố F sau giá float val = 1.23F; 
 trị 
 Kiểu dấu chấm động có độ chính xác gấp đôi, giá trị xấp 
 double 8 Double 
 xỉ 1.7E-308 -1.7E+308, với 15,16 chữ số có nghĩa 
 Chính xác đến 28 con số và giá trị thập phân, được dùng 
 decimal 8 Decimal trong tính toán tài chính, đòi hỏi hậu tố “m” hay “M” theo 
 sau giá trị 
 bool val1 = true; 
 bool 1 Boolean Giá trị logic true/ false 
 bool val2 = false; 
 char 2 Char Ký tự Unicode char val = 'h'; 
 Kiểu số nguyên có dấu có giá trị trong khoảng: -
 long 8 Int64 9.223.370.036.854.775.808 đến 
 9.223.372.036.854.775.807 
 ulong 8 Uint64 Số nguyên không dấu từ 0 đến 0xFFFFFFFFFFFFFFFF 
 Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM 
Khai báo biến 
  Biến dùng để lưu nhiều kiểu dữ liệu khác nhau 
  Các kiểu dữ liệu được cung cấp từ ngôn ngữ C# 
 và .NET Framework 
  Cũng có thể định nghĩa kiểu dữ liệu riêng 
  Biến phải được khai báo trước khi sử dụng 
 Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM 
Khai báo biến 
 Khai báo biến 
 int numberOfVisitors; 
 1 Kiểu dữ liệu 
 2 Tên string bear; 
 3 Kết thúc bởi ; 
 Khởi tạo 
 1 Toán tử = 
 2 Gán giá trị string bear = "Grizzly"; 
 3 Kết thúc bởi ; 
 Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM 
Khai báo hằng 
  Dùng từ khóa const và kiểu dữ liệu để khai báo 
  Phải gán giá trị ngay khi khai báo 
 const int earthRadius = 6378;//km 
 const long meanDistanceToSun = 149600000;//km 
 const double Pi = 3.14; 
 Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM 
Kiểu liệt kê 
  Khai báo 
 enum Planet 
 { 
 Mercury, 
 Venus, 
 Earth, 
 Mars 
 } 
  Sử dụng 
 Planet aPlanet = Planet.Mars; 
  Hiển thị giá trị 
 Console.WriteLine("{0}", aPlanet); //Displays Mars 
 Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM 
Chuyển đổi kiểu dữ liệu 
  Chuyển đổi ngầm định 
  Thực hiện bởi trình biên dịch và đảm bảo không làm 
 mất thông tin. 
 int x = 123456; 
 long y = x; 
 Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM 
Chuyển đổi kiểu dữ liệu 
  Chuyển đổi tường minh 
  Cách ép kiểu này có thể gây ra mất thông tin 
 int x = 65532; 
 short z = (short) x; 
  Cũng có thể dùng hàm chuyển đổi 
 int x = 5; 
 double z = 3.2; 
 x = System.Convert.ToInt32(z); 
 Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM 
Xây dựng biểu thức 
  Biểu thức và toán tử 
  Toán tử ưu tiên 
 Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM 
Biểu thức và toán tử 
  Các toán tử dùng trong biểu thức 
 Các toán tử thông thường Ví dụ 
 • Tăng / giảm ++ -- 
 • Số học * / % + - 
 • Quan hệ = 
 • Bình đẳng == != 
 • Điều kiện && || ?: 
 • Gán = *= /= %= += -= 
 Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM 
Thứ tự ưu tiên của toán tử 
  Nhân chia trước, cộng trừ sau 
 10 + 20 / 5 => 14 
  Trong ngoặc đơn được tính trước 
 (10 + 20) / 5 => 6 
 10 + (20 / 5) => 14 
 Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM 
Câu lệnh điều kiện 
  Câu lệnh if 
  Câu lệnh switch 
 Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM 
Câu lệnh if 
  if 
 if ( sales > 10000 ) 
 { 
 bonus += .05 * sales; 
 } 
  if else 
 if ( sales > 10000 ) 
 { 
 bonus += .05 * sales; 
 } 
 else 
 { 
 bonus = 0; 
 } 
 Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM 
Câu lệnh if 
  if else if 
 if ( sales > 10000 ) 
 { 
 bonus += .05 * sales; 
 } 
 else if ( sales > 5000 ) 
 { 
 bonus = .01 * sales; 
 } 
 else 
 { 
 bonus = 0; 
 if ( priorBonus == 0 ) 
 { 
 //ScheduleMeeting; 
 } 
 } 
 Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM 
Câu lệnh switch 
 int moons; 
 switch (aPlanet) 
 { 
 case Planet.Mercury: 
 moons = 0; 
 break; 
 case Planet.Venus: 
 moons = 0; 
 break; 
 case Planet.Earth: 
 moons = 1; 
 break; 
 } 
  Default case 
 Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM 
Câu lệnh break, goto 
 int moons; 
 switch (aPlanet) 
 { 
 case Planet.Mercury: 
 moons = 0; 
 break; 
 case Planet.Venus: 
 moons = 0; 
 break; 
 case Planet.Earth: 
 moons = 1; 
 break; 
 } 
 Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM 
Câu lệnh lặp 
  Vòng lặp for 
  Vòng lặp while 
  Vòng lặp do 
 Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM 
Vòng lặp for 
  Dùng khi biết trước số lần lặp 
 for (giá trị đầu; điều kiện; bước nhảy) 
 { 
 câu lệnh; 
 } 
 Ví dụ 
 for (int i = 0; i < 10; i++) 
 { 
 Console.WriteLine("i = {0}",i); 
 } 
 for ( int j = 100; j > 0; j -= 10 ) 
 { 
 Console.WriteLine("j = {0}", j); 
 } Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM 
Vòng lặp while 
  Kiểm tra điều kiện rồi mới lặp 
  Lặp đến khi điều kiện = false 
 i = 0; 
 while ( i < 10 ) 
 { 
 Console.WriteLine(“ i: {0} ”,i); 
 i++; 
 } 
  continue, break 
 Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM 
Vòng lặp do  while 
  Thực hiện câu lệnh trước rồi mới kiểm tra điều 
 kiện lặp cho đến khi điều kiện = false 
 do 
 { 
 câu lệnh; 
 } while (điều kiện = true); 
 Example 
 int i = 1; 
 do 
 { 
 Console.WriteLine ("{0}", i++); 
 } while (i <= 10); 
 Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM 
Namespace 
  Tránh sự xung đột thư viện từ các nhà cung cấp 
 khác nhau 
  Được xem như một tập hợp các lớp đối tượng 
  Dùng từ khóa using để khai báo sử dụng 
 namespace trong chương trình 
 namespace Tên_namespace 
 { 
 } 
 Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM 
Namespace 
 Ví dụ 
 namespace MyLib 
 { 
 using System; 
 public class Tester 
 { 
 public static int Main() 
 { 
 for (int i =0; i < 10; i++) 
 { 
 Console.WriteLine( “i: {0}”, i); 
 } 
 return 0; 
 } 
 } 
 Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM 
Namespace 
 Ví dụ 
 namespace MyLib 
 { 
 namespace Demo 
 { 
 using System; 
 public class Tester 
 { 
 public static int Main() 
 { 
 for (int i =0; i < 10; i++) 
 { 
 Console.WriteLine( “i: {0}”, i); 
 } 
 return 0; 
 } 
 } 
 } 
 } 
 Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM 
Namespace 
  Để truy cập lớp Tester, thực hiện theo cú pháp sau: 
 using Mylib.Demo.Tester; 
 Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM 
Làm việc với lớp System.Console 
 System.Console.Writeln( ) 
  Chuỗi nằm trong ngoặc kép 
  Biến nằm ngoài ngoặc kép 
 Console.WriteLine(“Hello, Nice day!”); 
 Console.WriteLine(i); 
 Console.WriteLine(“i: {0}, j: {1}”, i,j); 
 Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM 
Làm việc với lớp System.Console 
 System.Console.ReadLine( ) 
  public static string ReadLine( ); 
  Dùng hàm chuyển kiểu Convert 
 Console.ReadLine(); 
 double i; 
 i = Convert.ToDouble(Console.ReadLine()); 
 Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM 
Xử lý ngoại lệ 
  Dùng để đón trước và xử lý các lỗi có thể xảy ra 
  .Net framework một số ngoại lệ thường xảy ra 
 Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM 
Xử lý ngoại lệ 
 Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM 
Xử lý ngoại lệ 
  System.Exception 
  Cơ chế xử lý ngoại lệ 
 Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM 
Xử lý ngoại lệ Trycatch 
  Cú pháp đoạn mã kiểm soát lỗi và xử lý: 
 try 
 { 
 //Các lệnh xử lý công việc 
 } 
 catch 
 { 
 // Xử lý lỗi 
 } 
 finally 
 { 
 //dọn dẹp 
 } 
 Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM 
Xử lý ngoại lệ Trycatch 
 using System; 
 class ExceptionDemo 
 { 
 static void Main() 
 { 
 int dividend = 50, userInput = 0, quotient = 0; 
 Console.WriteLine (“Nhập 1 số: "); 
 try 
 { 
 userInput = Convert.ToInt32(Console.ReadLine()); 
 quotient = divident /userInput; 
 } 
 catch (System.FormatException excepE) 
 { 
 Console.WriteLine (excepE); 
 } 
 catch (System.DivideByZeroException excepE) 
 { 
 Console.WriteLine (excepE); 
 } 
 finally 
 { 
 Console.Writeln(“Kết quả:{0} : {1} = {2}”, dividend, 
 userInput, quotient); 
 } 
 } 
 } Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM 
Q & A 
 Khoa Công nghệ Thông tin – Đại học Ngân hàng TP.HCM 
            Các file đính kèm theo tài liệu này:
 bai_giang_co_so_lap_trinh_fundamental_of_programming_chuong.pdf bai_giang_co_so_lap_trinh_fundamental_of_programming_chuong.pdf