1. Trang chủ
  2. » Công Nghệ Thông Tin

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

16 236 0
Tài liệu đã được kiểm tra trùng lặp

Đ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

Thông tin cơ bản

Định dạng
Số trang 16
Dung lượng 269,56 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Mẫu tin vàmảng hai chiều Nguyễn Đông Hà Khoa CNTT – ĐH KHTN... Mẫ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

Trang 1

Mẫu tin và

mảng hai chiều

Nguyễn Đông Hà

Khoa CNTT – ĐH KHTN

Trang 2

Ví dụ

„ Mẫu tin biểu diễn tọa độ một điểm gồm 2 thành phần: x, y

typedef struct{

int x;

int y;

}TOADO;

Trang 3

Mẫ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

Trang 4

Ví dụ khai báo mẫ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;

Trang 5

Ví dụ khai báo mẫ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;

Trang 6

Sử dụng mẫu tin

„ Có thể dùng mẫu tin như là một kiểu dữ liệu trong chương trình

„ Sử dụng dấu chấm (.) để truy xuất đến từng thành phần trong mẫ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);

Trang 7

Bài tập ví dụ

„ Bài 2 chương 5: Nhập vào 1 danh sách n

quyển sách (1 <= n <= 25), mỗi quyển sách gồm các thông tin: mã sách, tên sách, tên tác giả, năm xuất bản và giá tiền

„ In ra 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.

„ Nhập vào tên của một tác giả, in ra thông tin chi tiết về các quyển sách của tác giả đó

Trang 8

Hướng giải

„ Vì mỗi quyển sách bao gồm nhiều thông tin,

dữ liệu quyển sách phải lưu trữ bằng mẩu tin

typedef struct {

int ma_sach;

char ten_sach[20];

char ten_tac_gia[20];

int nam_xuat_ban;

long gia_tien;

}SACH;

Trang 9

Hướng giải

„ Dùng mảng 1 chiều để chứa n quyển sách Mảng khai báo có kích thước tối đa là 25

SACH danh_sach[25];

Trang 10

Hướng giải

„ In ra 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 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]);

}

}

Trang 11

Hướng giải

„ In ra 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]);

}

}

Trang 12

Kiểu mảng 2 chiều

/* Tạo mảng 2 chiều có 3 dòng, 5 cột */ int a[3][5];

„ Khai báo mảng 2 chiều:

Trang 13

Truy xuất phần tử của mảng 2 chiều

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:

„ Gán giá trị cho từng phần tử

x = a[0][0];

printf(“Dong 0, cot 1: %d”, a[0][1]);

Trang 14

Ví dụ nhập mảng 2 chiều

int *socot) {

int i,j;

{

{

}

}

}

Trang 15

Bài tập

„ Chương 5: 1,3,4,5

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

TỪ KHÓA LIÊN QUAN