1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Kiểu Cấu trúc

3 400 0

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

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 3
Dung lượng 70,5 KB

Nội dung

IX Kiểu Cấu trúc Khái niệm Chúng ta biết kiểu liệu cấu trúc mảng Các kiểu liệu tạo tập hợp phần tử có kiểu Ví du int mang[100] ;  có 100 phần tử kiểu số nguyên Để tạo kiểu liệu với phần tử liệu có kiểu khác có liên kết với C có định nghĩa kiểu liệu struct, viết tắt structure Để mô tả đối tượng phần tử liệu có mô tả kiểu khác nhau, phải dùng cấu trúc kiểu struct Như struct phương tiện linh hoạt để xây dựng kiểu liệu Định nghĩa khai báo Dữ liệu cấu trúc kiểu liệu bao gồm nhiều thành phần có kiểu khác nhau, thành phần gọi trường (field) Điểm khác kiểu cấu trúc kiểu mảng chỗ: phần tử mảng có kiểu, phần tử cấu trúc có kiểu khác Như thế, cấu trúc đơn giản chứa phần tử nguyên, phần tử chấm động phần tử ký tự Con trỏ, mảng kiểu cấu trúc khác bao gồm phần tử bên cấu trúc Kiểu struct minh họa hình vẽ sau: Kiểu mảng minh hoạ sau: 4 Trường Phần tử Định nghĩa kiểu cấu trúc struct { biến 1; biến 2; …… biến n; }; Ví dụ 1: Định nghĩa kiểu liệu cấu trúc ngày sau: struct date{ int nam; int thang; int ngay; char thu[4]; }; Ví dụ 2: Định nghĩa cấu trúc học sinh struct hocsinh{ char hoten[28]; char xephang; struct date ngaysinh; //cấu trúc lồng char *diachi; }; Khai báo biến o Cú pháp: struct , biến 2>… ; Ví dụ: Khai báo biến thuộc kiểu cấu trúc ngày biến thuộc kiểu cấu trúc học sinh sau: struct date ngay; struct hocsinh nguoi1, người2; Định nghĩa khai báo kết hợp struct date{ int nam; int thang; int ngay; char thu[4]; } ngay; //tên biến Truy xuất trường Cấu trúc  Truy xuất đơn giản Biến cấu trúc: .; Ví dụ: struct date x; x.thang; Biến trỏ: ; Ví dụ: struct hocsinh *hs; printf(“%s”,hshoten);  Truy xuất phức tạp Sử dụng cấu trúc lồng nhau:  Cú pháp: ..; ….; Ví dụ: struct hocsinh hs; hs.ngaysinh.nam=1900  Gán giá trị khởi đầu cho biến cấu trúc struct date x={1988,2,9,”hai” };  Ví dụ: Sử dụng toán tử (.) để truy xuất thành phần biến cấu trúc void main() { struct nhansu{ char ten[10]; int tuoi; } nguoi; printf(“ten: “); gets(nguoi.ten); printf(“Tuoi :”); scanf(“%d”,nguoi.tuoi); } Con trỏ cấu trúc  Khai báo: struct * Sau ví dụ cách sử dụng trỏ cấu trúc Ví dụ: struct Diachi{ int sonha; char tenduong[15]; }; struct Diachi *p; struct Diachi dc={15,”Nguyen Thai Hoc” }; p=&dc;  Truy cập phần tử cấu trúc: dùng kí hiệu  Ví dụ : scanf(“%d”,&psonha); gets(ptenduong);  Ví dụ: Sử dụng trỏ cấu trúc để viết chương trình quản lý nhân đơn giản gồm thao tác: nhập, in danh sách nhân #include #include #include struct nhansu{ char maso[10]; char *hoten; int heso; }; void nhap(struct nhansu*); void in(struct nhansu*); void main(){ struct nhansu person; nhap(&person); in(&person); getch(); } void nhap(struct nhansu *p){ p->hoten=(char*)malloc(20); printf("Nhap Ma so: "); gets(p->maso); printf("Nhap Ho ten: "); gets(p->hoten); printf("Nhap He so: "); scanf("%d",&p->heso); } void in(struct nhansu *p){ printf(" Ma so | Ho ten | He so \n"); printf("%s\t%s\t%d\n",p->maso,p->hoten,p->heso); }  Định nghĩa kiểu typedef o Cú pháp: typedef ;  Kiểu có: kiểu liệu nào: int, char, …  Tên kiểu mới: tên kiểu có, dùng thay cho kiểu cũ Ví dụ 1: Định nghĩa lại kiểu float, unisigned char typedef float sothuc; typedef unsigned char byte; Ví dụ 2: Sử dụng typedef định nghĩa kiểu liệu mới: typedef struct { //định nghĩa kiểu char hoten[28]; int tuoi; } nhansu; nhansu p; //sử dụng kiểu ... hs.ngaysinh.nam =19 00  Gán giá trị khởi đầu cho biến cấu trúc struct date x= {19 88,2,9,”hai” };  Ví dụ: Sử dụng toán tử (.) để truy xuất thành phần biến cấu trúc void main() { struct nhansu{ char ten [10 ];... cách sử dụng trỏ cấu trúc Ví dụ: struct Diachi{ int sonha; char tenduong [15 ]; }; struct Diachi *p; struct Diachi dc= {15 ,”Nguyen Thai Hoc” }; p=&dc;  Truy cập phần tử cấu trúc: dùng kí hiệu ... danh sách nhân #include #include #include struct nhansu{ char maso [10 ]; char *hoten; int heso; }; void nhap(struct nhansu*); void in(struct nhansu*); void main(){

Ngày đăng: 22/12/2016, 13:38

Xem thêm

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w