CÂU HỎI TRẮC NGHIỆM
Câu 1: Phát biểu nào dưới đây về kiểu mảng một chiều là phù hợp?
- A. Là một tập hợp các số nguyên
- B. Độ dài tối đa của mảng là 255
-
C. Là một dãy hữu hạn các phần tử cùng kiểu
- D. Mảng không thể chứa kí tự
Câu 2: Để khai báo số phần tử của mảng trong PASCAL, người lập trình cần:
- A. khai báo một hằng số là số phần tử của mảng
-
B. khai báo chỉ số bắt đầu và kết thúc của mảng
- C. khai báo chỉ số kết thúc của mảng
- D. không cần khai báo gì, hệ thống sẽ tự xác định
Câu 3: Phát biểu nào dưới đây về chỉ số của mảng là phù hợp nhất?
-
A. Dùng để truy cập đến một phần tử bất kì trong mảng
- B. Dùng để quản lí kích thước của mảng
- C. Dùng trong vòng lặp với mảng
- D. Dùng trong vòng lặp với mảng để quản lí kích thước của mảng
Câu 4: Phát biểu nào sau đây về mảng là không chính xác?
- A. Chỉ số của mảng không nhất thiết bắt đầu từ 1
- B. Có thể xây dựng mảng nhiều chiều
- C. Xâu kí tự cũng có thể xem như là một loại mảng
-
D. Độ dài tối đa của mảng là 255
Câu 5: Thế nào là khai báo biến mảng gián tiếp?
- A. Khai báo mảng của các bản ghi
- B. Khai báo mảng xâu kí tự
- C. Khai báo mảng hai chiều
-
D. Khai báo thông qua kiểu mảng đã có
Câu 6: Phương án nào dưới đây là khai báo mảng hợp lệ?
-
A. Var mang : ARRAY[0..10] OF INTEGER;
- B. Var mang : ARRAY[0..10] : INTEGER;
- C. Var mang : INTEGER OF ARRAY[0..10];
- D. Var mang : ARRAY(0..10) : INTEGER;
Câu 7: Cho khai báo mảng và đoạn chương trình như sau:
Var a : array[0..50] of real ;
k := 0 ;
for i := 1 to 50 do
if a[i] > a[k] then k := i ;
Đoạn chương trình trên thực hiện công việc gì dưới đây?
- A. Tìm phần tử nhỏ nhất trong mảng;
- B. Tìm phần tử lớn nhất trong mảng;
-
C. Tìm chỉ số của phần tử lớn nhất trong mảng
- D. Tìm chỉ số của phần tử nhỏ nhất trong mảng
Câu 8: Cho khai báo mảng như sau: Var a : array[0..10] of integer ;
Phương án nào dưới đây chỉ phần tử thứ 10 của mảng?
-
A. a[10];
- B. a(10);
- C. a[9];
- D. a(9);
Câu 9: Khai báo mảng hai chiều nào sau đây là sai?
- A. var m : array[1..10] of array[0..9] of integer;
-
B. var m : array[1..20,1..40] of real;
- C. var m : array[1..9;1..9] of integer;
- D. var m : array[0..10,0..10] of char;
Câu 10: Mảng là kiểu dữ liệu biểu diễn một dãy các phần tử thuận tiện cho:
- A. chèn thêm phần tử
-
B. truy cập đến phần tử bất kì
- C. xóa một phần tử
- D. chèn thêm phần tử và xóa phần tử
Câu 11: Trong ngôn ngữ lập trình Pascal, với khai báo như sau :
Type mang = ARRAY[1..100] of integer ;
Var a, b : mang ;
c : array[1..100] of integer ;
Câu lệnh nào dưới đây là hợp lệ ?
-
A. a := b ;
- B. c := b ;
- C. a := c ;
- D. b := c ;
Câu 12: Trong ngôn ngữ lập trình Pascal, với xâu kí tự ta có thể ?
-
A. Cả ba việc này
- B. Gán biến xâu cho biến xâu
- C. So sánh hai xâu kí tự
- D. Gán một kí tự cho biến xâu
Câu 13: Trong ngôn ngữ lập trình Pascal, về mặt cú pháp câu lệnh nào sau đây là đúng ?
-
A. Type mang1c=array[1..100] of char;
- B. Type mang1c=array(1..100) of char;
- C. Type mang=array[1-100] of char;
- D. Type 1chieu=array[1..100] of char;
Câu 14: Phát biểu nào sau đây về mảng là không chính xác ?
- A. Chỉ số của mảng không nhất thiết bắt đầu từ 1;
-
B. Độ dài tối đa của mảng là 255;
- C. Có thể xây dựng mảng nhiều chiều;
- D. Xâu kí tự cũng có thể xem như là một loại mảng;
Câu 15: Cho khai báo sau :
a : array[0..16] of integer ;
Câu lệnh nào dưới đây sẽ in ra tất cả các phần tử của mảng trên ?
- A. for k := 16 downto 0 do write(a[k]);
- B. for k := 1 to 16 do write(a[k]);
- C. for k:= 0 to 15 do write(a[k]);
- D. for k := 16 down to 0 write(a[k]);
Câu 16: Trong ngôn ngữ lập trình Pascal, sau khi chương trình thực hiện xong đoạn chương trình sau, giá trị của biến S là ?
S := ‘Ha Noi Mua thu’;
Delete(S,7,8);
Insert(‘Mua thu’, S, 1);
- A. Ha Noi;
- B. Ha Noi Mua thu;
- C. Mua thu Ha Noi mua thu;
-
D. Mua thu Ha Noi;
Câu 17: Trong ngôn ngữ lập trình Pascal, đoạn chương trình sau thực hiện công việc gì?
d := 0 ;
For i := 1 to length(S) do
if ( S[i] >= ‘ 0 ’ ) AND ( S[i] <= ‘ 9 ’ ) then d := d + 1 ;
- A. Đếm xem có bao nhiêu ký tự số trong xâu S;
-
B. Đếm số ký tự là ký tự số trong xâu S;
- C. Xóa đi các chữ số có trong S;
- D. Xóa đi ký tự đầu tiên trong S;
Câu 18: Trong ngôn ngữ lập trình Pascal, để in một xâu kí tự ra màn hình theo thứ tự ngược lại của các ký tự trong xâu (vd : abcd thi in ra là dcba), đoạn chương nào sau đây thực hiện việc gì ?
- A. For i := 1 to length(S) div 2 do write(S[i])
- B. For i := length(S) downto 1 do write(S)
- C. For i := 1 to length(S) do write(S[i])
-
D. For i := length(S) downto 1 do write(S[i])
Câu 19: Phát biểu nào sau đây về chức năng của kiểu bản ghi là phù hợp nhất ?
-
A. Để mô tả đối tượng chứa nhiều loại thông tin khác nhau;
- B. Để mô tả dữ liệu gồm cả số và xâu kí tự;
- C. Để tạo mảng nhiều chiều;
- D. Để mô tả nhiều dữ liệu;
Câu 20: Hãy chọn phương án ghép đúng nhất. Kiểu dữ liệu có cấu trúc
- A. trong mỗi ngôn ngữ lập trình đều có cách thức xây dựng giống nhau;
- B. trong ngôn ngữ lập trình bậc cao chỉ là kiểu mảng, bản ghi và xâu;
- C. Là kiểu dữ liệu chuẩn do mỗi ngôn ngữ lập trình cho sẵn, người lập trình chỉ cần khai báo nhờ các tên chuẩn;
-
D. là kiểu dữ liệu do người lập trình xây dựng từ những kiểu dữ liệu đã có;