Trong khai báo xây dựng kiểu mảng một chiều, có thể biết được cách đánh chỉ số cho các phần tử của mảng.. Tìm phần tử nhỏ nhất trong mảng;A[r]
(1)Tuần 22: Tiết: 25, 26
Chương IV KIỂU DỮ LIỆU CĨ CẤU TRÚC §11 KIỂU MẢNG
1 Kiểu mảng chiều a Khái niệm :
- Mảng chiều dãy hữu hạn phần tử kiểu Mảng đặt tên phần tử có số Để mô tả mảng chiều cần xác định kiểu phần tử cách đánh số phần tử
- Với mảng chiều ta quan tâm đến: + Tên kiểu mảng chiều
+ Số lượng phần tử
+ Kiểu liệu phần tử + Cách khai báo biến mảng + Cách tham chiếu đến phần tử
b.
Khai báo
- Trong Pascal, mảng chiều khai báo hai cách sau: Cách 1: Khai báo trực tiếp biến mảng chiều:
Var <tên biến mảng>: array [kiểu số] of <kiểu phần tử>;
Cách 2: Khai báo gián tiếp biến mảng qua kiểu mảng chiều:
Type <tên kiểu mảng> = array [kiểu số] of <kiểu phần tử>;
Var <tên biến mảng>: <tên kiểu mảng>; - Trong đó:
+ Type từ khóa dùng để khai báo biến + Array từ khóa để khai báo mảng
+ Kiểu số thường đoạn số nguyên liên tục có n1 n2 với n1, n2 biểu thức nguyên n1 số đầu, n2 số cuối (n1n2)
+ Kiểu phần tử kiểu phần tử mảng
VD1
Var Nhietdo: array [1 Max] of real;
VD2 Type
ArrayReal=array[-100 200] of real; ArrayInt = array[-100 0] of boolean;
Tham chiếu tới phần tử mảng
<Tên biến mảng>[chỉ số]
VD Tham chiếu tới nhiệt độ ngày thứ 20, chương trình trên, viết là:
Nhietdo[20]
2 Một số ví dụ: HS XEM SÁCH GIÁO KHOA
CÂU HỎI ÔN TẬP
Câu 1: Hãy chọn cú pháp khai báo khai báo sau : A Var <tên mảng > :< Kiểu liệu>;
B Var < tên biến mảng >: [ kiểu số ] of < kiểu phần tử>; C Var < tên biến mảng >: array [ kiểu số ] of < kiểu phần tử>; D Var < tên biến mảng >: array [ kiểu số ] of < kiểu phần tử>
Câu 2: Phát biểu kiểu mảng phù hợp?
(2)A Chỉ số mảng không thiết 1; B Có thể xây dựng mảng nhiều chiều; C Xâu kí tự xem loại mảng; D. Độ dài tối đa mảng 255;
Câu 4: Khi sử dụng đến kiểu liệu mảng ?
A Khi cần sử dụng phần tử khác có kiểu
B Khi cần sử dụng phần tử khác khác kiểu C Khi cần sử dụng phần tử rời rạc
D Khi cần sử dụng để lưu trữ cho tương lai
Câu 5: Phương án khai báo mảng hợp lệ?
A. mang : ARRAY[0 10] OF INTEGER; B mang : ARRAY[0 10] : INTEGER; C mang : INTEGER OF ARRAY[0 10]; D mang : ARRAY(0 10) : INTEGER; Câu 6: Trong NNLT Pascal, mặt cú pháp câu lệnh sau đúng?
A Type 1chieu=array[1 100] of char; B Type mang=array[1-100] of char; C Type mang=array(1 100) of char; D type mang1c=array[1 100] of char;
Câu 7: Trong NNLT Pascal phát biểu sau nhất
A Các phần tử mảng chiều thứ tự theo số
B Các phần tử mảng chiều thứ tự theo giá trị giảm dần C Các phần tử mảng chiều thứ tự theo giá trị tăng dần D Các phần tử mảng chiều không thứ tự
Câu 8: Trong trình nhập liệu mảng chiều A, để phần tử hiển thị trong cửa sổ chương trình ta viết lệnh sau
A write(‘A[‘,i,’]=’); readln(A[i]); B write(‘A[‘i’]=’); readln(A[i]); C write(‘A[i]=’); readln(A[i]); D write(“A[“,I,”]=”); readln(A[i]);
Câu 9: Phát biểu sau sai?
A Mỗi phần tử mảng chiều đánh số, định nhờ số tương ứng
B. Với khai báo xây dựng kiểu mảng chiều, biết mảng chứa tối đa phần tử
C Trong khai báo xây dựng kiểu mảng chiều, biết cách đánh số cho phần tử mảng
D Chỉ số đánh tuần tự, liên tiếp cho phần tử kề mảng chiều, từ phần tử phần tử cuối
Câu 10: Cho khai báo sau: a : array[1 16] of integer ;
Câu lệnh in tất phần tử mảng trên?
A for k := to 16 write(a[k]); B. for k := 16 downto write(a[k]);
C for k:= to 15 write(a[k]); D for k := 16 downto write(a[k]); Câu 11: Cho khai báo mảng đoạn chương trình sau :
Var a : array[0 50] of real; k := ;
for i := to 50 do
if a[i] > a[k] then k := i ;
Đoạn chương trình thực cơng việc đây? A Tìm phần tử nhỏ mảng;
B Tìm phần tử lớn mảng;
C. Tìm số phần tử lớn mảng;
D Tìm số phần tử nhỏ mảng;
(3)S:=0;
for i:=1 to N S:=S+A[i];
A. Tính tổng phần tử mảng A B In hình mảng A C Đếm số phần tử mảng A D Không thực việc ba việc trên Câu 13: Phát biểu số mảng phù hợp ?
A Dùng vịng lặp với mảng để quản lí kích thước mảng B Dùng để truy cập đến phần tử mảng
C Dùng để quản lí kích thước mảng D Dùng vịng lặp với mảng;
Câu 14: để tham chiếu đến phần tử mảng ta viết:
A Tên biến mảng (chỉ số); C Tên biến mảng[chỉ số]; B Tên mảng [phần tử]; D Tên mảng [phần tử];
Câu 15: Cho khai báo sau: C : array[1 16] of integer ;
Để tham chiếu đến phần tử thứ mảng ta viết sau: