Bài giảng Nhập môn lập trình - Chương 10: Kiểu cấu trúc
Số trang: 32
Loại file: ppt
Dung lượng: 1.73 MB
Lượt xem: 14
Lượt tải: 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 - Chương 10 giới thiệu về kiểu cấu trúc trong ngôn ngữ lập trình. Trong chương này người học cần nắm bắt những nội dung sau: 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). 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 - Chương 10: Kiểu cấu trúc &&VCVC BB BB Nộidung 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 NMLTCấutrúc 1 &&VCVC BB BB Đặtvấ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 : ký tự Điểm Toán, Lý, Hóa : số thực Yêu cầu Lưu thông tin n SV? Tuyền thông tin n SV vào hàm? NMLTCấutrúc 2 &&VCVC BB BB Đặtvấ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; // ‘y’ Nam, ‘n’ 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); NMLTCấutrúc 3 &&VCVC BB BB Đặtvấ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 NMLTCấutrúc 4 &&VCVC BB BB Khaibáokiểucấutrúc Cú pháp struct { ; … ; }; Ví dụ struct DIEM { int x; int y; }; NMLTCấutrúc 5 &&VCVC BB BB Khaibáobiếncấutrúc Cú pháp tường minh struct { ; … ; } , ; Ví dụ struct DIEM { int x; int y; } diem1, diem2; NMLTCấutrúc 6 &&VCVC BB BB Khaibáobiếncấutrú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 NMLTCấutrúc 7 &&VCVC BB BB Sửdụngtypedef Cú pháp typedef struct { ; … ; } ; ; Ví dụ NMLTCấutrúc 8 &&VCVC BB BB Khởitạochobiếncấutrúc Cú pháp tường minh struct { ; … ; } = {,…,}; Ví dụ struct DIEM { int x; int y; } diem1 = {2912, 1706}, diem2; NMLTCấutrúc 9 &&VCVC BB BB Truyxuấtdữliệukiểucấutrú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); NMLTCấutrúc 10 &&VCVC BB BB Gándữliệukiểucấutrú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; NMLTCấutrúc 11 &&VCVC BB BB Cấutrúcphứctạ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; NMLTCấutrúc 12 &&VCVC BB BB Cấutrúcphứctạ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; NMLTCấutrúc 13 &&VCVC BB BB Cấutrúcphứctạp Cấu trúc đệ quy (tự trỏ) struct PERSON { char hoten[30]; struct PERSON *father, *mother; }; struct NODE { int value; struct NODE *pNext; }; NMLTCấutrúc 14 &&VCVC BB BB Cấutrúcphứctạp Thành phần của cấu trúc có kích thước theo bit struct bit_fields { int bit_0 : 1; int bit_1_to_4 : 4; int bit_5 : 1; int bit_6_to_15 : 10; }; 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 ...
Nội dung trích xuất từ tài liệu:
Bài giảng Nhập môn lập trình - Chương 10: Kiểu cấu trúc &&VCVC BB BB Nộidung 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 NMLTCấutrúc 1 &&VCVC BB BB Đặtvấ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 : ký tự Điểm Toán, Lý, Hóa : số thực Yêu cầu Lưu thông tin n SV? Tuyền thông tin n SV vào hàm? NMLTCấutrúc 2 &&VCVC BB BB Đặtvấ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; // ‘y’ Nam, ‘n’ 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); NMLTCấutrúc 3 &&VCVC BB BB Đặtvấ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 NMLTCấutrúc 4 &&VCVC BB BB Khaibáokiểucấutrúc Cú pháp struct { ; … ; }; Ví dụ struct DIEM { int x; int y; }; NMLTCấutrúc 5 &&VCVC BB BB Khaibáobiếncấutrúc Cú pháp tường minh struct { ; … ; } , ; Ví dụ struct DIEM { int x; int y; } diem1, diem2; NMLTCấutrúc 6 &&VCVC BB BB Khaibáobiếncấutrú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 NMLTCấutrúc 7 &&VCVC BB BB Sửdụngtypedef Cú pháp typedef struct { ; … ; } ; ; Ví dụ NMLTCấutrúc 8 &&VCVC BB BB Khởitạochobiếncấutrúc Cú pháp tường minh struct { ; … ; } = {,…,}; Ví dụ struct DIEM { int x; int y; } diem1 = {2912, 1706}, diem2; NMLTCấutrúc 9 &&VCVC BB BB Truyxuấtdữliệukiểucấutrú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); NMLTCấutrúc 10 &&VCVC BB BB Gándữliệukiểucấutrú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; NMLTCấutrúc 11 &&VCVC BB BB Cấutrúcphứctạ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; NMLTCấutrúc 12 &&VCVC BB BB Cấutrúcphứctạ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; NMLTCấutrúc 13 &&VCVC BB BB Cấutrúcphứctạp Cấu trúc đệ quy (tự trỏ) struct PERSON { char hoten[30]; struct PERSON *father, *mother; }; struct NODE { int value; struct NODE *pNext; }; NMLTCấutrúc 14 &&VCVC BB BB Cấutrúcphứctạp Thành phần của cấu trúc có kích thước theo bit struct bit_fields { int bit_0 : 1; int bit_1_to_4 : 4; int bit_5 : 1; int bit_6_to_15 : 10; }; 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 ...
Tìm kiếm theo từ khóa liên quan:
Nhập môn lập trình Bài giảng Nhập môn lập trình Ngôn ngữ lập trình Kiểu cấu trúc Khai báo kiểu cấu trúc Truy xuất kiểu cấu trúcTài liệu liên quan:
-
Đề cương chi tiết học phần Cấu trúc dữ liệu và giải thuật (Data structures and algorithms)
10 trang 323 0 0 -
Giáo trình Lập trình hướng đối tượng: Phần 2
154 trang 278 0 0 -
Bài thuyết trình Ngôn ngữ lập trình: Hệ điều hành Window Mobile
30 trang 271 0 0 -
Kỹ thuật lập trình trên Visual Basic 2005
148 trang 270 0 0 -
114 trang 247 2 0
-
Giáo trình Lập trình cơ bản với C++: Phần 1
77 trang 235 0 0 -
Bài giảng Một số hướng nghiên cứu và ứng dụng - Lê Thanh Hương
13 trang 227 0 0 -
Giáo án Tin học lớp 11 (Trọn bộ cả năm)
125 trang 218 1 0 -
NGÂN HÀNG CÂU HỎI TRẮC NGHIỆM THIẾT KẾ WEB
8 trang 212 0 0 -
Bài tập lập trình Windows dùng C# - Bài thực hành
13 trang 188 0 0