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

Bài giảng Kỹ thuật lập trình: Dữ liệu có cấu trúc - GV. Hà Đại Dương

Chia sẻ: Hetiheti Hetiheti | Ngày: | Loại File: PDF | Số trang:12

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

Bài giảng Kỹ thuật lập trình do GV. Hà Đại Dương biên soạn trình bày về dữ liệu có cấu trúc, cụ thể: kiểu có cấu trúc (structure), danh sách liên kết (linked list), hàng đợi (Queue) và ngăn xếp (Stack). Mời các bạn cùng tham khảo.

Chủ đề:
Lưu

Nội dung Text: Bài giảng Kỹ thuật lập trình: Dữ liệu có cấu trúc - GV. Hà Đại Dương

10/25/2016<br /> <br /> Kỹ thuật lập trình<br /> <br /> Tuần 11 - Dữ liệu có cấu trúc<br /> Giáo viên: Hà Đại Dương<br /> duonghd@mta.edu.vn<br /> <br /> 10/25/2016<br /> <br /> 1<br /> <br /> Vấn đề<br /> • Các đối tượng phức tạp như:<br /> – Điểm trên mặt phẳng, Phân số, Ngày (tháng, năm)<br /> – Sinh viên<br /> <br /> Thì mô tả (dữ liệu) như thế nào?<br /> • Mô tả mỗi loại đối đó dưới dạng một kiểu dữ<br /> liệu có cấu trúc.<br /> • Mỗi thành phần của đối tượng, ví dụ toạ độ x,<br /> toạ độ y của 1 điểm gọi là trường (field).<br /> 10/25/2016<br /> <br /> 2<br /> <br /> Nội dung<br /> •<br /> •<br /> •<br /> •<br /> <br /> Kiểu có cấu trúc (structure)<br /> Danh sách liên kết (linked list)<br /> Hàng đợi (Queue)<br /> Ngăn xếp (Stack)<br /> <br /> 10/25/2016<br /> <br /> 3<br /> <br /> 1<br /> <br /> 10/25/2016<br /> <br /> Kiểu có cấu trúc (structure)<br /> <br /> 10/25/2016<br /> <br /> 4<br /> <br /> Khai báo kiểu cấu trúc<br /> • Cú pháp 1<br /> struct Tên_cấu_trúc<br /> {<br /> Kiểu Tên_trường_1;<br /> Kiểu Tên_trường_2;<br /> ……..<br /> Kiểu Tên_trường_n;<br /> };<br /> <br /> 10/25/2016<br /> <br /> 5<br /> <br /> Khai báo kiểu cấu trúc<br /> • Cú pháp 2<br /> typedef struct<br /> {<br /> Kiểu Tên_trường_1;<br /> Kiểu Tên_trường_2;<br /> ……..<br /> Kiểu Tên_trường_n;<br /> } Tên_cấu_trúc;<br /> <br /> 10/25/2016<br /> <br /> 6<br /> <br /> 2<br /> <br /> 10/25/2016<br /> <br /> Trong đó<br /> •<br /> •<br /> •<br /> •<br /> <br /> struct, typedef struct: từ khoá<br /> Tên_cấu_trúc: Tên cấu trúc cần định nghĩa<br /> Kiểu: Kiểu dữ liệu đã có<br /> Tên_trường_k: Tên trường (dữ liêu)<br /> <br /> 10/25/2016<br /> <br /> 7<br /> <br /> Ví dụ<br /> <br /> 10/25/2016<br /> <br /> 8<br /> <br /> Khai báo biến kiểu cấu trúc<br /> • Đối với cấu trúc khai báo theo cách 1:<br /> struct Tên_cấu_trúc Tên_biến,..;<br /> • Đối với các cấu khai báo theo cách 2:<br /> Tên_cấu_trúc Tên_biến, ..;<br /> • Ví dụ:<br /> struct DiemPhang A, B, C;<br /> struct PhanSo<br /> P, Q;<br /> NgayThang<br /> NS;<br /> 10/25/2016<br /> <br /> 9<br /> <br /> 3<br /> <br /> 10/25/2016<br /> <br /> Truy cập các trường của biến<br /> • Với các biến thường (không phải con trỏ) cú<br /> pháp:<br /> Tên_biến.Tên_trường<br /> • Ví dụ với biến: NS (NgayThang)<br /> NS.ngay<br /> NS.thang<br /> NS.nam<br /> 10/25/2016<br /> <br /> 10<br /> <br /> Ví dụ 1<br /> • Viết chương trình cho phép nhập vào toạ độ 3<br /> đỉnh của tam giác ABC, tính khoảng cách A, B.<br /> <br /> 10/25/2016<br /> <br /> 11<br /> <br /> Khai báo biến cấu trúc<br /> Truy cập trường<br /> <br /> 10/25/2016<br /> <br /> 12<br /> <br /> 4<br /> <br /> 10/25/2016<br /> <br /> Ví dụ 2<br /> • Viết chương trình cho phép nhập vào 2 phân<br /> số A, B; tính và in kết quả phép cộng 2 phân số<br /> đó.<br /> • Viết chương trình (15 phút)<br /> <br /> 10/25/2016<br /> <br /> 13<br /> <br /> 10/25/2016<br /> <br /> 14<br /> <br /> Biến cấu trúc dạng con trỏ<br /> • Như các biến khác, các biến có cấu trúc cũng<br /> có thể khai báo dạng con trỏ.<br /> • Đối với cấu trúc khai báo theo cách 1:<br /> struct Tên_cấu_trúc *Tên_biến,..;<br /> • Đối với các cấu khai báo theo cách 2:<br /> Tên_cấu_trúc *Tên_biến, ..;<br /> 10/25/2016<br /> <br /> 15<br /> <br /> 5<br /> <br />
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

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