Danh mục

Bài giảng Nhập môn lập trình: Dữ liệu kiểu cấu trúc - Nguyễn Đình Hưng

Số trang: 33      Loại file: pdf      Dung lượng: 491.12 KB      Lượt xem: 13      Lượt tải: 0    
Jamona

Phí tải xuống: 13,000 VND Tải xuống file đầy đủ (33 trang) 0
Xem trước 4 trang đầu tiên của tài liệu này:

Thông tin tài liệu:

Bài giảng Nhập môn lập trình - Dữ liệu kiểu cấu trúc cung cấp cho người học các kiến thức: Khái niệm kiểu cấu trúc (struct), khai báo và truy xuất kiểu cấu trúc, kiểu dữ liệu hợp nhất (union), bài tập. Mời các bạn cùng tham khảo nội dung chi tiết. Mời các bạn cùng tham khảo.
Nội dung trích xuất từ tài liệu:
Bài giảng Nhập môn lập trình: Dữ liệu kiểu cấu trúc - Nguyễn Đình HưngNHẬP MÔN LẬP TRÌNH DỮ LIỆU KIỂU CẤU TRÚC 1Nội dung 1 Khái niệm kiểu cấu trúc (struct) 2 Khai báo & truy xuất kiểu cấu trúc 3 Kiểu dữ liệu hợp nhất (union) 4 Bài tập Dữ liệu kiểu cấu trúc 2 Đặt vấn đề™Thông tin 1 SV ƒ MSSV : kiểu chuỗi ƒ Tên SV : kiểu chuỗi ƒ NTNS : kiểu chuỗi ƒ Phái : kiểu ký tự ƒ Điểm Toán, Lý, Hóa : kiểu số thực™Yêu cầu ƒ Lưu thông tin n SV? ƒ Truyền thông tin n SV vào hàm? Dữ liệu kiểu cấu trúc 3 Đặt vấn đề™Khai báo các biến để lưu trữ 1 SV ƒ char mssv[7]; // “0012078” ƒ char hoten[30]; // “Nguyen Van A” ƒ char ntns[8]; // “29/12/82” ƒ char phai; // ‘n’ ƒ float toan, ly, hoa;// 8.5 9.0 10.0™Truyền thông tin 1 SV cho hàm ƒ void xuat(char *mssv, char *hoten, char *ntns, char phai, float toan, float ly, float hoa); Dữ liệu kiểu cấu trúc 4 Đặt vấn đề™Nhận xét ƒ Đặt tên biến khó khăn và khó quản lý ƒ Truyền tham số cho hàm quá nhiều ƒ Tìm kiếm, sắp xếp, sao chép,… khó khăn ƒ Tốn nhiều bộ nhớ ƒ…™Ý tưởng ƒ Gom những thông tin của cùng 1 SV thành một kiểu dữ liệu mới => Kiểu struct Dữ liệu kiểu cấu trúc 5 Khai báo kiểu cấu trúc™Cú pháp struct { ; … ; };™Ví dụ struct DIEM { int x; int y; }; Dữ liệu kiểu cấu trúc 6 Khai báo biến cấu trúc™Cú pháp tường minh struct { ; … ; } , ;™Ví dụ struct DIEM { int x; int y; } diem1, diem2; Dữ liệu kiểu cấu trúc 7 Khai báo biến cấu trúc™Cú pháp không tường minh struct { ; … ; }; struct ;™Ví dụ struct DIEM { int x; int y; }; struct DIEM diem1, diem2;// C++ có thể bỏ struct Dữ liệu kiểu cấu trúc 8 Sử dụng typedef™Cú pháp typedef struct { ; … ; } ; ;™Ví dụ Dữ liệu kiểu cấu trúc 9 Khởi tạo cho biến cấu trúc™Cú pháp tường minh struct { ; … ; } = {,…,};™Ví dụ struct DIEM { int x; int y; } diem1 = {2912, 1706}, diem2; Dữ liệu kiểu cấu trúc 10 Truy xuất dữ liệu kiểu cấu trúc™Đặc điểm ƒ Không thể truy xuất trực tiếp ƒ Thông qua toán tử thành phần cấu trúc . hay còn gọi là toán tử chấm (dot operation) .™Ví dụ struct DIEM { int x; int y; } diem1; printf(“x = %d, y = %d”, diem1.x, diem1.y); Dữ liệu kiểu cấu trúc 11 Gán dữ liệu kiểu cấu trúc™Có 2 cách = ; . = ;™Ví dụ struct DIEM { int x, y; } diem1 = {2912, 1706}, diem2; … diem2 = diem1; diem2.x = diem1.x; diem2.y = diem1.y * 2; Dữ liệu kiểu cấu trúc 12 Cấu trúc phức tạp™Thành phần của cấu trúc là cấu trúc khác struct DIEM { int x; int y; }; struct HINHCHUNHAT { struct DIEM traitren; struct DIEM phaiduoi; } hcn1; … hcn1.traitren.x = 2912; hcn1.traitren.y = 1706; Dữ liệu kiểu cấu trúc 13 Cấu trúc phức tạp™Thành phần của cấu trúc là mảng struct SINHVIEN { char hoten[30]; float toan, ly, hoa; } sv1; … strcpy(sv1.hoten, “Nguyen Van A”); sv1.toan = 10; sv1.ly = 6.5; sv1.hoa = 9; Dữ liệu kiểu cấu trúc 14 Cấu trúc phức tạp™Cấu trúc đệ quy (tự trỏ) struct PERSON { char hoten[30]; struct PERSON *father, *mother; }; struct NODE { int value; struct NODE *pNext; }; Dữ liệu kiểu cấu trúc ...

Tài liệu được xem nhiều: