intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Bài giảng Kiểu cấu trúc - Hoàng Thân Anh Tuấn

Chia sẻ: Lavie Lavie | Ngày: | Loại File: PPT | Số trang:16

76
lượt xem
2
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Bài giảng Kiểu cấu trúc do Hoàng Thân Anh Tuấn biên soạn nhằm cung cấp cho các bạn những kiến thức về kiểu cấu trúc; khai báo kiểu cấu trúc; kiểu cấu trúc lồng nhau; sử dụng kiểu cấu trúc. Mời các bạn tham khảo bài giảng để bổ sung thêm kiến thức về lĩnh vực này.

Chủ đề:
Lưu

Nội dung Text: Bài giảng Kiểu cấu trúc - Hoàng Thân Anh Tuấn

  1. Kiểu cấu trúc Hoàng Thân Anh Tuấn Khoa Toán – Tin học Đại học Sư phạm  TPHCM 1
  2. Nội dung  Giới thiệu kiểu cấu trúc  Khai báo kiểu cấu trúc  Kiểu cấu trúc lồng nhau  Sử dụng kiểu cấu trúc  Bài tập 2
  3. Giới thiệu kiểu cấu trúc  Mô tả đối tượng là nhân viên, thông tin bao  gồm: họ tên, quê quán, năm sinh, thâm niên  công tác, địa chỉ, giới tính   Thể hiện trên máy tính, với mỗi thông tin  chúng ta cần một biến tương ứng   để mô tả một nhân viên chúng ta cần 6  biến: string hoten, quequan, diachi; int namsinh, TNCT, gioitinh; 3
  4. Giới thiệu kiểu cấu trúc(tt)  Mô tả hai nhân viên  cần 12 biến string hoten1, quequan1, diachi1; int namsinh1, TNCT1, gioitinh1; string hoten2, quequan2, diachi2; int namsinh2, TNCT2, gioitinh2;  Làm sao đặt lại năm sinh của nhân viên thứ  nhất ???  namsinh1 = 1970;  Làm sao đặt lại quê quán của nhân viên thứ  hai ???  quequan2 = “Quảng Bình”; 4
  5. Giới thiệu kiểu cấu trúc(tt)  Nhận xét:  Tập các biến string hoten1, quequan1, diachi1; int namsinh1, TNCT1, gioitinh1 thuộc về cùng một  nhóm (nhân viên thứ nhất)  Tập các biến string hoten2, quequan2, diachi2; int namsinh2, TNCT2, gioitinh2 thuộc về cùng một  nhóm (nhân viên thứ hai)  Cần cơ chế hỗ trợ điều này  gom nhóm các biến  lại với nhau để dễ hiểu, dễ kiểm soát. 5
  6. Giới thiệu kiểu cấu trúc  Một cấu trúc là một tập hợp các biến có liên  quan với nhau có thể khác kiểu.  Trong C++, kiểu cấu trúc là kiểu do người  dùng định nghĩa. Nó được sử dụng như là  các kiểu cơ bản khác của C++.  Sự khác nhau giữa cấu trúc và mảng:  Mảng = tập hợp các biến cùng kiểu  cấu trúc =  tập hợp các biến có thể khác kiểu.  Tất cả các biến trong mảng chỉ có một tên  các  biến trong cấu trúc có thể khác tên. 6
  7. Khai báo kiểu cấu trúc  Cú pháp struct Tên_Cấu_trúc{ Kiểu thành_phần_1; Kiểu thành_phần_2; … }; Hoặc theo C typedef struct { // các thành phần của struct } Tên_Cấu_trúc; 7
  8. Ví dụ  Tạo kiểu cấu trúc NhanVien struct NhanVien{ Tên cấu trúc  string hoten, quequan, diachi; NhanVien  int namsinh, TNCT, gioitinh; có 6 thành  }; phần  Tạo kiểu cấu trúc Diem struct Diem{ Tên cấu trúc  int x; Diem có 2  int y; thành phần }; 8
  9. Ví dụ  Tạo kiểu cấu trúc mô tả đối tượng ngày struct Ngay{ Tên cấu trúc  int ngay; Ngay có 3  int thang; thành phần int nam; };  Tạo kiểu cấu trúc mô tả đối tượng phân số struct PhanSo{ int tu; PhanSo có 2  Tên cấu trúc  int mau; thành phần }; 9
  10. Sử dụng kiểu cấu trúc  Tên_Cấu_trúc trở thành một kiểu do người dùng định nghĩa và có  thể được sử dụng để định nghĩa biến như các kiểu khác của C++ Tên_Cấu_trúc Tên_Biến;  Để truy cập đến một thành phần của biến cấu trúc dùng toán tử  “.” Tên_Biến_Cấu_Trúc.Tên_Thành_Phần  Ví dụ: NhanVien nv1, nv2; nv1.namsinh = 1970; // đặt năm sinh cho nhân viên 1 nv2.quequan = “Quang Binh”; // đặt quê quán cho nhân viên 2 hoten quequan Diachi hoten quequan Diachi namsinh TNCT gioitinh namsinh TNCT gioitinh nv1 nv2 10
  11. Ví dụ Diem p1, p2; x=10 y=5 p1 p1.x = 10; p1.y = 5; p2.x = 7;   p2.y = 8; x=7 y=8 p2 Ngay n1, n2; ngay=10 thang=10 nam=1954 n1.ngay = 10; n1.thang = 10;  n1 n1.nam = 1954; n2.ngay = 6; n1.thang = 10;  n1.nam = 2005; ngay=6 thang=10 nam=2005 n2 11
  12. Ví dụ PhanSo ps1, ps2; tu=1 mau=3 ps1 ps1.tu = 1; ps1.mau = 3; ps2.tu = 7; ps2.mau = 13; tu=7 mau=13 ps2 cin >> ps1.tu >> ps1.mau; Biến kiểu int Biến kiểu int 12
  13. Sử dụng kiểu cấu trúc  Có thể gán hai biến thuộc cùng một kiểu cấu  trúc cho nhau PhanSo ps1, ps2; ps1.tu = 1; ps1.mau = 3; ps2 = ps1; //ps2.tu = ps1.tu; ps2.mau = ps1.mau; Ngay n1, n2; n1.ngay = 10; n1.thang = 10; n1.nam = 1954; n2 = n1; // ??? 13
  14. Kiểu cấu trúc lồng nhau  Một khi kiểu cấu trúc đã được định nghĩa thì kiểu  cấu trúc có thể được sử dụng như bất kỳ kiểu cơ  bản nào của C++  trong định nghĩa kiểu cấu trúc  mới có thể sử dụng kiểu cấu trúc cũ. struct NhanVien{ string hoten, quequan, diachi; int namsinh, TNCT, gioitinh; }; struct PhongBan{ NhanVien truongphong; int soNV; string tenphong; }; 14
  15. Mảng các đối tượng cấu trúc struct PhongBan{ NhanVien truongphong; int soNV; string tenphong; NhanVien DSNhanVien[100]; }; 15
  16. Bài tập 1) Viết bài tập phân số sử dụng kiểu cấu trúc 2) Viết các kiểu cấu trúc mô tả các đối tượng  điểm, đoạn thẳng, tam giác, hình chữ nhật,  hình thang, đa giác. 3) Viết các hàm tính chu vi của các đối tượng  trên. 16
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2