TAILIEUCHUNG - Bài giảng Cơ sở lập trình 1: Chương 5 - Lê Cẩm Tú

Bài giảng Cơ sở lập trình 1: Chương 5 do Lê Cẩm Tú biên soạn giới thiệu về Kiểu dữ liệu mảng. Thông qua chương này người học sẽ hiểu biết được những kiến thức liên quan đến mảng một chiều và mảng nhiều chiều. . | Chương 5 KIỂU DỮ LIỆU MẢNG Hà Nội – 2014 Nội dung Mảng 1 chiều 1 Mảng nhiều chiều 2 19/03/2014 Chương 5- Kiểu dữ liệu mảng 2/56 Mảng một chiều 19/03/2014 Chương 5- Kiểu dữ liệu mảng Khái niệm 1 Khai báo 2 Truy xuất dữ liệu kiểu mảng 3 Một số bài toán trên mảng 1 chiều 4 3/56 Đặt vấn đề Ví dụ Chương trình cần lưu trữ 3 số nguyên? => Khai báo 3 biến int a1, a2, a3; Chương trình cần lưu trữ 100 số nguyên? => Khai báo 100 biến kiểu số nguyên! Người dùng muốn nhập n số nguyên? => Không thực hiện được! Giải pháp Kiểu dữ liệu mới cho phép lưu trữ một dãy các số nguyên và dễ dàng truy xuất. Chương 5- Kiểu dữ liệu mảng 19/03/2014 4/56 4 Khái niệm Khái niệm Là một kiểu dữ liệu có cấu trúc do người lập trình định nghĩa. Biểu diễn một dãy các biến có cùng kiểu. Ví dụ: dãy các số nguyên, dãy các ký tự Kích thước được xác định ngay khi khai báo và không bao giờ thay đổi. C luôn chỉ định một khối nhớ liên tục cho một biến kiểu mảng. 19/03/2014 Chương 5- Kiểu dữ liệu mảng 5/56 5 Khai báo Khai báo tường minh , , : số lượng phần tử của mỗi chiều. Lưu ý Phải xác định cụ thể (hằng) khi khai báo. Mảng nhiều chiều: = N1*N2* *Nn Bộ nhớ sử dụng = *sizeof() Một dãy liên tục có chỉ số từ 0 đến -1 19/03/2014 Chương 5- Kiểu dữ liệu mảng []; [][] []; 6/56 6 0 1 2 Khai báo tường minh (tt) Ví dụ 19/03/2014 Chương 5- Kiểu dữ liệu mảng int Mang1Chieu[10]; 0 1 2 3 4 7 8 5 6 9 Mang1Chieu int Mang2Chieu[3][4]; 0 1 2 3 4 7 8 5 6 9 Mang2Chieu 10 11 7/56 7 Cú pháp Không tường minh (thông qua khai báo kiểu) Ví dụ Chương 5- Kiểu dữ liệu mảng typedef []; typedef [] []; ; typedef int Mang1Chieu[10]; typedef int Mang2Chieu[3][4]; Mang1Chieu m1, m2, m3; Mang2Chieu m4, m5; 19/03/2014 Khai báo không tường minh 8/56 8 Số phần