Danh mục

Bài giảng Lập trình C nâng cao‎: Chương 5 - Trần Minh Thái

Số trang: 22      Loại file: pptx      Dung lượng: 148.26 KB      Lượt xem: 11      Lượt tải: 0    
10.10.2023

Xem trước 3 trang đầu tiên của tài liệu này:

Thông tin tài liệu:

Chương 5 của bài giảng Lập trình C nâng cao ‎trình bày về kiểu dữ liệu có cấu trúc. Chương này gồm có những nội dung sau đây: Khái niệm về kiểu dữ liệu có cấu trúc, khai báo kiểu dữ liệu có cấu trúc, cách truy xuất thành phần bên trong cấu trúc, xử lý cấu trúc đơn, xử lý mảng có cấu trúc,...và một số bài tập.
Nội dung trích xuất từ tài liệu:
Bài giảng Lập trình C nâng cao‎: Chương 5 - Trần Minh Thái Chương 5. Kiểu dữ liệu có cấu trúcTRẦNMINHTHÁIEmail:minhthai@itc.edu.vnWebsite:www.minhthai.edu.vn Cập nhật: 08 tháng 04 năm 2015 Nội dung#2 • Khái niệm • Khai báo • Cách truy xuất thành phần bên trong cấu trúc • Xử lý cấu trúc đơn • Xử lý mảng có cấu trúc • Bài tập Khái niệm#3 Kiểu dữ liệu có cấu trúc là kiêu ̉ dữ liêu ̣ do lập trìnhviêntựđinhnghi ̣ ̃abằngcáchgomnhómcác ̉ ữliêuc kiêud ̣ ơbanco ̉ ̣ ́sẵntrongCthànhmôtkiêu ̉ dữliêuph ̣ ứchợpgồmnhiềuthànhphần • Khaibáo structtên_struct { khaibáocácthuộctính; }; typedefstructtên_structTênKDL; Khái niệm#4 • Vídụkhaibáokiểudữliệulưuthôngtincủangày: structttDate { charthu[10]; intngay; intthang; intnam; }; typedefstructttDateDate; Truy cập các thuộc tính cấu trúc#5 • Biếnkiểucấutrúc TÊNKDLtên_biến; tên_biến.tên_thuộc_tính; • Vídụ Datex; x.ngay=5; Truy cập các thuộc tính cấu trúc#6 • Biếncontrỏkiểucấutrúc TÊNKDL*tên_biến_con_trỏ; tên_biến_con_trỏ>tên_thuộc_tính; Vídụ: Date*x; x=(Date*)malloc(sizeof(Date)); x>ngay=5; Khai báo đệ quy#7 structtên_struct { khaibáocácthuộctính; structtên_struct*tên_thuộc_tính_đệ_qui; }; Khai báo đệ quy#8 • Vídụ: structttNode { intkey; structttNode*pNext; }; Ví dụ#9 Viếtchươngtrìnhnhâpva ̣ ̣ ̣ ̉ ̀otoađôhaiđiêmtrong ̣ ̉ mătphăngva ̉ ̣ ̣ ̀y ̀tínhtônghaitoađôna //FileKhaibao.h #include structttDiem { intx; inty; }; typedefstructttDiemDiem; Ví dụ#10 //Filecaidat.cpp #includekhaibao.h voidNhap(Diem&d) { printf(“ Nhapvaotoadodiem ”); printf(“Hoanhdo:“); scanf(“%d”,&d.x); printf(“Tungdo:”); scanf(“%d”,&d.y); } Ví dụ#11 voidXuat(Diemd) { printf(“ Toadodiem:(%d,%d)”,d.x,d.y); } DiemTong(Diemd1,Diemd2) { Diemtemp; temp.x=d1.x+d2.x; temp.y=d1.y+d2.y; returntemp; Ví dụ //Filemain.cpp#12 #include”khaibao.h” voidmain() { DiemA,B,AB; //khaibao3diemA,B,AB; Nhap(A); Xuat(A); Nhap(B); Xuat(B); printf(“ Tongcuahaidiemvuanhapla:”); AB=Tong(A,B); Bài tập 1#13 Viếtchươngtrìnhnhậpvàothôngtincủamộtsinh viêngồm: • Mãsốsinhviên • Họvàtên • Điểmgiữakỳ(GK) • Điểmthựchành(TH) • Điểmlýthuyết(LT) Tínhđiểmtổngkếtmôntheocôngthức: GK*10%+TH*30%+LT*60% Bài tập 2#14 Sửdụngkiểudữliệucócấutrúcđểkhaibáovàviết chương trình (theo phương pháp thủ tục hàm) gồm cácchứcnăngsau: 1. Nhậpvào2phânsố 2. Tính tổng và tích hai phân số (kết quả phải là phânsốtốigiản) 3. Xuấtkếtquảramànhình Bài tập 3#15 Viếtchươngtrìnhnhậpvào2thờigiant1vàt2(thông tinthờigiangồm:giờ,phútvàgiây);tínhkhoảngcách giữat1vàt2(đơnvịtínhbằnggiây) Mảng cấu trúc#16 • Cáchkhaibáotươngtựnhưmangmôtchiê ̉ ̣ ̉ ̀u(Kiêu dữliêubâygi ̣ ờlàkiêud ̉ ữliêuco ̣ ́cấutrúc). • ̣ phần tử trong mang Cách truy câp ̉ cũng như truy ̣ ̉ ̣ câptrênmangmôtchiều.Nhưngdotừngphầntử ̉ cấu trúc nên phai có kiêu ̉ chỉ đinh ̣ rõ cần lấy thành phần nào, tức là phai ̉ truy câp ̣ đến thàn ...

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