Tải bản đầy đủ (.doc) (13 trang)

Tài liệu ôn tập trắc nghiệm Tin học 11

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (174.23 KB, 13 trang )

Trường THPT Củ Chi

Nhóm Giáo viên Tin học – Tổ Kỹ Thuật - Công nghệ

BÀI 12: KIỂU XÂU
Câu 1: Hãy chọn phương án ghép đúng. Độ dài tối đa của xâu kí tự trong PASCAL là:
A. 256;
B. 255;
C. 65535;
D. Tùy ý;
Câu 2: Hãy chọn phương án ghép đúng. Cho xâu S là ‘Hanoi-Vietnam’. Kết quả của hàm
Length(S); là
A. 12
B. 13
C. 14
D. 15
Câu 3: Hãy chọn phương án ghép đúng. Cho xâu S là ‘Hanoi-Vietnam’. Kết quả của hàm
Pos(‘Vietnam’,S); là
A. 5;
B. 6;
C. 7;
D. 8;
Câu 4: Cho khai báo sau: Var hoten: String;Phát biểu nào dưới đây là đúng?:
A. Câu lệnh sai vì thiếu độ dài tối đa của xâu;
B. Xâu có độ dài lớn nhất là 0;
C. Xâu có độ dài lớn nhất là 255;
D. Cần phải khai báo kích thước của xâu sau đó;
Câu 5: Hãy chọn phương án ghép đúng nhất. Thủ tục chuẩn Insert(S1,S2,vt) thực hiện
A. chèn xâu S1 vào S2 bắt đầu từ vị trí vt; B.chèn xâu S2 vào S1 bắt đầu từ vị trí vt;
C. nối xâu S2 vào S1;
D. sao chép vào cuối S1 một phần của S2 từ vị trí vt;


Câu 6: Đoạn chương trình sau in ra kết quả nào?
Program Welcome;Var a: string[10];
Begina:= ‘tinhoc ’;writeln(length(a));End.
A. 6;
B. 7;
C. 10;
D. Chương trình có lỗi;
Câu 7: Cho str là một xâu kí tự, đoạn chương trình sau thực hiện công việc gì?
For i:= length(str) downto 1 do write(str[i]);
A. In xâu ra màn hình;
B. In từng kí tự xâu ra màn hình;
C. In từng kí tự ra màn hình theo thứ tự ngược, trừ kí tự đầu tiên;
D. In từng kí tự ra màn hình theo thứ tự ngược;
Câu 8: Cho str là một xâu kí tự, đoạn chương trình sau thực hiện công việc gì?
For i:= 1 to length(str) – 1 do str[i+1]:= str[i];
A. Dịch chuyển các kí tự của xâu về sau 1 vị trí;
B. Dịch chuyển các kí tự của sâu lên trước một vị trí;
C. Khởi tạo lại mọi kí tự của xâu bằng kí tự đầu tiên;
D. Khởi tạo lại mọi kí tự của xâu bằng kí tự cuối cùng;
Câu 9: Hãy chọn phương án ghép đúng nhất. Kiểu dữ liệu có cấu trúc
A. là kiểu dữ liệu chuẩn do mỗi NNLT cho sẵn, người lập trình chỉ cần khai báo nhờ các tên
chuẩn;
B. 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ó;
C. trong mỗi NNLT đều có cách thức xây dựng giống nhau;
D. trong NNLT bậc cao chỉ là kiểu mảng, bản ghi và xâu;
Câu 10: Phát biểu nào sau đây là sai?
A. Một NNLT luôn cung cấp cách thức để xây dựng các kiểu dữ liệu có cấu trúc từ kiểu dữ liệu
chuẩn;
B. Khi xây dựng kiểu dữ liệu có cấu trúc, người lập trình phải xác định tên kiểu, cấu trúc, khuôn
dạng của kiểu dữ liệu cần xây dựng từ các thành phần, mỗi thành phần có kiểu dữ liệu chuẩn hoặc kiểu

dữ liệu đã được xác định trước đó;
C. Mỗi giá trị thuộc kiểu dữ liệu có cấu trúcthường gồm nhiều thành phần tạo nên. Có thể truy
cập và xử lý từng giá trị thành phần như vậy. Giá trị của kiểu dữ liệu chuẩn chỉ gồm có một thành
phần duy nhất.
D. Để xây dựng kiểu dữ liệu có cấu trúc, người lập trình không cần biết các kiểu dữ liệu chuẩn;
Câu 11: Phát biểu nào sau đây là đúng?
A. Để xây dựng kiểu dữ liệu có cấu trúc, người lập trình không cần biết các kiểu dữ liệu chuẩn;

Tài liệu ôn tập trắc nghiệm Tin học 11 (HKII năm học 2016 – 2017)

Trang 1


Tài liệu ôn tập trắc nghiệm Tin học 11 (HKII năm học 2016 – 2017)
B. Để tiện lợi cho người lập trình, không có quy tắc cho người lập trình xây dựng kiểu dữ liệu có
cấu trúc;
C. Cách thức xây dựng mỗi kiểu dữ liệu có cấu trúc trong mỗi NNLT đều giống nhau;
D. Mỗi giá trị thuộc kiểu dữ liệu có cấu trúcthường gồm nhiều thành phần tạo nên. Có thể truy
cập và xử lý từng giá trị thành phần như vậy. Giá trị của kiểu dữ liệu chuẩn chỉ gồm có một thành
phần duy nhất.
Câu 12: Phát biểu nào dưới đây là sai?
A. Xâu là một dãy các kí tự trong bảng mã ASCII. Kiểu xâu là một kiểu dữ liệu có cấu trúc.
B. Có thể xem mỗi xâu có cấu trúc giống như một mảng một chiều mà mỗi phần tử của mảng là
một kí tự trong bảng mã ASCII, được đánh chỉ số từ 1.
C. Số lượng kí tự trong một xâu chính là độ dài của xâu.
D. Các phép toán thao tác với xâu tương tự như các phép toán thao tác với mảng.
Câu 13: Biểu thức quan hệ nào dưới đây cho giá trị TRUE?
A. “MOOR” < “LOOK”;
C. “AB123CD” < “ ”;
B. “MATHEMATIC” < “LOOK”;

D. “MOOR” < “MOORK”;
Câu 14: Biểu thức quan hệ nào dưới đây cho giá trị FALSE?
A. “MOOR” < “LOOK”;
B. “MOOR” < “MOORK”;
C. “AB123CD” < “ABCDAB”;
D. “ABCDOR” < “ABDOR”;
Câu 15: Trong NNLT Pascal, xâu kí tự là?
A. Mảng các ký tự;
B. Dãy các kí tự trong bảng mã ASCII;
C. Tập hợp các chữ cái trong bảng chữ cái tiếng Anh;
D. Tập hợp các chữ cái và các chữ số trong bảng chữ cái tiếng Anh;
Câu 16: Trong NNLT Pascal, cách khai báo xâu kí tự nào sau đây là đúng?
A. S:= file of string;
C. S: string;
B. S: file of char;
D. Cả 3 câu đều đúng;
Câu 17: Trong NNLT Pascal, xâu kí tự có tối đa?
A. 8 kí tự;
C. 16 kí tự;
B. 256 kí tự;
D. 255 kí tự;
Câu 18: Trong NNLT Pascal, xâu kí tự không có kí tự nào gọi là?
A. Xâu không;
C. Xâu trắng;
B. Xâu rỗng;
D. Không phải là xâu kí tự;
Câu 19: Trong NNLT Pascal, phần tử đầu tiên của xâu ký tự mang chỉ số là?
A. 0
C. 1
B. Do người lập trình khai báo

D. Không có chỉ số
Câu 20: Trong NNLT Pascal, khai báo nào trong các khai báo sau là sai khi khai báo xâu kí
tự?
A. S: string;
B. X1: string[100];
C. S: string[256];
D. X1: string[1];
Câu 21: Trong NNLT Pascal, thủ tục Delete(c, a, b) thực hiện công việc gì trong các việc sau?
A. Xóa trong xâu kí tự c, a kí tự bắt đầu từ vị trí b;
B. Xóa trong xâu a, b kí tự từ vị trí c;
C. Xóa trong xâu c, b kí tự bắt đầu từ vị trí a;
D. Xóa trong xâu b, c kí tự bắt đầu từ vị trí a;
Câu 22: Trong NNLT Pascal, hàm Length(S); cho kết quả gì?
A. Độ dài xâu S khi khai báo;
B. Số ký tự hiện có của xâu S không tính các dấu cách;
C. Số ký tự của xâu không tính dấu cách cuối cùng
D. Số ký tự hiện có của xâu S.
Câu 23: Trong NNLT 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à?
Nhóm Giáo viên Tin học – Tổ Kỹ Thuật - Công nghệ

Trang 2


Trường THPT Củ Chi

Nhóm Giáo viên Tin học – Tổ Kỹ Thuật - Công nghệ

S:= ‘Ha Noi Mua thu’;Delete(S,7,8);Insert(‘Mua thu’, S, 1);
A. Ha Noi Mua thu;

C. Mua thu Ha Noi;
B. Mua thu Ha Noi mua thu;
D. Ha Noi;
Câu 24: Trong NNLT Pascal, đoạn chương trình sau thực hiện việc gì?
If (ch >= ‘A’) and (ch <= ‘Z’) then ch:= chr(ord(ch) + 32);
A. Xóa ký tự có trong biến ch;
B. Biến ch thành chữ thường nếu ch là chữ hoa;
C. Không thực hiện việc gì;
D. Biến ch thành chữ hoa;
Câu 25: Trong NNLT Pascal, thủ tục chèn xâu S1 vào xâu S2 bắt đầu từ vị trí vt được viết
A. Insert(vt,S1,S2);
C. Insert(S1,vt,S2);
B. Insert(S1,S2,vt);
D. Insert(S2,S1,vt);
Câu 26: Trong NNLT Pascal, với xâu kí tự có các phép toán là?
A. Phép cộng, trừ, nhân, chia
C. Chỉ có phép cộng
B. Phép cộng và phép trừ
D. Phép ghép xâu và phép so sánh
Câu 27: Trong NNLT Pascal, với xâu kí tự ta có thể?
A. So sánh hai xâu kí tự
C. Gán một kí tự cho biến xâu
B. Gán biến xâu cho biến xâu
D. Cả ba việc này
Câu 28: Trong NNLT Pascal, hai xâu kí tự được so sánh dựa trên?
A.
Mã của từng kí tự trong các xâu lần lượt từ trái sang phải
B.
Độ dài tối đa của hai xâu
C. Độ dài thực sự của hai xâu

D. Số lượng các kí tự khác nhau trong xâu
Câu 29: Trong NNLT Pascal, hàm Upcase(ch); cho kết quả là:
A. Chữ cái in hoa tương ứng với ch
C. Xâu ch toàn chữ thường
B. Xâu ch gồm toàn chữ hoa
D. Biến ch thành chữ thường
Câu 30: Trong NNLT Pascal, đoạn chương trình sau thực hiện công việc gì?(giá trị của biến
đếm)
dem:= 0;For ch:= ‘a’ to ‘z’ do If pos(ch,S) <> 0 then dem:= + 1;
A. Đếm số lượng ký tự khác dấu cách của xâu S
B. Đếm số lượng ký tự là chữ cái in hoa của xâu S
C. Đếm số lượng ký tự là chữ cái thường trong xâu S
D. Đếm số lượng chữ cái thường khác nhau có trong xâu S
Câu 31: Trong NNLT Pascal, đoạn chương trình sau thực hiện công việc gì?
X:= length(S); For i:= X downto 1 doIf S[i] = ‘ ’ then Delete(S, i, 1);
{ ‘ ’ là một dấu cách }
A. Xóa dấu cách đầu tiên trong xâu ký tự S
C. Xóa dấu cách tại vị trí cuối cùng của xâu S
B. Xóa dấu cách thừa trong xâu ký tự S
D. Xóa mọi dấu cách của xâu S
Câu 32: Trong NNLT Pascal, đoạn chương trình sau thực hiện công việc gì?
S1:= ‘anh’; S2:= ‘em’;
i:= pos(S2, S);
While i <> 0 do Begin Delete(S, i, 2);Insert(S1, S, i);i:= pos(S2, S);End;
A. Thay toàn bộ cụm từ ‘anh’ trong xâu S bằng cụm từ ‘em’;
B. Thay toàn bộ cụm từ ‘em’ trong xâu S bằng cụm từ ‘anh’;
C. Thay cụm từ ‘em’ đầu tiên trong xâu S bằng cụm từ ‘anh’;
D. Thay cụm từ ‘anh’ đầu tiên trong xâu S bằng cụm từ ‘em’;
Câu 33: Trong NNLT Pascal, sau khi thực hiện xong đoạn chương trình sau, biến Found có giá
trị là gì? (S là biến xâu ký tự)

Found:= 0;x:= length(S);
For i:= 1 to x Div 2 do If S[i] <> S[x – i + 1] then Found:= 1;
A. Found bằng 0 nếu S là xâu đối xứng;
C. Found bằng 1 nếu S là xâu đối xứng;
B. Found bằng 0 nếu S là xâu không đối xứng;
D. Found không có giá trị gì;
Câu 34: Trong NNLT Pascal, để xóa đi ký tự đầu tiên của xâu ký tự S ta viết:
A. Delete(S, 1, 1);
C. Delete(S, length(S), 1);
B. Delete(S, i, 1); { i là biến có giá trị bất kỳ }
D. Delete(S, 1, i); { i là biến có giá trị bất kỳ }

Tài liệu ôn tập trắc nghiệm Tin học 11 (HKII năm học 2016 – 2017)

Trang 3


Tài liệu ôn tập trắc nghiệm Tin học 11 (HKII năm học 2016 – 2017)
A. S1:=
Câu
35: ‘hoa’;
Trong NNLT
i:= pos(S1,
Pascal,‘hoa’);
để tìm vị trí xuất hiện đầu
C. tiên
i:= pos(S,
của xâu
’hoa’);
‘hoa’ trong xâu S ta có thể

viết B.
bằng
i:=cách
pos(‘hoa’,
nào trong
S); các cách sau?
D. i:= pos(‘hoa’, ‘hoa’);
Câu 36: Trong NNLT Pascal, đoạn chương trình thực hiện công việc nào trong các công việc
sau:
i:= pos(‘ ’, S); { ‘ ’ là 2 dấu cách }
while i <> 0 do Begin Delete(S, i, 1); i:= pos(‘ ’, S);End;
A. Xóa 2 dấu cách liền nhau đầu tiên trong xâu;
B. Xóa đi một trong 2 dấu cách đầu tiên trong xâu;
C. Xóa các dấu cách trong xâu S để S không còn 2 dấu cách liền nhau;
D. Xóa các dấu cách liền nhau cuối cùng trong xâu;
Câu 37: Trong NNLT Pascal, đoạn chương trình sau làm công việc gì:
i:= pos(‘ ’, X);
while i <>0 do BeginDelete(X, i, 1);i:= pos(‘ ’, X);End;
A. Xóa tất cả các dấu cách trong xâu X;
B. Xóa tất cả các dấu cách phía bên trái trong xâu X;
C. Xóa tất cả các dấu cách phía bên phải trong xâu X;
D. Xóa tất cả các dấu cách ở hai đầu của xâu X;
Câu 38: Trong NNLT Pascal, sau khi thực hiện đoạn chương trình sau, biến X có giá trị là gì?
S:= ‘Hoang Anh Tuan’;
X:= ‘ ’;
i:= length(S);
while S[i] <> ‘ ’ do Begin X:= X + S[i];i:= i + 1;End;
A. Xâu rỗng
B. ‘Hoang’
C. ‘Anh’

D. ‘Tuan’
Câu 39: Trong NNLT 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 thì 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) do write(S[i])
B. For i:= length(S) downto 1 do write(S[i])
C. For i:= length(S) downto 1 do write(S)
D. For i:= 1 to length(S) div 2 do write(S[i])
Câu 40: Trong NNLT 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] = ‘ ’ then d:= d + 1;
A. Xóa đi các dấu cách trong xâu;
C. Đếm số dấu cách có trong xâu;
B. Đếm số ký tự có trong xâu;
D. Xóa đi các ký tự số;
Câu 41: Trong NNLT Pascal, đoạn chương trình sau thực hiện công việc gì?
d:= 0;For i:= 1 tolength(S) doif(S[i] >= ‘0’) and (S[i] <= ‘9’) then d:=d+1;
A. Đếm số ký tự là ký tự số trong xâu S;
C. Xóa đi các chữ số có trong S;
B. Đếm xem có bao nhiêu ký tự số trong xâu S;
D. Xóa đi ký tự đầu tiên trong S;

Nhóm Giáo viên Tin học – Tổ Kỹ Thuật - Công nghệ

Trang 4


Trường THPT Củ Chi

Nhóm Giáo viên Tin học – Tổ Kỹ Thuật - Công nghệ


Chương V: TỆP VÀ THAO TÁC VỚI TỆP
Câu 1: Dữ liệu kiểu tệp
A. được lưu trữ trên ROM.
C. chỉ được lưu trữ trên đĩa cứng.
B. được lưu trữ trên RAM.
D. được lưu trữ trên bộ nhớ ngoài.
Câu 2: Dữ liệu kiểu tệp
A. sẽ bị mất hết khi tắt máy.
C. không bị mất khi tắt máy hoặc mất điện.
B. sẽ bị mất hết khi tắt điện đột ngột.
D. cả A, B, C đều sai.
Câu 3: Phát biểu nào dưới đây là đúng?
A. Các kiểu dữ liệu đều được lưu trữ ở bộ nhớ trong (RAM).
B. Dữ liệu kiểu tệp được lưu trữ ở bộ nhớ trong.
C. Dữ liệu kiểu tệp được lưu trữ ở bộ nhờ ngoài (đĩa mềm, đĩa cứng, CD, thiết bị nhớ Flash).
D. Các dữ liệu trong máy tính đều bị mất đi khi tắt nguồn điện.
Câu 4: Phát biểu nào sau đây là sai?
A. Tệp có cấu trúc là tệp mà các thành phần của nó được tổ chức theo một cấu trúc nhất định.
B. Tệp chứa dữ liệu được tổ chức theo một cách thức nhất định gọi là tệp có cấu trúc.
C. Tệp văn bản không thuộc loại tệp có cấu trúc.
D. Tệp văn bản gồm các kí tự theo mã ASCII được phân chia thành một hay nhiều dòng.
Câu 5: Phát biểu nào sau đây là sai?
A. Có thể truy cập trực tiếp tệp văn bản.
B. Tệp có cấu trúc có thể truy cập trực tiếp.
C. Tệp có cấu trúc có thể truy cập tuần tự.
D. Truy cập trực tiếp là cách truy cập cho phép tham chiếu đến dữ liệu cần truy cập bằng cách xác
định trực tiếp vị trí (thường là số hiệu) của dữ liệu đó.
Câu 6: Phát biểu nào sau đây là đúng?
A. Số lượng phần tử của tệp là cố định.
B. Kích thước tệp có thể rất lớn.

C. Dữ liệu một tệp được lưu trữ trên đĩa thành một vùng dữ liệu liên tục.
D. Tệp lưu trữ lâu dài trên đĩa, không thể xóa tệp trên đĩa.
Câu 7: Phát biểu nào sau đây là sai?
A. Tệp nhị phân thuộc loại tệp có cấu trúc.
B. Các dòng trong tệp văn bản có độ dài bằng nhau.
C. Có thể hiểu nội dung các tệp văn bản khi hiển thị nó trên màn hình trong phần mềm soạn thảo văn
bản.
D. Không thể hiểu nội dung các tệp có cấu trúc khi hiển thị nó trên màn hình trong phần mềm soạn
thảo văn bản.
Câu 8: Phát biểu nào sau đây là sai?
A. Trong lập trình, muốn thao tác trên tệp dữ liệu phải thao tác gián tiếp qua biến tệp.
B. Biến tệp là biến kiểu xâu.
C. Trong Pascal, biến tệp văn bản có kiểu text.
D. Trong chương trình, tên tệp có thể là biến xâu hoặc hằng xâu.
Câu 9: Phát biểu nào sau đây là sai?
A. Muốn đọc/ ghi dữ liệu trong một tệp, sau khi gắn biến tệp với tên tệp cần phải thực hiện thao tác
mở tệp đó;
B. Trong lệnh mở tệp, cần khai báo tên tệp để xác định đúng vị trí tệp trên đĩa.
C. Trong lệnh gán tên tệp với biến tệp, cần khai báo tên tệp để xác định đúng vị trí tệp trên đĩa.
D. Sau khi mở tệp, con trỏ tệp ở vị trí đầu tệp.
Câu 10: Chọn mệnh đề sai trong các mệnh đề sau:
A. Sau khi đọc xong tệp, không đóng tệp cũng không gây ảnh hưởng gì cho việc quản lí tệp.
B. Một tệp văn bản đang mở và con trỏ tệp không ở phần tử đầu tiên, muốn làm việc với phần tử đầu
tiên của tệp cần đóng tệp và mở lại.
C. Khi mở lại tệp, nếu không thay đổi biến tệp thì không cần gán lại biến tệp với tên tệp.
D. Khi ghi xong dữ liệu vào tệp, cần đóng tệp.

Tài liệu ôn tập trắc nghiệm Tin học 11 (HKII năm học 2016 – 2017)

Trang 5



Tài liệu ôn tập trắc nghiệm Tin học 11 (HKII năm học 2016 – 2017)
Câu 11: Cách thức truy cập tệp văn bản là
A. truy cập tuần tự.
C. truy cập trực tiếp
B. truy cập ngẫu nhiên.
D. vừa truy cập tuần tự vừa truy cập trực tiếp.
Câu 12: Số lượng phần tử trong tệp
A. không được lớn hơn 128.
B. không được lớn hơn 255.
C. phải được khai báo trước.
D. không bị giới hạn mà chỉ phụ thuộc vào dung lượng đĩa.
Câu 13: Hãy chọn thứ tự hợp lí nhất khi thực hiện các thao tác đọc dữ liệu từ tệp:
A. Mở tệp => Gán tên tệp với biến tệp => Đọc dữ liệu từ tệp => Đóng tệp.
B. Mở tệp => Đọc dữ liệu từ tệp => Gán tên tệp với biến tệp => Đóng tệp.
C. Gán tên tệp với biến tệp => Mở tệp => Đọc dữ liệu từ tệp => Đóng tệp.
D. Gán tên tệp với biến tệp => Đọc dữ liệu từ tệp => Mở tệp => Đóng tệp.
Câu 14: Hãy chọn các thao tác ghi trên tệp văn bản chứa dữ liệu là:
A. Thông báo mở tệp để đọc =>Đọc dữ liệu trong tệp =>Đóng tệp =>Gán biến tệp với tên tệp.
B. Thông báo mở tệp để đọc =>Đọc dữ liệu trong tệp =>Gán biến tệp với tên tệp =>Đóng tệp.
C. Gán biến tệp với tên tệp => Thông báo mở file để ghi dữ liệu mới => Ghi dữ liệu mới => Đóng
tệp.
D. Gán biến tệp với tên tệp => Thông báo mở file để ghi dữ liệu mới => Đọc dữ liệu trong tệp =>
Đóng tệp.
Câu 15: Hãy chọn các thao tác đọc trên tệp văn bản chứa dữ liệu là:
A. Gán biến tệp với tên tệp =>Thông báo mở file để ghi dữ liệu mới =>Ghi dữ liệu mới =>Đóng tệp.
B. Gán biến tệp với tên tệp =>Thông báo mở tệp để đọc =>Đọc dữ liệu trong tệp =>Đóng tệp.
C. Thông báo mở file để ghi dữ liệu mới => Gán biến tệp với tên tệp =>Ghi dữ liệu mới =>Đóng
tệp.

D. Thông báo mở file để ghi dữ liệu mới => Ghi dữ liệu mới =>Gán biến tệp với tên tệp =>Đóng
tệp.
Câu 16: Hãy chọn thứ tự các thao tác trong Pascal để ghi tiếp dữ liệu vào cuối tệp có cấu trúc đã
tồn tại trên đĩa:
A. Mở tệp để ghi => Gán tên tệp với biến tệp => Thao tác để di chuyển con trỏ tệp đến cuối tệp =>
Ghi dữ liệu vào tệp => Đóng tệp.
B. Gán tên tệp với biến tệp => Mở tệp để ghi => Thao tác để di chuyển con trỏ tệp đến cuối tệp =>
Ghi dữ liệu vào tệp => Đóng tệp.
C. Gán tên tệp với biến tệp => Thao tác để di chuyển con trỏ tệp đến cuối tệp => Mở tệp để ghi =>
Ghi dữ liệu vào tệp => Đóng tệp.
D. Mở tệp để ghi => Gán tên tệp với biến tệp => Ghi dữ liệu vào tệp => Thao tác để di chuyển con
trỏ tệp đến cuối tệp => Đóng tệp.
Câu 17: Trong PASCAL để khai báo biến tệp văn bản ta phải sử dụng cú pháp
A. Var <tên tệp>: Text;
C. Var <tên tệp>: String;
B. Var <tên biến tệp>: Text;
D. Var <tên biến tệp>: String;
Câu 18: Trong PASCAL, để khai báo hai biến tệp văn bản f1, f2 ta viết
A. Var f1 f2: Text;
C. Var f1, f2: Text;
B. Var f1; f2: Text;
D. Var f1: f2: Text;
Câu 19: Để thao tác với tệp
A. Ta có thể gán tên tệp cho tên biến tệp, hoặc sử dụng trực tiếp tên tệp cũng được.
B. Ta nhất thiết phải gán tên tệp cho tên biến tệp.
C. Ta nên sử dụng trực tiếp tên tệp trong chương trình.
D. Ta nhất thiết phải sử dụng trực tiếp tên tệp trong chương trình.
Câu 20: Để gán tên tệp cho tên biến tệp ta sử dụng câu lệnh
A. <tên biến tệp>:= <tên tệp>;
C. Assign(<tên biến tệp>,<tên tệp>);

B. <tên tệp>:= <tên biến tệp>;
D. Assign(<tên tệp>,<tên biến tệp>);
Câu 21: Để gắn tệp KQ.TXT cho biến tệp f1 ta sử dụng câu lệnh
A. f1:= ‘KQ.TXT’;
B. KQ.TXT:= f1;
Nhóm Giáo viên Tin học – Tổ Kỹ Thuật - Công nghệ

Trang 6


Trường THPT Củ Chi

Nhóm Giáo viên Tin học – Tổ Kỹ Thuật - Công nghệ

C. Assign(‘KQ.TXT’,f1);
D. Assign(f1,‘KQ.TXT’);
Câu 22: Trong PASCAL mở tệp để đọc dữ liệu ta phải sử dụng thủ tục
A. Reset(<tên tệp>);
C. Rewrite(<tên tệp>);
B. Reset(<tên biến tệp>);
D. Rewrite(<tên biến tệp>);
Câu 23: Trong PASCAL mở tệp để ghi kết quả ta phải sử dụng thủ tục
A. Reset(<tên tệp>);
C. Rewrite(<tên tệp>);
B. Reset(<tên biến tệp>);
D. Rewrite(<tên biến tệp>);
Câu 24: Vị trí của con trỏ tệp sau lời gọi thủ tục Reset
A. Nằm ở đầu tệp.
C. Nằm ở giữa tệp.
B. Nằm ở cuối tệp.

D. Nằm ngẫu nhiên ở bất kỳ vị trí nào.
Câu 25: Để đọc dữ liệu từ tệp văn bản ta có thể sử dụng thủ tục
A. Read(<tên tệp>,<danh sách biến>);
C. Write(<tên tệp>,<danh sách biến>);
B. Read(<tên biến tệp>,<danh sách biến>);
D. Write(<tên biến tệp>,<danh sách biến>);
Câu 26: Để ghi kết quả vào tệp văn bản ta có thể sử dụng thủ tục
A. Read(<tên tệp>,<danh sách kết quả>);
C. Write(<tên tệp>,<danh sách kết quả>);
B. Read(<tên biến tệp>,<danh sách kết quả>);
D. Write(<tên biến tệp>,<danh sách kết quả>);
Câu 27: Nếu hàm eof(<tên biến tệp>) cho giá trị bằng true thì con trỏ tệp nằm ở vị trí
A. Đầu dòng.
B. Đầu tệp.
C. Cuối dòng.
D. Cuối tệp.
Câu 28: Nếu hàm eoln(<tên biến tệp>) cho giá trị bằng true thì con trỏ tệp nằm ở vị trí
A. Đầu dòng.
B. Đầu tệp.
C. Cuối dòng.
D. Cuối tệp.
Câu 29: Trong Pascal để đóng tệp ta dùng thủ tục
A. Close(<tên biến tệp>);
C. Stop(<tên biến tệp>);
B. Close(<tên tệp>);
D. Stop(<tên tệp>);
Câu 30: Câu lệnh:Var <tên biến tệp>:Text; có ý nghĩa gì?
A. Thủ tục gán tên tệp cho tên biến tệp.
C. Khai báo biến tệp.
B. Thủ tục mở tên để đọc dữ liệu.

D. Thủ tục đóng tệp.
Câu 31: Câu lệnh:Assign(<tên biến tệp>,A. Thủ tục gán tên tệp cho tên biến tệp.
C. Khai báo biến tệp.
B. Thủ tục mở tên để đọc dữ liệu.
D. Thủ tục đóng tệp.
Câu 32: Câu lệnh:Reset(<tên biến tệp>); có ý nghĩa gì?
A. Thủ tục gán tên tệp cho tên biến tệp.
C. Khai báo biến tệp.
B. Thủ tục mở tên để đọc dữ liệu.
D. Thủ tục đóng tệp.
Câu 33: Câu lệnh:Close(<tên biến tệp>); có ý nghĩa gì?
A. Thủ tục gán tên tệp cho tên biến tệp.
C. Khai báo biến tệp.
B. Thủ tục mở tên để đọc dữ liệu.
D. Thủ tục đóng tệp.
Câu 34: Câu lệnh:Rewrite(<tên biến tệp>);có ý nghĩa gì?
A. Thủ tục mở tệp để ghi dữ liệu.
C. Thủ tục ghi dữ liệu vào tệp.
B. Thủ tục đọc dữ liệu từ tệp.
D. Thủ tục đóng tệp.
Câu 35: Câu lệnh:Read(<tên biến tệp>,<danh sách biến>);có ý nghĩa gì?
A. Thủ tục mở tệp để ghi dữ liệu.
C. Thủ tục ghi dữ liệu vào tệp.
B. Thủ tục đọc dữ liệu từ tệp.
D. Thủ tục đóng tệp.
Câu 36: Câu lệnh:Write(<tên biến tệp>,<danh sách kết quả>);có ý nghĩa gì?
A. Thủ tục mở tệp để ghi dữ liệu.
C. Thủ tục ghi dữ liệu vào tệp.
B. Thủ tục đọc dữ liệu từ tệp.

D. Thủ tục đóng tệp.
Câu 37: Hãy chọn phương án ghép đúng. Tệp văn bản
A. cho phép truy cập đến một dữ liệu nào đó trong tệp chỉ bằng cách bắt đầu từ đầu tệp và đi qua lần
lượt tất cả các dữ liệu trước nó.
B. cho phép tham chiếu đến dữ liệu cần truy cập bằng cách xác định trực tiếp vị trí của dữ liệu đó.
C. là tệp mà các phần tử của nó được tổ chức theo một cấu trúc nhất định.
D. là tệp mà dữ liệu được ghi dưới dạng các ký tự theo mã ASCII.
Câu 38: Hãy chọn phương án ghép đúng. Tệp có cấu trúc

Tài liệu ôn tập trắc nghiệm Tin học 11 (HKII năm học 2016 – 2017)

Trang 7


Tài liệu ôn tập trắc nghiệm Tin học 11 (HKII năm học 2016 – 2017)
A. cho phép truy cập đến một dữ liệu nào đó trong tệp chỉ bằng cách bắt đầu từ đầu tệp và đi qua lần
lượt tất cả các dữ liệu trước nó.
B. cho phép tham chiếu đến dữ liệu cần truy cập bằng cách xác định trực tiếp vị trí của dữ liệu đó.
C. là tệp mà các phần tử của nó được tổ chức theo một cấu trúc nhất định.
D. là tệp mà dữ liệu được ghi dưới dạng các ký tự theo mã ASCII.
Câu 39: Hãy chọn phương án ghép đúng. Tệp truy cập tuần tự
A. cho phép truy cập đến một dữ liệu nào đó trong tệp chỉ bằng cách bắt đầu từ đầu tệp và đi qua lần
lượt tất cả các dữ liệu trước nó.
B. cho phép tham chiếu đến dữ liệu cần truy cập bằng cách xác định trực tiếp vị trí của dữ liệu đó.
C. là tệp mà các phần tử của nó được tổ chức theo một cấu trúc nhất định.
D. là tệp mà dữ liệu được ghi dưới dạng các ký tự theo mã ASCII.
Câu 40: Hãy chọn phương án ghép đúng. Tệp truy cập trực tiếp
A. cho phép truy cập đến một dữ liệu nào đó trong tệp chỉ bằng cách bắt đầu từ đầu tệp và đi qua lần
lượt tất cả các dữ liệu trước nó.
B. cho phép tham chiếu đến dữ liệu cần truy cập bằng cách xác định trực tiếp vị trí của dữ liệu đó.

C. là tệp mà các phần tử của nó được tổ chức theo một cấu trúc nhất định.
D. là tệp mà dữ liệu được ghi dưới dạng các ký tự theo mã ASCII.
Câu 41: Trong Pascal, thực hiện chương trình VD_bt1_txt dưới đây sẽ ghi kết quả nào trong các
kết quả cho dưới đây vào tệp văn bản BT1.TXT?
Program VD_bt1_txt;Uses crt;Var f: text;
Begin Clrscr; Assign(f, ‘BT1.TXT ’); Rewrite(f); Write(f, 123 + 456); Close(f);
End.
A. 123 + 456
B. 123456
C. 579
D. 123 456
Câu 42: Trong Pascal, cho trước tệp văn bản BT2.TXT chỉ có một dòng, chứa dòng chữ: CHAO
MUNG BAN DEN VOI LAP TRINH ngay ở đầu dòng. Thực hiện chương trình VD_bt2_txt, trên màn
hìnhsẽ hiện kết quả nào trong các kết quả cho dưới đây?
Program VD_bt2_txt; Uses crt; Var f: text;S: string[13];
BeginClrscr;Assign(f, ‘BT2.TXT’); Reset(f); Read(f, S); Write(S); Close(f); End.
A. CHAO MUNG BAN DEN VOI LAP TRINH
C. CHAO MUNG BAN DEN VOI
B. CHAO MUNG BAN
D. CHAO MUNG
Câu 43: Phát biểu nào sau đây là đúng với chương trình Vi_Du?
Program Vi_Du; Uses crt; Var f: text; ch: char; tenfile: string[30];
Begin Write(‘ Nhap ten file: ’);
readln(tenfile);
Assign(f, tenfile);
Reset(f);
While not eof(f) do Begin Read(f, ch); Write(ch);
End;
Close(f);
End.

A. Chương trình dùng để mở đọc một tệp đã có và hiện nội dung trong tệp này lên màn hình.
B. Chương trình dùng để tạo một tệp mới và ghi nội dung nhập từ bàn phím vào trong tệp.
C. Chương trình dùng để mở đọc một tệp đã có và cho phép nhìn thấy toàn bộ kí tự có trong tệp này
lên màn hình.
D. Cả 3 khẳng định trên đều sai.
Câu 44: Cho trước tệp văn bản BT_TD gồm hai dòng như sau:
TRAN MINH HAI 9 8 7
NGUYEN QUANG VINH 10 5 9
Khi thực hiện chương trình Thi_Du sẽ cho kết quả nào trong các kết quả sau đây?
Program Thi_Du;
Uses crt;
Const fi = ‘BT_TD’;
Var f: text;
s: string;
t, l, h: integer;
Begin Assign(f, fi); Reset(f);
While not seekeof(f) do
Begin Readln(f, s, t, l, h); Writeln(s, ‘ ’, t, ‘ ’, l, ‘ ’, h); End;
Close(f);
Readln; End.
A. TRAN MINH HAI 9 8 7
NGUYEN QUANG VINH 10 5 9
Nhóm Giáo viên Tin học – Tổ Kỹ Thuật - Công nghệ

Trang 8


Trường THPT Củ Chi

Nhóm Giáo viên Tin học – Tổ Kỹ Thuật - Công nghệ


B. TRAN MINH HAI 9 8 7 0 0 0
NGUYEN QUANG VINH 10 5 9 0 0 0
C. Thông báo chương trình bị ngắt thực hiện vì gặp lỗi 106
D. Cả 3 kết quả đều sai

Tài liệu ôn tập trắc nghiệm Tin học 11 (HKII năm học 2016 – 2017)

Trang 9


Tài liệu ôn tập trắc nghiệm Tin học 11 (HKII năm học 2016 – 2017)

Chương VI: CHƯƠNG TRÌNH CON VÀ LẬP TRÌNH CÓ CẤU TRÚC
Câu 1: Hãy chọn phương án ghép đúng. Kiểu của một hàm được xác định bởi
A. Kiểu của các tham số
C. Tên hàm
B. Kiểu giá trị trả về
D. Địa chỉ mà hàm trả về
Câu 2: Mô tả nào dưới đây về hàm là sai?
A. Phải trả lại kết quả
C. Trong hàm có thể gọi lại chính hàm đó
B. Phải có tham số
D. Có thể có các biến cục bộ
Câu 3: Mô tả nào dưới đây về tham số là sai?
A. Một hàm có thể có cả tham số giá trị và tham số biến;
B. Có thể truyền biến số cho tham số giá trị;
C. Có thể truyền giá trị cho tham số biến;
D. Có thể dùng tham số biến để nhận kết quả;
Câu 4: Trong các cách sử dụng thủ tục sau, cách nào là phù hợp nhất?

A. Khai báo lại thủ tục và gọi nó mỗi khi cần sử dụng;
B. Khai báo thủ tục duy nhất một lần và gọi nó một lần duy nhất;
C. Chỉ cần khai báo;
D. Khai báo thủ tục một lần và gọi nó trong thân chương trình mỗi khi muốn sử dụng;
Câu 5: Hàm chuẩn nào dưới đây biến giá trị thực 6.6 thành 7?
A. Odd;
B. Round;
C. Trunc;
D. Abs;
Câu 6: Trong các chương trình chuẩn sau đây,chương trình chuẩn nào là thủ tục chuẩn?
A. Sin(x);
B. Length(S);
C. Sqrt(x);
D. Delete(S,5,1);
Câu 7: Giả sử có hai biến xâu x và y (y đã có giá trị) câu lệnh nào sau đây là không hợp lệ?
A. x:= Copy(y,5,3);
C. x:= Delete(y,5,3);
B. x:= y;
D. Delete(y,5,3);
Câu 8: Nói về cấu trúc của một chương trình con, khẳng định nào sau đây là khôngđúng?
A. Phần đầu và phần thân nhất thiết phải có, phần khai báo có thể có hoặc không.
B. Phần khai báo có thể có hoặc không có tùy thuộc vào từng chương trình cụ thể.
C. Phần đầu có thể có hoặc không có cũng được.
D. Phần đầu nhất thiết phải có để khai báo tên chương trình con.
Câu 9: Khẳng định nào sau đây là đúng?
A. Một chương trình con nhất thiết phải có tham số hình thức.
B. Một chương trình con nhất thiết phải có biến cục bộ.
C. Một chương trình con nhất thiết phải có tham số hình thức, không nhất thiết phải có biến cục bộ.
D. Một chương trình con có thể không có tham số hình thức và cũng có thể không có biến cục bộ.
Câu 10: Kiểu dữ liệu của hàm

A. chỉ có thể là kiểu integer.
B. chỉ có thể là kiểu real.
C. có thể là các kiểu integer, real, char, boolean, string.
D. có thể là integer, real, char, boolean, string, record, kiểu mảng.
Câu 11: Khẳng định nào sau đây là đúng?
A. Biến cục bộ là biến được dùng trong chương trình con chứa nó và trong chương trình chính.
B. Biến cục bộ là biến chỉ được dùng trong chương trình chính.
C. Biến cục bộ là biến chỉ được dùng trong chương trình con chứa nó.
D. Biến toàn bộ chỉ được sử dụng trong chương trình chính và không được sử dụng trong các chương
trình con.
Câu 12: Phát biểu nào dưới đây về biến là sai?
A. Biến toàn cục có thể được sử dụng ở trong một thủ tục;
B. Biến cục bộ phải có tên khác với tên của biến toàn cục;
C. Biến cục bộ có thể có kiểu khác với kiểu của biến toàn cục có cùng tên;
D. Một hàm có thể có nhiều tham số biến;
Câu 13: Mô tả nào dưới đây về chương trình có cấu trúc là phù hợp nhất?
Nhóm Giáo viên Tin học – Tổ Kỹ Thuật - Công nghệ

Trang 10


Trường THPT Củ Chi

Nhóm Giáo viên Tin học – Tổ Kỹ Thuật - Công nghệ

A. Chương trình có sử dụng cấu trúc mảng và bản ghi;
B. Sử dụng các hàm và thủ tục thư viện chuẩn;
C. Được chia thành nhiều chương trình con;
D. Cả A và B
Câu 14: Khẳng định nào sau đây là đúng?

A. Cả thủ tục và hàm đều có thể có tham số hình thức.
B. Chỉ có thủ tục mới có thể có tham số hình thức.
C. Chỉ có hàm mới có thể có tham số hình thức.
D. Thủ tục và hàm nào cũng phải có tham số hình thức.
Câu 15: Khẳng định nào sau đây là đúng?
A. Lời gọi hàm nhất định phải có tham số thực sự còn lời gọi thủ tục không nhất thiết phải có tham
số thực sự.
B. Lời gọi thủ tục nhất thiết phải có tham số thực sự còn lời gọi hàm không nhất thiết phải có tham
số thực sự.
C. Cả lời gọi hàm và lời gọi thủ tục đều phải có tham số thực sự.
D. Lời gọi hàm và lời gọi thủ tục có thể có tham số thực sự hoặc không có tham số thực sự tùy thuộc
vào từng thủ tục.
Câu 16: Để khai báo hàm trong Pascal bắt đầu bằng từ khóa
A. Program.
B. Procedure.
C. Function.
D. Var.
Câu 17: Để khai báo thủ tục trong Pascal bắt đầu bằng từ khóa
A. Program.
B. Procedure.
C. Function.
D. Var.
Câu 18: Muốn khai báo x là tham số giá trị và y, z là tham số biến (x, y, z thuộc kiểu Byte) trong
thủ tục “ViduTT” thì khai báo nào sau đây là sai?
A. Procedure ViduTT(x: Byte; Var y, z: Byte);
B. Procedure ViduTT(x: Byte; Var y: Byte; Var z: Byte);
C. Procedure ViduTT(x: Byte; Var y: Byte; z: Byte);
D. Procedure ViduTT(Var y: Byte; x: Byte; Var z: Byte);
Câu 19: Hãy chọn phương án ghép đúng. Cho thủ tục sau:
Procedure p; Var n: integer;

Begin…… ……End;Phạm vi của biến n là:
A. Trong toàn bộ chương trình;
C. Trong toàn bộ tệp chương trình nguồn;
B. Trong nội bộ thủ tục p;
D. Tùy thuộc vào vị trí sử dụng thủ tục p;
Câu 20: Cho hàm sau:
Function foo(n: integer) : boolean;
Var i: integer;
Begin Foo:= false;
If n > 2 then for i:= 2 to n-1 do
If (n mod i = 0) then foo:= true;
End;
Hàm trên thực hiện công việc gì?
A. Kiểm tra n có phải là hợp số hay không;
C. Câu A, B đều sai;
B. In ra các ước số của n;
D. Câu A, B đều đúng;
Câu 21: Cho chương trình sau:
Program Thidu; Var s: string[50];
Procedure foo(s: string);
Var i: integer;
Begin i:= 1; while (i <= length(S)) do
begin writeln(s[i]); i:= i + 1; end;end;
Begin s:= ‘tinhoc’; foo(s); End.
Số dòng chương trình in ra màn hình là bao nhiêu?
A. 50 dòng;
B. 6 dòng;
C. 7 dòng;
D. Vô số dòng;
Câu 22: Cho chương trình sau:

Program Thi_du;Var Mess: string;
Procedure StopHere; Var Mess: string;
Begin Mess:= ‘StopHere’; Write(Mess); End;
Begin Mess:= ‘StartHere’; StopHere;
Write(Mess);End.

Tài liệu ôn tập trắc nghiệm Tin học 11 (HKII năm học 2016 – 2017)

Trang 11


Tài liệu ôn tập trắc nghiệm Tin học 11 (HKII năm học 2016 – 2017)
Phương án nào dưới đây là kết quả thực hiện chương trình trên?
A. StopHere StartHere;
C. StartHere StopHere StartHere;
B. StartHere StopHere;
D. StopHere StopHere;
Câu 23: Cho chương trình sau:
Program Vi_du;Var x, y: integer;
Procedure godoit(x, y: integer);
Begin x:= y;y:= 0;Write(x, y);
End;
Begin x:= 1; y:= 2; godoit(x, y); writeln(x, y);End.
Chương trình trên in ra dãy số nào?
A. 2001
B. 1020
C. 2012
D. 1234
Câu 24: Chương trình sau sẽ in ra kết quả nào?
Program ViDu;Var x, y: integer;

Procedure thaydoi(x, y: integer);
Begin x:= y; y:= 0; writeln(x, y); End;
Begin x:= 1; y:= 2; writeln(x, y); thaydoi(x, y); writeln(x, y); End.
Hãy chọn câu trả lời đúng?
A. 1 2 2 0 1 2
B. 1 2
C. 1 2
D. 1 2
20
12
12
Câu 25: Đoạn chương trình sau có lỗi gì?
Procedure End (key: char);
Begin If key = ‘ q ’ then writeln(‘ Ket thuc ’)
End;
A. Thiếu dấu “; ” sau từ khóa Begin;
C. Thiếu dấu “;” sau lệnh writeln;
B. Không thể dùng câu lệnh if trong thủ tục;
D. End không thể dùng làm tên của thủ tục;
Câu 26: Cho chương trình sau:
Program Chuong_Trinh;Var a, b, S: byte;
Procedure TD(Var x: byte; y: byte); Var i: byte;
Begin i:= 5;writeln(x,‘ ’, y);x:= x + i;y:= y + i;S:= x + y;Writeln(x,‘ ’, y);End;
Begin Write(‘nhập a và b: ’);Readln(a, b);TD(a,b);Writeln(a,‘ ’, b, ‘ ’, S);Readln;End.
Trong chương trình trên có các biến cục bộ là:
A. x và y.
B. i
C. a và b.
D. S.
Câu 27: Cho chương trình sau:

Program Chuong_Trinh;Var a, b, S: byte;
Procedure TD(Var x: byte; y: byte); Var i: byte;
Begin i:= 5;writeln(x,‘ ’, y);x:= x + i;y:= y + i;S:= x + y;Writeln(x,‘ ’, y);End;
Begin Write(‘nhập a và b: ’);Readln(a, b);TD(a,b);Writeln(a,‘ ’, b, ‘ ’, S);Readln;End.
Trong chương trình trên có các biến toàn bộ là:
A. x và y.
B. i.
C. a và b.
D. a, b, S.
Câu 28: Cho chương trình sau:
Program Chuong_Trinh;Var a, b, S: byte;
Procedure TD(Var x: byte; y: byte); Var i: byte;
Begin i:= 5;writeln(x,‘ ’, y);x:= x + i;y:= y + i;S:= x + y;Writeln(x,‘ ’, y);End;
Begin Write(‘nhập a và b: ’);Readln(a, b);TD(a,b);Writeln(a,‘ ’, b, ‘ ’, S);Readln;End.
Trong chương trình trên có các tham số thực sự là:
A. x và y.
B. i.
C. a và b.
D. a, b, S.
Câu 29: Cho chương trình sau:
Program Chuong_Trinh;Var a, b, S: byte;
Procedure TD(Var x: byte; y: byte); Var i: byte;
Begin i:= 5;writeln(x,‘ ’, y);x:= x + i;y:= y + i;S:= x + y;Writeln(x,‘ ’, y);End;
Begin Write(‘nhập a và b: ’);Readln(a, b);TD(a,b);Writeln(a,‘ ’, b, ‘ ’, S);Readln;End.
Trong chương trình trên có các tham số hình thức là:
A. x và y.
B. i.
C. a và b.
D. a, b, S.
Nhóm Giáo viên Tin học – Tổ Kỹ Thuật - Công nghệ


Trang 12


Trường THPT Củ Chi

Nhóm Giáo viên Tin học – Tổ Kỹ Thuật - Công nghệ

Tài liệu ôn tập trắc nghiệm Tin học 11 (HKII năm học 2016 – 2017)

Trang 13



×