NEW
Font size
S
M
L
XL
Worksheetstin hk2
Total questions: 72
Worksheet time: 4hrs 36mins
Name
Class
Date
1.
Câu 1. Dữ liệu kiểu tệp…
a)
A. Chỉ được lưu trữ trên đĩa cứng
b)
B. Được lưu trữ trên bộ nhớ RAM
c)
C. Được lưu trữ trên bộ nhớ ROM
d)
D. Được lưu trữ trên bộ nhớ ngoài
2.
Câu 2. Dữ liệu kiểu tệp...
a)
A. Bị mất khi tắt máy
b)
B. Bị mất khi tắt điện đột ngột.
c)
C. Không bị mất khi tắt máy hoặc mất điện.
d)
D. cả A, B, C đều sai.
3.
Câu 3: Phát biểu nào sau đây là đúng?
a)
A. Số lượng phần tử của tệp là cố định.
b)
B. Kích thước tệp có thể rất lớn.
c)
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)
D. Tệp lưu trữ lâu dài trên đĩa, không thể xóa tệp trên đĩa.
4.
Câu 4: Phát biểu nào sau đây là sai?
a)
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)
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)
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)
D. Sau khi mở tệp, con trỏ tệp ở vị trí đầu tệp.
5.
Câu 5: Cách thức truy cập tệp văn bản là?
a)
A. Truy cập tuần tự.
b)
B. Truy cập ngẫu nhiên.
c)
C. Truy cập trực tiếp
d)
D. Vừa truy cập tuần tự vừa truy cập trực tiếp.
6.
Câu 6: Chọn phương án đúng. Số lượng phần tử trong tệp?
a)
A. Không được lớn hơn 128.
b)
B. Không được lớn hơn 255.
c)
C. Phải được khai báo trước.
d)
D. Không bị giới hạn mà chỉ phụ thuộc vào dung lượng đĩa.
7.
Câu 7. Cho các thao tác xử lý tệp: 1)Rewrite 2)write 3)Assign 4)closeTrình tự thao tác xử lý ghi tệp
a)
A. 1 -2-3 -4
b)
B. 3-2-1 -4
c)
C. 1-3-2-4
d)
D. 3-1-2-4
8.
Câu 8. Cho các thao tác xử lý tệp: 1)Reset 2)read 3)Assign 4)close Trình tự thao tác xử lý đọc tệp
a)
A. 3-1-2 -4
b)
B. 3-2-1-4
c)
C. 1-3-2-4
d)
D. 1 -2-3-4
9.
Câu 9. Cho biết đâu là cách khai báo một biến tệp văn bản
a)
A. Var st:test;
b)
B. Var st:text;
c)
C. Var st= test;
d)
D. Var st= text;
10.
Câu 10. Thao tác gán tên cho biến tệp đúng:
a)
A. Assign(f,'so.pas');
b)
B. Assign(f ',so.pas');
c)
C. Assign('f,so.pas');
d)
D. Assign('f ','so.pas');
11.
Câu 11. Thao tác mở tệp văn bản để ghi:
a)
A. Reset(f);
b)
B. Reset(‘baitap.pas’);
c)
C. Rewrite(f);
d)
D. Rewrite(‘baitap.pas’);
12.
Câu 12. Thao tác mở tệp văn bản để đọc:
a)
A. Reset(f);
b)
B. Reset(‘baitap.pas’);
c)
C. Rewrite(f);
d)
D. Rewrite(‘baitap.pas’);
13.
Câu 13. Thao tác đọc tệp văn bản: Read (tên biến tệp, biến 1,...,biến n); các biến…
a)
A. Phải cùng kiểu nhau
b)
B. Có thể cùng kiểu hoặc khác kiểu tùy yêu cầu bài toán
c)
C. Phải khác kiểu nhau
d)
D. Có thể cùng kiểu hoặc khác kiểu tùy ý thích từng người
14.
Câu 14. Giả sử A là 1 biến, F là biến tệp thì thao tác đọc tệp nào đúng?
a)
A. write(A,F) ;
b)
B. write(F,A) ;
c)
C. read(F,A) ;
d)
D. read(A,F) ;
15.
Câu 15. Đối với tệp văn bản, thao tác ghi tệp là:
a)
A. Write(tênbiếntệp, bt1, bt2);
b)
B. Writeln(tênbiếntệp; bt1; bt2);
c)
C. Write(tênbiếntệp; bt1, bt2);
d)
D. Writeln(tênbiếntệp, bt1; bt2);
16.
Câu 16. Giả sử B là biến tệp, x là biến, thao tác ghi tệp nào đúng?
a)
A. write(B;’x =’);
b)
B. write(B, ‘x=’,x:4);
c)
C. write(B; ‘x=’,x:4);
d)
D. writeln(x, B:4:1);
17.
Câu 17. Cho chương trình sau: Var f: text;Begin Assign(f,'baitap.txt'); Rewrite(f);a:= 3; b:= 5; Write(f, ‘a b’ ); Close(f);End. Sau khi thực hiện chương trình, tập tin baitap.txt có nội dung như thế nào?
a)
A. a’ ’b
b)
B. 8
c)
C. 3 5
d)
D. a b
18.
Câu 18. Thủ tục/hàm nào dưới đây cho biết con trỏ tệp ở vị trí cuối tệp chưa?
a)
A. Seek(f,n);
b)
B. Eof(f);
c)
C. Filesize(f);
d)
D. Eoln(f);
19.
Câu 19. Thủ tục, hàm nào dưới đây cho biết con trỏ tệp ở vị trí cuối dòng chưa?
a)
A. Seek(f,n);
b)
B. Eof(f);
c)
C. Filesize(f);
d)
D. Eoln(f);
20.
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)
A. <tên biến tệp> := <tên tệp>;
b)
B. <tên tệp> := <tên biến tệp>;
c)
C. Assign(<tên biến tệp>,<tên tệp>);
d)
D. Assign(<tên tệp>,<tên biến tệp>);
21.
Câu 21. Chọn khẳng định đúng: Hàm Eof(f)
a)
A. Cho kết quả FALSE khi con trỏ tệp nằm ở cuối tệp, ngược lại cho kết quả TRUE
b)
B. Cho kết quả FALSE khi con trỏ tệp nằm ở cuối dòng, ngược lại cho kết quả TRUE
c)
C. Cho kết quả TRUE khi con trỏ tệp nằm ở cuối dòng, ngược lại cho kết quả FALSE
d)
D. Cho kết quả TRUE khi con trỏ tệp nằm ở cuối tệp, ngược lại cho kết quả FALSE
22.
Câu 22. Cấu trúc thao tác đóng tệp nào đúng:
a)
A. CLOSE(tên biến tệp, tên tệp);
b)
B. CLOSE(tên tệp; tên biến tệp);
c)
C. CLOSE(tên biến tệp);
d)
D. CLOSE(tên biến tệp1, tên biến tệp2, …, tên biến tệp n);
23.
Câu 23: Xét theo cách tổ chức dữ liệu, tệp được chia thành?
a)
A. Tệp truy cập tuần tự và tệp truy cập trực tiếp.
b)
B. Tập văn bản và tệp có cấu trúc.
c)
C. Tệp có cấu trúc và tệp truy cập trực tiếp.
d)
D. Tệp văn bản và tệp truy cập tuần tự.
24.
Câu 24: Xét theo cách truy cập dữ liệu, tệp được chia thành?
a)
A. Tệp truy cập tuần tự và tệp truy cập trực tiếp.
b)
B. Tập văn bản và tệp có cấu trúc.
c)
C. Tệp có cấu trúc và tệp truy cập trực tiếp.
d)
D. Tệp văn bản và tệp truy cập tuần tự.
25.
Câu 25: Trong một chương trình Pascal, sau khi đã đóng tệp bằng thủ tục đóng tệp thì có thể mở lại tệp đó hay không?
a)
A. Không được phép mở lại.
b)
B. Được phép mở lại vô số lần tùy ý.
c)
C. Được phép mở lại một lần.
d)
D. Cần phải gắn lại tên tệp cho biến tệp trước khi mở.
26.
Câu 26. Hãy cho biết biến M có giá trị bao nhiêu khi kết thúc chương trình sau:Var F: Text; J , M: Byte; Begin Assign(F,'DATA.INP'); Reset(F); M := 0; While not Eof(F) Do Begin Read(F, J); If J mod 2 = 0 Then M := M + J; End; Close(F); End.
a)
A. 24
b)
B. 20
c)
C. 18
d)
D. 12
27.
Câu 27. Hãy cho biết nội dung của tệp DATA.INP kết thúc chương trình sau: Var F: Text; J, M: Byte; Begin Assign(F,'DATA.INP'); Rewrite(F); M := 0;For j:=1 to 10 do If J mod 3 =0 then write(f, J:3); Close(f);end.
a)
A. 12345678910
b)
B. 1 2 3 4 5 6 7 8 9 10
c)
C. 369
d)
D. 3 6 9
28.
Câu 28. Để gán tệp vidu.txt lưu trên ổ đĩa D cho biến tệp f ta sử dụng câu lệnh
a)
A. assign(‘f , D:\vidu.txt’);
b)
B. assign(f , D:\vidu .txt);
c)
C. assign(‘D:\vidu.txt’,f );
d)
D. assign(f , ‘D:\vidu .txt’);
29.
Câu 29. Cho khai báo: Var F:Text; Sau khi thực hiện các lệnh: Assign(F,'tt1.txt'); Rewrite(F); Write(F,123+456); Close(F); Nội dung của tệp tt1.txt sẽ là:
a)
A. 579
b)
B. 123456
c)
C. 123 456
d)
D. 123+456
30.
Câu 30. Trong một chương trình:
a)
A. Tất cả các ý đều sai
b)
B. Phải có 1 CTC
c)
C. Không cần có CTC nào
d)
D. Phải có nhiều CTC
31.
Câu 31. Có mấy loại CTC?
a)
A. 1
b)
B. 2
c)
C. 3
d)
D. 4
32.
Câu 32: 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)
A. Kiểu của các tham số.
b)
B. Kiểu giá trị trả về.
c)
C. Tên hàm.
d)
D. Địa chỉ mà hàm trả về.
33.
Câu 33: Mô tả nào dưới đây về hàm là sai?
a)
A. Phải trả lại kết quả.
b)
B. Phải có tham số.
c)
C. Trong hàm có thể gọi lại chính hàm đó.
d)
D. Có thể có các biến cục bộ.
34.
Câu 34: 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)
A. Sin(x).
b)
B. Length(S).
c)
C. Sqrt(x).
d)
D. Delete(S,5,1)
35.
Câu 35. CTC được viết tại vị trí nào trong một chương trình hòan chỉnh
a)
A. Trước phần khai báo
b)
B. Sau phần khai báo, trước thân chương trình chính
c)
C. Sau phần khai báo
d)
D. Trong thân chương trình chính
36.
Câu 36. CTC được gọi tại vị trí nào trong một chương trình hòan chỉnh
a)
A. Trước phần khai báo
b)
B. Sau phần khai báo, trước thân chương trình chính
c)
C. Trong phần khai báo
d)
D. Trong thân chương trình chính
37.
Câu 37: 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)
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)
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)
C. Phần đầu có thể có hoặc không có cũng được.
d)
D. Phần đầu nhất thiết phải có để khai báo tên chương trình con.
38.
Câu 38. Mục đích sử dụng CTC:
a)
A. Tất cả các ý đều đúng
b)
B. Dễ kiểm tra và sửa lỗi
c)
C. Có thể chia cho nhiều người cùng viết 1chương trình
d)
D. Tránh lặp lại cùng 1 nhóm lệnh nào đó
39.
Câu 39. Lời gọi đúng của CTC thủ tục có tham số trong thân của chương trình chính
a)
A. Tênthủtục;
b)
B. Tênthủtục(danh sáchthamsố);
c)
C. Cả hai đều đúng
d)
D. Cả hai đều sai
40.
Câu 40. Lời gọi đúng của CTC thủ tục không có tham số trong thân của chương trình chính
a)
A. Tênthủtục ;
b)
B. Tênthủtục(danh sáchthamsố);
c)
C. Cả hai đều đúng
d)
D. Cả hai đều sai
41.
Câu 41. Cho khai báo biến và khai báo đầu của thủ tục như sau: Var x, S: integer; ch:char; Procedure TT(y:integer; kytu:char); Lệnh gọi thủ tục nào dưới đây là đúng:
a)
A. S:= TT(x, ch);
b)
B. TT(ch, x);
c)
C. S:= TT(ch, x);
d)
D. TT(x, ch);
42.
Câu 42. Cho chương trình sau: Var x, y: integer; Procedure Doicho (Var a : integer; b : integer); Var tg: integer; Begin tg:=a; a:=b; b:=tg; end; Begin x:=2; y:=5; Doicho(x,y); Writeln(x,y); End. Sau khi thực hiện chương trình trên x và y có kết quả là:
a)
A. 2 2
b)
B. 2 5
c)
C. 5 5
d)
D. 5 2
43.
Câu 46. Cách viết tên thủ tục nào đúng?
a)
A. Procedure CTC;
b)
B. Procedure CTC : integer ;
c)
C. Procedure CTC(a);
d)
D. Tất cả đều sai
44.
Câu 47. Đoán kết quả x, y của chương trình sau: Var x,y: integer; Procedure Tinh; Var x: integer ; Begin x:=1 ; End; BEGIN x:=2; y:=3 ; Tong; Write(y, ‘ ‘,x); END.
a)
A. 3 2
b)
B. 2 3
c)
C. 3 1
d)
D. 1 3
45.
Câu 48. Procedure Hdoi(var a,b : integer); a, b đóng vai trò là:
a)
A. Tham số biến
b)
B. Tham số thực sự
c)
C. Tham số giá trị
d)
D. Cả 3 ý đều đúng
46.
Câu 49. Khi gọi CTC Luythua(x); thì x đóng vai trò là:
a)
A. Tham số hình thức
b)
B. Tham số biến
c)
C. Tham số thực sự
d)
D. Tham số giá trị
47.
Câu 50. Cấu trúc một CTC thủ tục gồm mấy phần bắt buộc
a)
A. Hai phần
b)
B. Ba phần
c)
C. Một phần
d)
D. Bốn phần
48.
Câu 51. Cách viết phần đầu của hàm nào đúng?
a)
A. Function CTC( a) : integer;
b)
B. Function var CTC : integer;
c)
C. Function CTC( a : integer): integer;
d)
D. Function CTC ( a : integer);
49.
Câu 52. Cấu trúc một CTC gồm mấy phần?
a)
A. Hai phần
b)
B. Ba phần
c)
C. Một phần
d)
D. Bốn phần
50.
Câu 53. Tham số thực sự của tham số biến có thể là:
a)
A. Biến
b)
B. Hằng, Biến, Biểu thức
c)
C. Hằng, Biến
d)
D. Biến, Biểu thức
51.
Câu 54. Tham số thực sự của tham số giá trị có thể là:
a)
A. Hằng, Biến, Biểu thức
b)
B. Hằng hoặc Biến
c)
C. Biến hoặc Biểu thức
d)
D. Chỉ là Biến
52.
Câu 55. Tham số biến:
a)
A. Thay đổi theo lời gọi CTC
b)
B. Không thay đổi theo lời gọi CTC
c)
C. Tùy từng CTC
d)
D. Giữ giá trị có tại thân chương trình chính
53.
Câu 56. Tham số giá trị:
a)
A. Thay đổi theo lời gọi CTC
b)
B. Không giữ giá trị có tại chương trình chính.
c)
C. Giữ giá trị có tại thân chương trình chính
d)
D. Tùy từng CTC
54.
Câu 57. Khẳng định nào sau đây là đúng?
a)
A. Một chương trình con nhất thiết phải có tham số hình thức
b)
B. Một chương trình con nhất thiết phải có biến cục bộ
c)
C. Một chương trình con có thể không có tham số hình thức, không nhất thiết phải có biến cục bộ
d)
D. 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ộ
55.
Câu 58: Điền vào chỗ trống. Chương trình con là....?
a)
A. Một dãy lệnh mô tả một số thao tác nhất định và có thể được thực hiện từ nhiều vị trí trong chương trình.
b)
B. Một dãy lệnh mô tả một số thao tác nhất định và trả về một giá trị thông qua tên của nó.
c)
C. Một dãy lệnh mô tả một số thao tác nhất định nhưng không trả về một giá trị thông qua tên của nó.
d)
D. Một dãy lệnh mô tả một số thao tác nhất định và trả về nhiều giá trị thông qua tên của nó.
56.
Câu 59: Dấu hiệu để nhận biết tham số hình thức là một tham biến?
a)
A. Có từ khóa VAR ở trước.
b)
B. Được khai báo ở chương trình chính.
c)
C. Được khai báo ở chương trình con.
d)
D. Có giá trị không thay đổi khi ra khỏi chương trình con.
57.
Câu 60. Biến toàn cục được khai báo trong:
a)
A. Phần khai báo của CTC
b)
B. Phần khai báo của chương trình chính
c)
C. Tùy ý theo từng bài toán
d)
D. Tùy ý theo người viết chương trình
58.
Câu 61. Biến cục bộ được khai báo :
a)
A. Phần khai báo của CTC
b)
B. Phần khai báo của chương trình chính
c)
C. Tùy ý theo từng bài toán
d)
D. Tùy ý theo người viết chương trình
59.
Câu 62. Biến toàn cục có tác dụng
a)
A. Trong thân chương trình chính
b)
B. Trong toàn bộ chương trình
c)
C. Trong thân các chương trình con
d)
D. Trong thân chương trình con được khai báo
60.
Câu 63. Biến cục bộ có tác dụng
a)
A. Trong thân chương trình chính
b)
B. Trong toàn bộ chương trình
c)
C. Trong thân các chương trình con
d)
D. Trong thân chương trình con được khai báo
61.
Câu 64. Cho chương trình: var a: integer; Procedure T(x:Integer); Begin x:=x+2; End; Begin a:=5; t(a); write(a); End.Giá trị của biến a xuất ra màn hình là:
a)
A. 5
b)
B. 7
c)
C. 2
d)
D. 0
62.
Câu 72: Chương trình con gồm có các thành phần theo thứ tự?
a)
A. Phần đầu, phần khai báo, phần thân.
b)
B. Phần khai báo, phần đầu, phần thân.
c)
C. Phần khai báo, phần thân, phần đầu.
d)
D. Phần đầu, phần thân, phần khai báo.
63.
Câu 73: Cú pháp của lời gọi chương trình con?
a)
A. <Tên chương trình con>(tham số thực sự).
b)
B. <Tên chương trình con>[tham số thực sự].
c)
C. <Tên chương trình con>{tham số thực sự}.
d)
D. (tham số thực sự)<Tên chương trình con>.
64.
Câu 74: Chương trình con có mấy loại?
a)
A. 1.
b)
B. 2.
c)
C. 3.
d)
D. 4.
65.
Câu 75: Cho CTC sau: Function tinh(a, b: integer): real; Begin Tinh:= a div b; End; trả về kết quả giá trị như thế nào với a = 18, b = 4?
a)
A. 1.
b)
B. 0.
c)
C. 4.
d)
D. 2.
66.
Câu 76: Cho CTC sau: Function tinh(a, b: integer): real; Begin Tinh:= a mod b; End; trả về kết quả giá trị như thế nào với a = 18, b = 4?
a)
A. 1.
b)
B. 0.
c)
C. 4.
d)
D. 2.
67.
Câu 77: Thứ tự thực hiện ghi vào tệp VIDU.TXT 2 số nguyên a, b thông qua biến tệp f như thế nào là đúng:
a)
A. Assign(f,’VIDU.TXT’); ( rewrite(f); ( write(f,a,b); ( close(f);
b)
B. Assign(f,’VIDU.TXT’); ( reset(f); ( write(f,a,b); ( close(f);
c)
C. Assign(f,’VIDU.TXT’); ( rewrite(f); ( read(f,a,b); ( close(f);
d)
D. Assing(f,’VIDU.TXT’); ( rewrite(f); ( write(f,a,b); (close(f);
68.
Câu 78: Từ khóa dùng để kí hiệu phần thân của chương trình con là?
a)
A. begin.
b)
B. end.
c)
C. Cặp từ khóa begin và end.
d)
D. Cặp từ khóa begin và end;
69.
Câu 79: Muốn khai báo x là tham trị, y là tham biến (x,y thuộc kiểu integer) trong thủ tục vidu thì khai báo nào sau đây là đúng?
a)
A. Procedure vidu(var x, y: integer);.
b)
B. Procedure vidu(var x; y: integer);.
c)
C. Procedure vidu(var x: integer; y: integer);.
d)
D. Procedure vidu(x: integer; var y: integer);.
70.
Câu 80: Đoạn chương trình sau có lỗi gì ?
a)
A. Thiếu dấu “ ; ” sau từ khóa Begin ;
b)
B. Không thể dùng câu lệnh if trong thủ tục;
c)
C. Thiếu dấu “ . ” sau lệnh writeln ;
d)
D. End không thể dùng làm tên của thủ tục ;
71.
Câu 81: 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. Cho chương trình sau: Program VD_bt2_txt ; Var f : text ; S : string[9] ; Begin Assign(f, ‘BT2.TXT ’) ; Reset(f) ; Read(f, S) ; Write(S) ; Close(f) ; End . Khi Thực hiện chạy chương trình VD_bt2_txt, trên màn hình sẽ hiện kết quả nào trong các kết quả cho dưới đây ?
a)
A. CHAO MUNG
b)
B. CHAO MUNG BAN DEN VOI LAP TRINH
c)
C. CHAO MUNG BAN
d)
D. CHAO MUNG BAN DEN VOI
72.
Câu 82: Phần đầu của hàm có cấu trúc là?
a)
A. PROCEDURE [<tên thủ tục>](<Danh sách tham số>): <Kiểu dữ liệu>;
b)
B. FUNCTION <tên hàm>[(<Danh sách tham số>)];
c)
C. PROCEDURE <tên thủ tục>[(<Danh sách tham số>)];
d)
D. FUNCTION <tên hàm>[(<Danh sách tham số>)]: <Kiểu dữ liệu>;
Reset
