Cú pháp: <biến đếm>:array[<chỉ số đầu>..<chỉ số cuối>] of <kiểu dữ liệu>
Trong đó:
-Chỉ số đầu, chỉ số cuối thường là những số hoặc những kí tự
-Kiểu dữ liệu thường là kiểu integer hoặc string
Cú pháp: <biến đếm>:array[<chỉ số đầu>..<chỉ số cuối>] of <kiểu dữ liệu>
Trong đó:
-Chỉ số đầu, chỉ số cuối thường là những số hoặc những kí tự
-Kiểu dữ liệu thường là kiểu integer hoặc string
* Nhận biết:
Câu 1: Cú pháp khai báo biến mảng trong Pascal là:
A. var <Tên mảng> ; array [<chỉ số đầu>..<chỉ số cuối>] of <kiểu dữ liệu >;
B. var <Tên mảng> : array [<chỉ số đầu>…<chỉ số cuối>] of <kiểu dữ liệu >;
C. var <Tên mảng> : array [<chỉ số đầu>..<chỉ số cuối>] of <kiểu dữ liệu >;
D. var <Tên mảng> : array [<chỉ số đầu>…<chỉ số cuối>] for <kiểu dữ liệu >;
Câu 2: Để chỉ ra một phần tử bất kỳ trong một mảng, ta có thể ghi như sau:
A. Tên mảng[chỉ số trong mảng] B. Tên mảng(chỉ số trong mảng)
C. Tên mảng[giá trị phần tử] D. Tên mảng(giá trị phần tử)
Câu 3: Dữ liệu kiểu mảng là một tập hợp hữu hạn các phần tử được sắp xếp theo dãy, mọi phần tử trong dãy đều có cùng một đặc điểm là:
A. Cùng chung một kiểu dữ liệu B. Có giá trị hoàn toàn giống nhau
C. Các phần tử của mảng đều có kiểu số nguyên D. Các phần tử của mảng đều có kiểu số thực
Câu 4: Để khai báo A là một biến mảng có 10 phần tử kiểu nguyên, cách khai báo nào sau đây là đúng nhất?
A. Var A: array[1..10] of real; B. Var A: array[1..10] of integer;
C. Var A: array[1…10] of real; D. Var A: array[1…10] of integer;
Câu 5: Để xác định được các phần tử trong mảng, yêu cầu các phần tử cần thỏa mãn:
A. Mỗi phần tử đều có giá trị nhỏ hơn 100. B. Mỗi phần tử đều có một dấu hiệu nhận biết.
C. Mỗi phần tử đều có một chỉ số. D. Mỗi phần tử đều có một kiểu dữ liệu khác nhau.
Câu 6: Khai báo biến kiểu mảng nào sau đây là hợp lệ:
A. Var A, B: array[1..50] of integer; B. Var A, B: array[1..n] of real;
C. Var A: array[100..1] of integer; D. Var B: array[1.5..10.5] of real;
Câu 7: Chọn khai báo hợp lệ:
A. Var a,b: array[1 .. n] of real; C. Var a,b: array[1 : n] of Integer;
B. Var a,b: array[1 .. 100] of real; D. Var a,b: array[1 … 100] of real;
Câu 8: Trong các khai báo sau đây, khai báo nào đúng về khai báo biến mảng một chiều:
A. Var X: Array[1…2] of integer; B. Var X: Array[1..10.5] of real;
C. Var X: Array[4.4..4.8] of integer D. Var X: Array[1..10] of real;
* Thông hiểu:
Câu 1: Để khai báo mảng a gồm 50 phần tử thuộc dữ liệu là kiểu số nguyên ta có câu lệnh sau:
A. A:array[0..50] of integer; B. A:array[1..50] of integer;
C. A:array[50.. 0] of integer; D. A:array[50..1] of integer;
Câu 2: Hãy quan sát câu lệnh khai báo biến mảng sau đây:
Var X: Array [1..5] of integer;
Phép gán giá trị cho phần tử thứ 2 của mảng X nào dưới đây là đúng?
A. X(2) := 8; B. X[2] := 12; C. X{2} := 2; D. X2 := 7;
Câu 3: Trước khi khai báo mảng A: array[1..n] of real; thì ta phải khai báo điều gì trước?
A. Var n:integer; B. Var n=10;
C. Const n:integer; D. Const n=10;
Câu 4: Có phần khai báo biến trong Turbo Pascal như sau:
Var so_thuc: real;
x2: integer;
kytu: char;
day so: array[1..50] of integer;
Biến khai báo không hợp lệ là:
A. so_thuc: real; B. x2: integer; C. kytu: char; D. day so: array[1..50] of integer;
Câu 5: Khi khai báo biến mảng, trong mọi ngôn ngữ lập trình ít nhất cần chỉ rõ:
A. Tên biến mảng.
B. Số lượng phần tử.
C. Tên biến mảng và số lượng phần tử.
D. Tên biến mảng, số lượng phần tử, kiểu dữ liệu chung của các phần tử.
* Vận dụng thấp:
Câu 1: Trước khi khai báo mảng A: array [1..n] of real; thì ta phải khai báo điều gì trước?
A. Var n: integer; B. Const n = 10; C. Var n: real; D. Cả A và B đều đúng
Câu 2: Cho mảng A có 5 phần tử với các số liệu như hình dưới đây:
1 | 2 | 3 | 4 | 5 |
23.5 | 12 | 9 | 4.5 | 6 |
|
Hãy chọn đáp án đúng với mảng A và giá trị tương ứng:
A. A[3] = 3 B. A[9] = 3 C. A[12] = 2 D. A[5] = 6
* Vận dụng cao:
Để nhập dữ liệu từ bàn phím cho mảng A có 10 phần tử số nguyên ta dùng lệnh nào sau đây?
A. for i : = 1 to 10 do readln(A[i]); B. for i : = 1 to 10 do writeln(A[i]);
C. Dùng 10 lệnh readln(A); D. Cả A và C đều đúng
Trong khai báo mảng và là kiểu dữ liệu gì? A. Real B.Integer C. Read D. TB
trong khai báo biến mảng , chỉ số đầu và chỉ số cuối được sử dụng với kiểu dữ liệu :
A Char B String C Real D Integer
a. cho mảng DIEM gồm 200 phần tử thuộc kiểu dữ liệu số thực, viết công thức khai báo biến mảng DIEM?
b. Cho mảng X gồm 200 phần tử thuộc kiểu dữ liệu số nguyên, viết công thức khai báo biến mảng X?
Bài tập 3. Nhập vào một mảng số nguyên và in ra các phần tử là số nguyên tố có trong mảng.
- Viết các lệnh:
+ Nhập, Xuất dữ liệu
+ Khai báo biến
+ Câu lệnh điều kiện
+ Vòng lặp For.. do, While.. do
biến a được nhận các giá trị là: 0;-1;1;2;'5'. Ta có thể khai báo a thuộc kiểu dữ liệu nào ?
Cho cách khai báo sau : var a: array[1..100] of real; . Cho biết các phần tử a là kiểu dữ liệu gì?
Bài 9. LÀM VIỆC VỚI DÃY SỐ CÂU HỎI BÀI TẬP
Câu 1: Số phần tử trong khai báo dưới đây là bao nhiêu? Var hocsinh : array[12..80] of integer;
A. 80 B. 70 C. 69 D. 68 Câu 2: Khai báo mảng nào là đúng trong các khai báo sau đây:
A. var tuoi : array[1..15] of integer; B. var tuoi : array[1.5..10.5] of integer;
C. var tuoi : aray[1..15] of real; D. var tuoi : array[1 ... 15 ] of integer; Câu 3: Cú pháp khai báo dãy số nào sau đây đúng nhất?
A. Var < tên dãy số > : array [ < chỉ số cuối > .. < chỉ số đầu >] of < kiểu dữ liệu >; B. Var < tên dãy số > : array [ < chỉ số đầu > .. < chỉ số cuối > ] of < kiểu dữ liệu >; C. Var < tên dãy số > : array [ < chỉ số cuối > : < chỉ số đầu > ] of < kiểu dữ liệu >; D. Var < tên dãy số > : array [ < chỉ số đầu > .. < chỉ số cuối >] for < kiểu dữ liệu >;
Câu 4: Để nhập dữ liệu từ bàn phím cho mảng A có 10 phần tử là số nguyên ta dùng lệnh nào sau đây?
A. For i:=1 to 10 do Readln(A[i]); B. For i:= 1 to 10 do Writeln(A[i]);
C. Dùng 10 lệnh Readln(A); D. Cả (A), (B), (C) đều sai.
Câu 5: Các cách nhập dữ liệu cho biến mảng sau, cách nhập nào không hợp lệ?
A. readln(B[1]); B. readln(dientich[i]);
C. readln(B5); D. read(dayso[9]);
Câu 6: Em hãy chọn phát biểu đúng khi nói về dữ liệu kiểu mảng:
A. Dữ liệu kiểu mảng là tập hợp các phần tử không có thứ tự và mọi phần tử có cùng một kiểu dữ liệu
B. Dữ liệu kiểu mảng là tập hợp các phần tử có thứ tự và mỗi một phần tử trong mảng có thể có các kiểu dữ liệu khác nhau
C. Dữ liệu kiểu mảng là tập hợp các phần tử có thứ tự và mọi phần tử có cùng một kiểu dữ liệu
D. Tất cả ý trên đều sai
Câu 7: Cách khai báo biến mảng sau đây là đúng?
A. Var X: Array[3.. 4.8] of Integer; B. Var X: Array[10 .. 1] of Integer;
C. Var X: Array[4 .. 10] of Real; D. Var X: Array[10 , 13] of Real; Câu 8: Câu 9: Các khai báo biến mảng sau đây trong Pascal đúng hay sai?
Câu 9: Chọn câu phát biểu đúng về kiểu dữ liệu của mảng?
A. Có thể dùng tất cả các kiểu dữ liệu để làm kiểu dữ liệu của mảng
B. Kiểu dữ liệu của mảng chỉ có thể là kiểu số nguyên, số thực, kiểu logic, kiểu ký tự C. Kiểu dữ liệu của mảng là kiểu của các phần tử của mảng, là Integer hoặc Real
D. Kiểu dữ liệu của mảng phải được định nghĩa trước thông qua từ khóa VAR
Câu 10: Cho khai báo mảng như sau: Var a : array[0..30] of integer ; Để in giá trị phần tử thứ 20 của mảng một chiều A ra màn hình ta viết: A. Write(A[20]); B. Write(A(20));
C. Readln(A[20]); D. Write([20]);
a) var X: Array[10, 13] Of Integer;
b) var X: Array[5 ..10.5] Of Real; c) var X: Array[3.4 .. 4.8] Of Integer;
d) var X: Array[4 .. 10] Of Integer;
Các phần tử của mảng A phải là số nguyên. B phải có giá trị như nhau. C. Phải cùng kiểu dữ liệu. D. Có thể cùng kiểu hoặc khác kiểu dữ liệu