tailieunhanh - Bài giảng Cơ sở lập trình 1: Chương 8 - Lê Cẩm Tú

Bài giảng Cơ sở lập trình 1: Chương 8 trình bày về kiểu dữ liệu cấu trúc. Các nội dung cụ thể trong chương này gồm có: Khái niệm kiểu cấu trúc (struct), các thao tác với cấu trúc, mảng cấu trúc, con trỏ cấu trúc, chuyển tham số struct cho hàm, Union. . | Chương 8 KIỂU DỮ LIỆU CẤU TRÚC (structure) Hà Nội – 2014 Nội dung Chương 8-Kiểu dữ liệu cấu trúc Khái niệm kiểu cấu trúc (struct) 1 Các thao tác với cấu trúc 2 Mảng cấu trúc 3 Chuyển tham số struct cho hàm 4 Union 5 10/04/2014 2 1. Khái niệm kiểu cấu trúc Kiểu cấu trúc (struct) Là kiểu dữ liệu bao gồm nhiều thành phần có kiểu khác nhau, mỗi thành phần được gọi là một trường (field) Kiểu cấu trúc và mảng: Các phần tử của mảng là cùng kiểu Các phần tử của cấu trúc có thể có kiểu khác nhau Struct được dùng để định nghĩa các kiểu dữ liệu mới Chương 8-Kiểu dữ liệu cấu trúc 10/04/2014 3/28 3 Khai báo cấu trúc Khai báo trực tiếp Ví dụ Khai báo cấu trúc NgayThang gồm 3 trường: ngày, tháng, năm Chương 8-Kiểu dữ liệu cấu trúc struct { ; ; } , ; struct NgayThang { unsigned char Ngay; unsigned char Thang; unsigned int Nam; } date1,date2; 10/04/2014 4/28 4 Khai báo cấu trúc (tt) Khai báo gián tiếp Ví dụ Khai báo kiểu cấu trúc NgayThang gồm 3 trường: ngày, tháng, năm 10/04/2014 Chương 8-Kiểu dữ liệu cấu trúc typedef struct { ; ; } ; typedef struct { unsigned char Ngay; unsigned char Thang; unsigned int Nam; } NgayThang; 5/28 Khai báo cấu trúc lồng nhau Ví dụ: Khai báo cấu trúc SinhVien gồm: mã sinh viên, họ tên, ngày sinh (thuộc kiểu ngaythang ở trên), giới tính, địa chỉ 10/04/2014 Chương 8-Kiểu dữ liệu cấu trúc struct SinhVien { char Masv[10]; char Hoten[40]; NgayThang NgaySinh; int Gioitinh; char Diachi[50]; }; typedef struct { char Masv[10]; char Hoten[40]; NgayThang NgaySinh; int Gioitinh; char Diachi[50]; } SinhVien; Khai báo trực tiếp Khai báo gián tiếp 6/28 Khai báo biến kiểu cấu trúc Khai báo biến kiểu cấu trúc Khai báo tương tự như khai báo biến thuộc kiểu dữ liệu chuẩn Với cách khai báo cấu trúc trực tiếp, có thể khai báo biến ngay khi khai báo cấu trúc Ví dụ 1: Khai báo biến A và B Ví dụ 2: Khai báo biến SV1,SV2 có kiểu .