SlideShare une entreprise Scribd logo
1  sur  28
Télécharger pour lire hors ligne
Lậ p trình trên môi trườ ng Windows



   Ngôn ngữ C# - Phần 1



           Trần Duy Hoàng
       tdhoang@hcmus.edu.vn
.Net Framework
   4 ngôn ngữ : C#, VB.NET, C++.NET, Jscript.NET
   CLR - Common Language Runtime
   FCL – Framework Class Library
   MSIL – Microsoft Intermediate Language
    ●   B1 : dịch mã nguồn → MSIL
    ●   B2 : MSIL → mã CLR thực thi
        → ứng dụng có ngôn ngữ khác với thư viện sử dụng
.NET Framework
   Môi trườ ng phát triển
    ●   Nguồn mở Sharp Develop
    ●   Microsoft Visual Studio .NET 2003 / 2005 / 2008
   Phát triển ứng dụng
    ●   Console
    ●   Dll
    ●   Windows form
    ●   Web
Vùng tên - Namespaces
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using MyLibrary;
Vùng tên - Namespaces
   Namespace là 1 nhóm các lớp có mối liên quan
    ●   Vd : System.IO, System.Collection, System.Data
   Namespace chứa lớp và namespace con khác
    ●   Vd : System.Data chứa Oledb, SqlClient, …
   Namespace System chứa chứa nhiều lớp giao tiếp
    với hệ thống và các lớp công dụng chung
Vùng tên - Namespaces
   Toán tử chấm “.”
    ●   Chỉ định tên lớp trong namespace
          System.Data.OleDb.OleDbConnection con = new …;
    ●   Truy xuất dữ liệu phương thức của lớp
          int x = System.Convert.ToInt32(“123”);
   Từ khóa using
    ●   Khai báo namespace ta đang sử dụng
          using System.Data.OleDb;
          OleDbConnection con = new …;
Kiểu dữ liệu
   Một số kiểu định sẵn thông dụng
Kiểu      Kiểu .NET   Kích thước   Mô tả – giá trị

bool      Boolean     1            true hay false

byte      Byte        1            Không dấu (0..255)

char      Char        2            Mã ký tự Unicode

float     Single      4            Số thực (≈ ±1.5*10-45 .. ≈ ±3.4*1038)

double    Double      8            Số thực (≈ ±5.0*10-324 .. ≈ ±1.7*10308)

double    Double      8            Số thực (≈ ±5.0*10-324 .. ≈ ±1.7*10308)
Kiểu dữ liệu
   Kiểu chuỗi – String
      string myString = "Hello World";
   Phươ ng thức ToString()
      string str = “So nghiem = ” + n.ToString();
Kiểu dữ liệu

    Một số ký tự escape
                          Escape     Character
                         Sequence

    thông dụ ng
                          '         Single
                                     quote
                          "         Double
                                     quote
                                   Backslash
                          0         Null
                          a         Alert
                          b         Backspace
                          f         Form feed
                          n         New line
                          r         Carriage
                                     return
                          t         Tab
                                     character
                          v         Vertical tab
Chuyển đổi kiểu dữ liệu
   Số thành chuỗi
      int so = 10;
      string chuoi = so.ToString();
   Chuỗi thành số
      string chuoi = “12345”;
      double n = double.Parse(chuoi);
      double n = Convert.ToDouble(chuoi);
      int n = Convert.ToInt32(chuoi);
Khai báo biến, hằng
   Khai báo biến:
    int i;
    i = 0;
    int x = 10; y = 20;
    bool b = true;
   Khai báo hằng:
    const int a = 20;
Câu lệnh lặp
   While
      while (l<r)
      { câu lệnh }
   Do..While
      do
      { câu lệnh }
      while (l<r)
   For
      for (int i=0; i<n; i++)
      { câu lệnh }
Câu lệnh lặp
   Foreach
      double[] arr = {1.0, 2.1, 3.5, 4.2, 5.3};
      foreach (double temp in arr) {
        sum += temp;
      }

      for (int i=0; i<arr.Length; i++) {
        double temp = arr[i];
        sum += temp;
      }
Câu lệnh điều kiện
   If..else                   Switch
       if ( a => b )              switch (x)
       {                          {
           max = a;                   case 1 : … ; break;
       }                              case 2 : … ; break;
       else                           default : … ; break;
       {                          }
           max = b;
       }
Các toán tử

Category                  Operator

Arithmetic                +-*/%

Logical                   & | ^ ~ && || !

String concatenation      +

Increment and decrement   ++ --

Assignment                = += -= *= /= %= &= |= ^= <<= >>=

Shortcut operator         ++ , --

Shortcut operator         ++ , --
Viết ghi chú
   // : ghi chú trên một dòng
      int len;   // chieu dai mang
   /* … */ : ghi chú trên nhiều dòng
      /* Nguoi tao : ...
        Ngay tao : …
       … */
      void int HamMoi (...)
Các phép toán
   Thông qua lớp Math
   Một số hàm thông dụng
    ●   Lấy giá trị tuyệt đối
         ➢   Int x = Math.Abs(-16);
    ●   Lũy thừa
         ➢   Int x = Math.Pow(2,3); // x = 2^3
    ●   Lấy căn
         ➢   Double x = Math.Sqrt(4); // x = 2;
    ●   Làm tròn
         ➢   Double x = Math.Round(0.1234,2) // x= 0.12
Lậ p trình trên môi trườ ng Windows



     Môi trường VS2005



           Trần Duy Hoàng
       tdhoang@hcmus.edu.vn
Cài đặt Visual Studio
          B ướ c 1

Cài đặt môi trườ ng .NET 2005
                                       B ướ c 2

                                Cài đặt thư vi ện MSDN
Làm việc với Solution

Solution               HelloWorld

           Project 1               MyLibrary

           Project 2              HelloWorld

           Project 2    MyLibrary: ứng dụng dll
                        HelloWorld: ứng dụng Console
Tạo mới một project
   Mở VS2005
   Menu File → New → Project...
    ●   Project type : chọn Visual C#
    ●   Template : Window Application
    ●   Name : tên dự án
    ●   Location : nơi lưu dự án
Tạo mới một project
Tạo mới một project
Tạo mới một project



  <<TextBox>>
  Name : txtSo1




                                <<Button>>
                              Name : btnCong
<<Label>>                       Text : Cộng
Text : Tổng
Tạo mới một project
   Viết code xử lý cho Button “Cộng”
    ●   Double click vào button cộng
    ●   Màn hình viết code sẽ xuất hiện
Tạo mới một project
private void btnCong_Click(object sender, EventArgs e)
{
    // Bước 1 : đọc dữ liệu từ control
    int so1 = Convert.ToInt32(txtSo1.Text);
    int so2 = Convert.ToInt32(txtSo2.Text);
    // Bước 2 : xử lý
    int tong = so1 + so2;
    // Bước 3 : xuất kết quả ra control
    txtTong.Text = tong.ToString();
}
Tạo mới một project
   Chạ y chươ ng trình
    ●   Bấm F5 để chạy chương trình
Thả o luậ n




02/15/11            Trần Duy Hoàng - tdhoang@fit.hcmus.edu.vn   28/10

Contenu connexe

Tendances (17)

C đến C++ phần 1
C đến C++ phần 1C đến C++ phần 1
C đến C++ phần 1
 
Tn ktlt
Tn ktltTn ktlt
Tn ktlt
 
Tut6
Tut6Tut6
Tut6
 
Bai de quy
Bai de quyBai de quy
Bai de quy
 
Lab4
Lab4Lab4
Lab4
 
Nmlt c11 con_trocoban-
Nmlt c11 con_trocoban-Nmlt c11 con_trocoban-
Nmlt c11 con_trocoban-
 
Ctdl C01
Ctdl C01Ctdl C01
Ctdl C01
 
Nmlt c11 con_trocoban
Nmlt c11 con_trocobanNmlt c11 con_trocoban
Nmlt c11 con_trocoban
 
Nmlt c12 quan_lybonho
Nmlt c12 quan_lybonhoNmlt c12 quan_lybonho
Nmlt c12 quan_lybonho
 
Baigiang Ns2
Baigiang Ns2Baigiang Ns2
Baigiang Ns2
 
Control structure in C
Control structure in CControl structure in C
Control structure in C
 
Introduction ns2
Introduction ns2Introduction ns2
Introduction ns2
 
Nmlt c07 mang1_chieu
Nmlt c07 mang1_chieuNmlt c07 mang1_chieu
Nmlt c07 mang1_chieu
 
Ctdl lab01
Ctdl lab01Ctdl lab01
Ctdl lab01
 
Basic C programming
Basic C programmingBasic C programming
Basic C programming
 
Nmlt c08 mang2_chieu
Nmlt c08 mang2_chieuNmlt c08 mang2_chieu
Nmlt c08 mang2_chieu
 
Nmlt c03 cac_kieudulieucoso
Nmlt c03 cac_kieudulieucosoNmlt c03 cac_kieudulieucoso
Nmlt c03 cac_kieudulieucoso
 

En vedette

01.lap trinhhuongdoituong
01.lap trinhhuongdoituong01.lap trinhhuongdoituong
01.lap trinhhuongdoituongDũng Đinh
 
Annual report Bekaert
Annual report BekaertAnnual report Bekaert
Annual report Bekaertsamdruyt
 
INFORME RELATIVO A LA DEDUCIBILIDAD EN EL IMPUESTO SOBRE SOCIEDADES DE LOS IN...
INFORME RELATIVO A LA DEDUCIBILIDAD EN EL IMPUESTO SOBRE SOCIEDADES DE LOS IN...INFORME RELATIVO A LA DEDUCIBILIDAD EN EL IMPUESTO SOBRE SOCIEDADES DE LOS IN...
INFORME RELATIVO A LA DEDUCIBILIDAD EN EL IMPUESTO SOBRE SOCIEDADES DE LOS IN...Ángel Luis Ortega Fernández
 
Como atraer clientes con facebook
Como atraer clientes con facebookComo atraer clientes con facebook
Como atraer clientes con facebookJesús Navarro
 
25 tácticas para tener tu primera venta online
25 tácticas para tener tu primera venta online25 tácticas para tener tu primera venta online
25 tácticas para tener tu primera venta onlineJesús Navarro
 
Pd fbuoi5 6-ảnh hưởng của social media tới kết quả seo-mastercode.vn
Pd fbuoi5 6-ảnh hưởng của social media tới kết quả seo-mastercode.vnPd fbuoi5 6-ảnh hưởng của social media tới kết quả seo-mastercode.vn
Pd fbuoi5 6-ảnh hưởng của social media tới kết quả seo-mastercode.vnMasterCode.vn
 
Pd fbuoi7 8--tongquanseo-mastercode.vn
Pd fbuoi7 8--tongquanseo-mastercode.vnPd fbuoi7 8--tongquanseo-mastercode.vn
Pd fbuoi7 8--tongquanseo-mastercode.vnMasterCode.vn
 

En vedette (12)

01.lap trinhhuongdoituong
01.lap trinhhuongdoituong01.lap trinhhuongdoituong
01.lap trinhhuongdoituong
 
Cuestiones censales soc_civiles_obj_mercantil
Cuestiones censales soc_civiles_obj_mercantilCuestiones censales soc_civiles_obj_mercantil
Cuestiones censales soc_civiles_obj_mercantil
 
Annual report Bekaert
Annual report BekaertAnnual report Bekaert
Annual report Bekaert
 
Technology learning
Technology learningTechnology learning
Technology learning
 
Technology learning
Technology learningTechnology learning
Technology learning
 
Boe a-2015-14021
Boe a-2015-14021Boe a-2015-14021
Boe a-2015-14021
 
INFORME RELATIVO A LA DEDUCIBILIDAD EN EL IMPUESTO SOBRE SOCIEDADES DE LOS IN...
INFORME RELATIVO A LA DEDUCIBILIDAD EN EL IMPUESTO SOBRE SOCIEDADES DE LOS IN...INFORME RELATIVO A LA DEDUCIBILIDAD EN EL IMPUESTO SOBRE SOCIEDADES DE LOS IN...
INFORME RELATIVO A LA DEDUCIBILIDAD EN EL IMPUESTO SOBRE SOCIEDADES DE LOS IN...
 
Materi narkoba by my self
Materi narkoba by my selfMateri narkoba by my self
Materi narkoba by my self
 
Como atraer clientes con facebook
Como atraer clientes con facebookComo atraer clientes con facebook
Como atraer clientes con facebook
 
25 tácticas para tener tu primera venta online
25 tácticas para tener tu primera venta online25 tácticas para tener tu primera venta online
25 tácticas para tener tu primera venta online
 
Pd fbuoi5 6-ảnh hưởng của social media tới kết quả seo-mastercode.vn
Pd fbuoi5 6-ảnh hưởng của social media tới kết quả seo-mastercode.vnPd fbuoi5 6-ảnh hưởng của social media tới kết quả seo-mastercode.vn
Pd fbuoi5 6-ảnh hưởng của social media tới kết quả seo-mastercode.vn
 
Pd fbuoi7 8--tongquanseo-mastercode.vn
Pd fbuoi7 8--tongquanseo-mastercode.vnPd fbuoi7 8--tongquanseo-mastercode.vn
Pd fbuoi7 8--tongquanseo-mastercode.vn
 

Similaire à 01 ngon ngu_c#_phan_1

Meo lap trinh_tech24.vn
Meo lap trinh_tech24.vnMeo lap trinh_tech24.vn
Meo lap trinh_tech24.vnphiagame
 
OOP_02_Java can ban.pdf
OOP_02_Java can ban.pdfOOP_02_Java can ban.pdf
OOP_02_Java can ban.pdfssuserd01a5c
 
Giới thiệu ngôn ngữ lập trình C++
Giới thiệu ngôn ngữ lập trình C++Giới thiệu ngôn ngữ lập trình C++
Giới thiệu ngôn ngữ lập trình C++LAnhHuy4
 
Bài 2: Biến và toán tử - Giáo trình FPT
Bài 2: Biến và toán tử - Giáo trình FPTBài 2: Biến và toán tử - Giáo trình FPT
Bài 2: Biến và toán tử - Giáo trình FPTMasterCode.vn
 
Cac ham va thu tuc trong pascal
Cac ham va thu tuc trong pascalCac ham va thu tuc trong pascal
Cac ham va thu tuc trong pascalVõ Tâm Long
 
Powerpoint dạy hoc
Powerpoint dạy hocPowerpoint dạy hoc
Powerpoint dạy hocLong Tibbers
 
Session 4
Session 4Session 4
Session 4pnanhvn
 
Giáo trình vb.net
Giáo trình vb.netGiáo trình vb.net
Giáo trình vb.netHung Pham
 
Phần 6: Hàm
Phần 6: HàmPhần 6: Hàm
Phần 6: HàmHuy Rùa
 

Similaire à 01 ngon ngu_c#_phan_1 (20)

Meo lap trinh_tech24.vn
Meo lap trinh_tech24.vnMeo lap trinh_tech24.vn
Meo lap trinh_tech24.vn
 
OOP_02_Java can ban.pdf
OOP_02_Java can ban.pdfOOP_02_Java can ban.pdf
OOP_02_Java can ban.pdf
 
Giới thiệu ngôn ngữ lập trình C++
Giới thiệu ngôn ngữ lập trình C++Giới thiệu ngôn ngữ lập trình C++
Giới thiệu ngôn ngữ lập trình C++
 
Bài 2: Biến và toán tử - Giáo trình FPT
Bài 2: Biến và toán tử - Giáo trình FPTBài 2: Biến và toán tử - Giáo trình FPT
Bài 2: Biến và toán tử - Giáo trình FPT
 
Nmlt c06 ham_in
Nmlt c06 ham_inNmlt c06 ham_in
Nmlt c06 ham_in
 
Cac ham va thu tuc trong pascal
Cac ham va thu tuc trong pascalCac ham va thu tuc trong pascal
Cac ham va thu tuc trong pascal
 
Linq net
Linq net Linq net
Linq net
 
6. javascript basic
6. javascript basic6. javascript basic
6. javascript basic
 
Chuong 4
Chuong 4Chuong 4
Chuong 4
 
Powerpoint dạy hoc
Powerpoint dạy hocPowerpoint dạy hoc
Powerpoint dạy hoc
 
Nmlt c06 ham
Nmlt c06 hamNmlt c06 ham
Nmlt c06 ham
 
344444
344444344444
344444
 
Bai tap thuc hanh
Bai tap thuc hanhBai tap thuc hanh
Bai tap thuc hanh
 
Session 4
Session 4Session 4
Session 4
 
Giáo trình vb.net
Giáo trình vb.netGiáo trình vb.net
Giáo trình vb.net
 
Chuong 2
Chuong 2Chuong 2
Chuong 2
 
Phần 6: Hàm
Phần 6: HàmPhần 6: Hàm
Phần 6: Hàm
 
Lập trình hướng đối tượng - p2
Lập trình hướng đối tượng - p2Lập trình hướng đối tượng - p2
Lập trình hướng đối tượng - p2
 
Chuong1 c
Chuong1 c Chuong1 c
Chuong1 c
 
Chuong 2@ngon ngu c
Chuong 2@ngon ngu cChuong 2@ngon ngu c
Chuong 2@ngon ngu c
 

01 ngon ngu_c#_phan_1

  • 1. Lậ p trình trên môi trườ ng Windows Ngôn ngữ C# - Phần 1 Trần Duy Hoàng tdhoang@hcmus.edu.vn
  • 2. .Net Framework  4 ngôn ngữ : C#, VB.NET, C++.NET, Jscript.NET  CLR - Common Language Runtime  FCL – Framework Class Library  MSIL – Microsoft Intermediate Language ● B1 : dịch mã nguồn → MSIL ● B2 : MSIL → mã CLR thực thi → ứng dụng có ngôn ngữ khác với thư viện sử dụng
  • 3. .NET Framework  Môi trườ ng phát triển ● Nguồn mở Sharp Develop ● Microsoft Visual Studio .NET 2003 / 2005 / 2008  Phát triển ứng dụng ● Console ● Dll ● Windows form ● Web
  • 4. Vùng tên - Namespaces using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; using MyLibrary;
  • 5. Vùng tên - Namespaces  Namespace là 1 nhóm các lớp có mối liên quan ● Vd : System.IO, System.Collection, System.Data  Namespace chứa lớp và namespace con khác ● Vd : System.Data chứa Oledb, SqlClient, …  Namespace System chứa chứa nhiều lớp giao tiếp với hệ thống và các lớp công dụng chung
  • 6. Vùng tên - Namespaces  Toán tử chấm “.” ● Chỉ định tên lớp trong namespace System.Data.OleDb.OleDbConnection con = new …; ● Truy xuất dữ liệu phương thức của lớp int x = System.Convert.ToInt32(“123”);  Từ khóa using ● Khai báo namespace ta đang sử dụng using System.Data.OleDb; OleDbConnection con = new …;
  • 7. Kiểu dữ liệu  Một số kiểu định sẵn thông dụng Kiểu Kiểu .NET Kích thước Mô tả – giá trị bool Boolean 1 true hay false byte Byte 1 Không dấu (0..255) char Char 2 Mã ký tự Unicode float Single 4 Số thực (≈ ±1.5*10-45 .. ≈ ±3.4*1038) double Double 8 Số thực (≈ ±5.0*10-324 .. ≈ ±1.7*10308) double Double 8 Số thực (≈ ±5.0*10-324 .. ≈ ±1.7*10308)
  • 8. Kiểu dữ liệu  Kiểu chuỗi – String string myString = "Hello World";  Phươ ng thức ToString() string str = “So nghiem = ” + n.ToString();
  • 9. Kiểu dữ liệu Một số ký tự escape Escape Character  Sequence thông dụ ng ' Single quote " Double quote Backslash 0 Null a Alert b Backspace f Form feed n New line r Carriage return t Tab character v Vertical tab
  • 10. Chuyển đổi kiểu dữ liệu  Số thành chuỗi int so = 10; string chuoi = so.ToString();  Chuỗi thành số string chuoi = “12345”; double n = double.Parse(chuoi); double n = Convert.ToDouble(chuoi); int n = Convert.ToInt32(chuoi);
  • 11. Khai báo biến, hằng  Khai báo biến: int i; i = 0; int x = 10; y = 20; bool b = true;  Khai báo hằng: const int a = 20;
  • 12. Câu lệnh lặp  While while (l<r) { câu lệnh }  Do..While do { câu lệnh } while (l<r)  For for (int i=0; i<n; i++) { câu lệnh }
  • 13. Câu lệnh lặp  Foreach double[] arr = {1.0, 2.1, 3.5, 4.2, 5.3}; foreach (double temp in arr) { sum += temp; } for (int i=0; i<arr.Length; i++) { double temp = arr[i]; sum += temp; }
  • 14. Câu lệnh điều kiện  If..else  Switch if ( a => b ) switch (x) { { max = a; case 1 : … ; break; } case 2 : … ; break; else default : … ; break; { } max = b; }
  • 15. Các toán tử Category Operator Arithmetic +-*/% Logical & | ^ ~ && || ! String concatenation + Increment and decrement ++ -- Assignment = += -= *= /= %= &= |= ^= <<= >>= Shortcut operator ++ , -- Shortcut operator ++ , --
  • 16. Viết ghi chú  // : ghi chú trên một dòng int len; // chieu dai mang  /* … */ : ghi chú trên nhiều dòng /* Nguoi tao : ... Ngay tao : … … */ void int HamMoi (...)
  • 17. Các phép toán  Thông qua lớp Math  Một số hàm thông dụng ● Lấy giá trị tuyệt đối ➢ Int x = Math.Abs(-16); ● Lũy thừa ➢ Int x = Math.Pow(2,3); // x = 2^3 ● Lấy căn ➢ Double x = Math.Sqrt(4); // x = 2; ● Làm tròn ➢ Double x = Math.Round(0.1234,2) // x= 0.12
  • 18. Lậ p trình trên môi trườ ng Windows Môi trường VS2005 Trần Duy Hoàng tdhoang@hcmus.edu.vn
  • 19. Cài đặt Visual Studio B ướ c 1 Cài đặt môi trườ ng .NET 2005 B ướ c 2 Cài đặt thư vi ện MSDN
  • 20. Làm việc với Solution Solution HelloWorld Project 1 MyLibrary Project 2 HelloWorld Project 2 MyLibrary: ứng dụng dll HelloWorld: ứng dụng Console
  • 21. Tạo mới một project  Mở VS2005  Menu File → New → Project... ● Project type : chọn Visual C# ● Template : Window Application ● Name : tên dự án ● Location : nơi lưu dự án
  • 22. Tạo mới một project
  • 23. Tạo mới một project
  • 24. Tạo mới một project <<TextBox>> Name : txtSo1 <<Button>> Name : btnCong <<Label>> Text : Cộng Text : Tổng
  • 25. Tạo mới một project  Viết code xử lý cho Button “Cộng” ● Double click vào button cộng ● Màn hình viết code sẽ xuất hiện
  • 26. Tạo mới một project private void btnCong_Click(object sender, EventArgs e) { // Bước 1 : đọc dữ liệu từ control int so1 = Convert.ToInt32(txtSo1.Text); int so2 = Convert.ToInt32(txtSo2.Text); // Bước 2 : xử lý int tong = so1 + so2; // Bước 3 : xuất kết quả ra control txtTong.Text = tong.ToString(); }
  • 27. Tạo mới một project  Chạ y chươ ng trình ● Bấm F5 để chạy chương trình
  • 28. Thả o luậ n 02/15/11 Trần Duy Hoàng - tdhoang@fit.hcmus.edu.vn 28/10