Bài giảng Kỹ thuật lập trình Chương 2 Mảng hai chiều cung cấp cho người học các kiến thức Khái niệm, khai báo, các thao tác cơ bản trên ma trận, thao tác trên ma trận vuông. Mời các bạn cùng tham khảo nội dung chi tiết.
Lập trình C Chương Mảng hai chiều (3 tiết) Trần Minh Thái Email: minhthai@huflit.edu.vn Website: www.minhthai.edu.vn Cập nhật: 21/02/2017 Nội dung • Khái niệm • Khai báo • Các thao tác ma trận • Thao tác ma trận vng • Bài tập KHÁI NIỆM VÀ KHAI BÁO Khái niệm Cột Cột Cột Cột Cột Cột Dòng Dòng Dịng Dịng Ma trận có dịng cột (kích thước x 6) Khái niệm • Kiểu liệu mảng chiều tổ chức theo dạng bảng • Mỗi dịng mảng chiều • Kích thước xác định số dịng số cột • Chỉ số dịng cột tính từ Khai báo ma trận • Cú pháp tên ma trận [số dịng][số cột]; • VD1: khai báo ma trận số ngun a có 10 dịng 15 cột int a[10][15]; • VD2: khai báo ma trận số thực b có 25 dịng 10 cột float b[25][10]; Định nghĩa kiễu liệu Để đơn giản việc khai báo ma trận: #define MAX 100 typedef matran[MAX][MAX]; VD: Khai báo ma trận số nguyên a #define MAX 100 typedef int matran[MAX][MAX]; matran a; Khai báo khởi gán tên ma trận[số dòng][số cột]={{gt11, gt12, …}, {gt21, gt22, …}, … {gtk1, gtk2, …}}; VD: int a[3][4] = {{2,3,9,4}, {5,6,7,6}, {2,9,4,7} }; Truy xuất phần tử Để truy xuất các thành phần của ma trận ta dựa vào chỉ số dòng và chỉ sớ cợt Cú pháp: tên ma trận[chỉ số dịng][chỉ số cột] VD: x = a[1][2]; // x = // Cập nhật giá trị số dòng 2, cột thành 10 a[2][3] = 10; CÁC THAO TÁC XỬ LÝ CƠ BẢN Bài tập nhập/xuất Cho ma trận số nguyên a gồm sd dòng sc cột Viết hàm sau: Phát sinh giá trị ngẫu nhiên cho ma trận Xuất phần tử lẻ Xuất phần tử số nguyên tố Xuất phần tử có giá trị lớn x 19 Phát sinh giá trị ngẫu nhiên void PhatSinh(matran a, int sd, int sc) { for (int d = 0; d