Mẫu tin và mảng hai chiều pps

16 235 0
Mẫu tin và mảng hai chiều pps

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

M M ẫ ẫ u tin v u tin v à à m m ả ả ng hai chi ng hai chi ề ề u u Nguy Nguy ễ ễ n Đông H n Đông H à à Khoa CNTT Khoa CNTT – – ĐH KHTN ĐH KHTN V V í í d d ụ ụ   M M ẫ ẫ u tin bi u tin bi ể ể u di u di ễ ễ n t n t ọ ọ a đ a đ ộ ộ m m ộ ộ t đi t đi ể ể m g m g ồ ồ m 2 m 2 th th à à nh ph nh ph ầ ầ n: x, y n: x, y typedef struct{ int x; int y; }TOADO; M M ẫ ẫ u tin u tin  Một mẫu tin (structure) là một tập hợp của một hoặc nhiều biến nhóm lại dưới một tên duy nhất để dễ thao tác. Các biến trong mẫu tin có thể khác nhau về kiểu dữ liệu.  Mỗi biến trong mẫu tin có thể thuộc bất kỳ kiểu dữ liệu nào, kể cả mảng và mẩu tin. V V í í d d ụ ụ khai b khai b á á o m o m ẫ ẫ u tin u tin  Kiểu dữ liệu lưu trữ điểm và tam giác trong mặt phẳng typedef struct{ int x, y; }POINT; typedef struct{ POINT A, B, C; }TRIANGLE; V V í í d d ụ ụ khai b khai b á á o m o m ẫ ẫ u tin u tin  Kiểu dữ liệu lưu trữ thông tin một học sinh cùng với điểm thi 3 môn Toán, Lý, Hóa typedef struct{ char MaHS[11]; char Ho[31]; char Ten[8]; float DiemToan, DiemLy, DiemHoa; }HOCSINH; S S ử ử d d ụ ụ ng m ng m ẫ ẫ u tin u tin   C C ó ó th th ể ể d d ù ù ng m ng m ẫ ẫ u tin như l u tin như l à à m m ộ ộ t ki t ki ể ể u d u d ữ ữ li li ệ ệ u u trong chương tr trong chương tr ì ì nh. nh.   S S ử ử d d ụ ụ ng d ng d ấ ấ u ch u ch ấ ấ m ( m ( .) .) đ đ ể ể truy xu truy xu ấ ấ t đ t đ ế ế n t n t ừ ừ ng ng th th à à nh ph nh ph ầ ầ n trong m n trong m ẫ ẫ u tin u tin POINT d1, d2, d3; TRIANGLE tg1, tg2; d1.x = 100; d2.y = 200; tg1.A = d1; printf(“Hoanh do diem 1 la: %d”,d1.x); B B à à i t i t ậ ậ p v p v í í d d ụ ụ   B B à à i 2 i 2 chương chương 5: 5: Nh Nh ậ ậ p v p v à à o 1 danh s o 1 danh s á á ch n ch n quy quy ể ể n s n s á á ch (1 <= n <= 25), m ch (1 <= n <= 25), m ỗ ỗ i quy i quy ể ể n s n s á á ch ch g g ồ ồ m c m c á á c thông tin: mã s c thông tin: mã s á á ch, tên s ch, tên s á á ch, tên t ch, tên t á á c c gi gi ả ả , , năm xu năm xu ấ ấ t b t b ả ả n v n v à à gi gi á á ti ti ề ề n. n.   In ra m In ra m à à n h n h ì ì nh thông tin chi ti nh thông tin chi ti ế ế t, c t, c á á c quy c quy ể ể n xu n xu ấ ấ t t b b ả ả n trư n trư ớ ớ c 1975, gi c 1975, gi á á l l ớ ớ n hơn n hơn 1000. 1000.   Nh Nh ậ ậ p v p v à à o tên c o tên c ủ ủ a m a m ộ ộ t t t t á á c gi c gi ả ả , in ra thông tin chi , in ra thông tin chi ti ti ế ế t v t v ề ề c c á á c quy c quy ể ể n s n s á á ch c ch c ủ ủ a t a t á á c gi c gi ả ả đ đ ó ó Hư Hư ớ ớ ng gi ng gi ả ả i i   V V ì ì m m ỗ ỗ i quy i quy ể ể n s n s á á ch bao g ch bao g ồ ồ m nhi m nhi ề ề u thông tin, u thông tin, d d ữ ữ li li ệ ệ u quy u quy ể ể n s n s á á ch ph ch ph ả ả i lưu tr i lưu tr ữ ữ b b ằ ằ ng m ng m ẩ ẩ u tin. u tin. typedef struct{ int ma_sach; char ten_sach[20]; char ten_tac_gia[20]; int nam_xuat_ban; long gia_tien; }SACH; Hư Hư ớ ớ ng gi ng gi ả ả i i   D D ù ù ng m ng m ả ả ng 1 chi ng 1 chi ề ề u đ u đ ể ể ch ch ứ ứ a n quy a n quy ể ể n s n s á á ch. ch. M M ả ả ng khai b ng khai b á á o c o c ó ó k k í í ch thư ch thư ớ ớ c t c t ố ố i đa l i đa l à à 25. 25. SACH danh_sach[25]; Hư Hư ớ ớ ng gi ng gi ả ả i i   In ra m In ra m à à n h n h ì ì nh thông tin chi ti nh thông tin chi ti ế ế t, c t, c á á c quy c quy ể ể n n xu xu ấ ấ t b t b ả ả n trư n trư ớ ớ c 1975, gi c 1975, gi á á l l ớ ớ n hơn n hơn 1000. 1000. void XuatSachTheoYeuCau(SACH mang[25], int n) { int i = 0; for(i = 0; i < n ; i++) { if(mang[i].nam_xuat_ban <1975 && mang[i].gia_tien > 1000) XuatSach(mang[i]); } } [...]... màn hình thông tin chi tiết, các quyển xuất bản trước 1975, giá lớn hơn 1000 void TimSach(SACH mang[25], int n) { /* Bien s chua ten tac gia can tim */ for(i = 0; i < n; i++) { if(strcmp(s,mang[i].ten_tac_gia)==0) XuatSach(mang[i]); } } Kiểu mảng 2 chiều Khai báo mảng 2 chiều: /* Tạo mảng 2 chiều có 3 dòng, 5 cột */ int a[3][5]; 0 1 2 3 4 1 2 3 4 5 2 3 4 5 6 Truy xuất phần tử của mảng 2 chiều Gán giá... 3 4 1 2 3 4 5 2 3 4 5 6 Truy xuất phần tử của mảng 2 chiều Gán giá trị cho từng phần tử a[0][1] = 6; a[1][2] = 9; scanf(“%d”,&a[0][2]); Lấy giá trị phần tử của mảng 2 chiều: x = a[0][0]; printf(“Dong 0, cot 1: %d”, a[0][1]); Ví dụ nhập mảng 2 chiều void NhapMang(int mang[NMAX][NMAX], int *sodong, int *socot) { int i,j; printf("\nNhap so dong cua mang 2 chieu:"); scanf("%d", sodong); printf("\nNhap so . liệu.  Mỗi biến trong mẫu tin có thể thuộc bất kỳ kiểu dữ liệu nào, kể cả mảng và mẩu tin. V V í í d d ụ ụ khai b khai b á á o m o m ẫ ẫ u tin u tin  Kiểu dữ liệu lưu trữ điểm và tam giác trong. x; int y; }TOADO; M M ẫ ẫ u tin u tin  Một mẫu tin (structure) là một tập hợp của một hoặc nhiều biến nhóm lại dưới một tên duy nhất để dễ thao tác. Các biến trong mẫu tin có thể khác nhau về. M M ẫ ẫ u tin v u tin v à à m m ả ả ng hai chi ng hai chi ề ề u u Nguy Nguy ễ ễ n Đông H n Đông H à à Khoa CNTT Khoa CNTT – – ĐH KHTN ĐH KHTN V V í í d d ụ ụ   M M ẫ ẫ u tin bi u tin bi ể ể u

Ngày đăng: 31/07/2014, 14:22

Từ khóa liên quan

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan