WorksheetsTin học lớp 11
Total questions: 81
Worksheet time: 41mins
Dữ liệu kiểu tệp…
Dữ liệu kiểu tệp…
Được lưu trữ trên bộ nhớ RAM
Được lưu trữ trên bộ nhớ ROM
Được lưu trữ trên bộ nhớ ngoài
Dữ liệu kiểu tệp...
Bị mất khi tắt máy
Bị mất khi tắt điện đột ngột.
Không bị mất khi tắt máy hoặc mất điện.
cả A, B, C đều sai.
Câu 3: 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 4: 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 5: 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 6: Chọn phương án đúng. 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 7. Cho các thao tác xử lý tệp:1)Rewrite 2)write 3)Assign 4)close
A. 1 2 3 4
B. 3 2 4 1
1 3 2 4
3 1 2 4
Câu 8. Cho các thao tác xử lý tệp: 1)Reset 2)read 3)Assign 4)close
3 1 2 4
3 2 1 4
1 3 2 4
1 2 3 4
Câu 9. Cho biết đâu là cách khai báo một biến tệp văn bản
A. Var st:test;
B. Var st:text;
C. Var st= test;
D. Var st= text;
Câu 10. Thao tác gán tên cho biến tệp đúng:
A. Assign(f,'so.pas');
B. Assign(f ',so.pas');
C. Rewrite(f);
D. Rewrite(‘baitap.pas’);
Câu 11. Thao tác mở tệp văn bản để ghi:
A. Reset(f);
B. Reset(‘baitap.pas’);
C. Rewrite(f);
D. Rewrite(‘baitap.pas’);
Câu 12. Thao tác mở tệp văn bản để đọc
A. Reset(f);
B. Reset(‘baitap.pas’);
C. Rewrite(f);
D. Rewrite(‘baitap.pas’);
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. Phải cùng kiểu nhau
B. Có thể cùng kiểu hoặc khác kiểu tùy yêu cầu bài toán
C. Phải khác kiểu nhau
D. Có thể cùng kiểu hoặc khác kiểu tùy ý thích từng người
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. write(A,F) ;
B. write(F,A) ;
C. read(F,A) ;
D. read(A,F) ;
Câu 15. Giả sử B là biến tệp, x là biến, thao tác ghi tệp nào đúng?
A. write(B;’x =’);
B. write(B, ‘x=’,x:4);
C. write(B; ‘x=’,x:4);
D. writeln(x, B:4:1);
Câu 16. 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’ ’b
8
3 5
a b
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. Seek(f,n);
B. Eof(f);
C. Filesize(f);
D. Eoln(f);
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. Seek(f,n);
B. Eof(f);
C. Filesize(f);
D. Eoln(f);
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>;
B. <tên tệp> := <tên biến tệp>;
C. Assign(<tên biến tệp>,<tên tệp>);
D. Assign(<tên tệp>,<tên biến tệp>);
Câu 21. Chọn khẳng định đúng: Hàm Eof(f)
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. 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. 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. 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
Câu 22. Cấu trúc thao tác đóng tệp nào đúng:
A. CLOSE(tên biến tệp, tên tệp);
B. CLOSE(tên tệp; tên biến tệp);
C. CLOSE(tên biến tệp);
D. CLOSE(tên biến tệp1, tên biến tệp2, …, tên biến tệp n);
Câu 23: Xét theo cách tổ chức dữ liệu, tệp được chia thành?
A. Tệp truy cập tuần tự và tệp truy cập trực tiếp.
B. Tập văn bản và tệp có cấu trúc.
C. Tệp có cấu trúc và tệp truy cập trực tiếp.
D. Tệp văn bản và tệp truy cập tuần tự.
Câu 24: Xét theo cách truy cập dữ liệu, tệp được chia thành?
A. Tệp truy cập tuần tự và tệp truy cập trực tiếp.
B. Tập văn bản và tệp có cấu trúc
C. Tệp có cấu trúc và tệp truy cập trực tiếp.
D. Tệp văn bản và tệp truy cập tuần tự.
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. Không được phép mở lại.
B. Được phép mở lại vô số lần tùy ý.
C. Được phép mở lại một lần.
D. Cần phải gắn lại tên tệp cho biến tệp trước khi mở
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:
DATA.INP
2 5 7 3 6 9 12
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.
24
20
18
12
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.
12345678910
B. 1 2 3 4 5 6 7 8 9 10
C. 369
D. 3 6 9
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. assign(‘f , D:\vidu.txt’);
B. assign(f , D:\vidu .txt);
C. assign(‘D:\vidu.txt’,f );
D. assign(f , ‘D:\vidu .txt’);
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à:
579
123456
123 456
123+456
Câu 30. Trong một chương trình:
A. Tất cả các ý đều sai
B. Phải có 1 CTC
C. Không cần có CTC nào
D. Phải có nhiều CTC
Câu 31. Có mấy loại CTC?
1
2
3
4
Câu 32 . Đối với tệp văn bản, thao tác ghi tệp là:
A. Write(tênbiếntệp, bt1, bt2);
B. Writeln(tênbiếntệp; bt1; bt2);
C. Write(tênbiếntệp; bt1, bt2;
D. Writeln(tênbiếntệp, bt1; bt2);
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. Kiểu của các tham số.
B. Kiểu giá trị trả về.
C. Tên hàm.
D. Địa chỉ mà hàm trẢ VỀ
Câu 33: Mô tả nào dưới đây về hàm là sai?
. Phải trả lại kết quả.
B. Phải có tham số.
C. Trong hàm có thể gọi lại chính hàm đó.
D. Có thể có các biến cục bộ.
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. Sin(x).
B. Length(S).
C. Sqrt(x).
D. Delete(S,5,1)
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. Trước phần khai báo
B. Sau phần khai báo, trước thân chương trình chính
C. Sau phần khai báo
D. Trong thân chương trình chính
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. Trước phần khai báo
. Sau phần khai báo, trước thân chương trình chính
C. Sau phần khai báo
D. Trong thân chương trình chính
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. 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 38. Mục đích sử dụng CTC:
A. Tất cả các ý đều đúng
B. Dễ kiểm tra và sửa lỗi
C. Có thể chia cho nhiều người cùng viết 1chương trình
D. Tránh lặp lại cùng 1 nhóm lệnh nào đó
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
Tênthủtục
Tênthủtục(danh sáchthamsố);
Cả hai đều đúng
Cả hai đều sai
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
Tênthủtục
B. Tênthủtục(danh sáchthamsố);
. Cả hai đều đúng
. Cả hai đều sai
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. S:= TT(x, ch);
B. TT(ch, x);
C. S:= TT(ch, x);
D. TT(x, ch);
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à:
2 2
2 5
5 5
5 2
Câu 43. Sau khi thực hiện chương trình a có giá trị bao nhiêu?
Var a: integer;
Procedure TT ( Var y : Integer) ;
Begin y := y +1; End;
BEGIN a:=6; TT(a); Write(a); END.
7
6
5
4
Câu 45. Đoán kết quả x, y của chương trình sau: Var x, y : integer;
Procedure Tong;
Begin x:=x*2; y:=x+2; End;
BEGIN x:=2; Tong; Write(x, ‘ ‘,y); END.
4 6
2 4
4 2
4 4
Cách viết tên thủ tục nào đúng?
A. Procedure CTC;
B. Procedure CTC : integer ;
C. Procedure CTC(a);
D. Tất cả đều sai
Câu 48. Procedure Hdoi(var a,b : integer); a, b đóng vai trò là:
A. Tham số biến
B. Tham số thực sự
C. Tham số giá trị
D. Cả 3 ý đều đúng
Đ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.
3 2
2 3
3 1
1 3
Đoán kết quả x, y của chương trình sau:
Var x, y : integer;
Procedure TT; Begin x:=x+1; y:=x*2; End;
BEGIN x:=1; TT; Write(x, ‘ ‘,y); END.
2 4
1 2
2 2
1 4
Khi gọi CTC Luythua(x); thì x đóng vai trò là:
Tham số hình thức
Tham số biến
Tham số thực sự
Tham số giá trị
Cấu trúc một CTC thủ tục gồm mấy phần bắt buộc
2 phần
3 phần
1 phần
4 phần
Cách viết phần đầu của hàm nào đúng?
A. Function CTC( a) : integer;
B. Function var CTC : integer;
C. Function CTC( a : integer): integer;
D. Function CTC ( a : integer);
Câu 52. Cấu trúc một CTC gồm mấy phần
Hai phần
Ba phần
Một phần
Bốn phần
Tham số thực sự của tham số biến có thể là:
Biến
B. Hằng, Biến, Biểu thức
C. Hằng, Biến
D. Biến, Biểu thức
Tham số thực sự của tham số giá trị có thể là:
Hằng, Biến, Biểu thức
Hằng hoặc Biến
Biến hoặc Biểu thức
Chỉ là Biến
Câu 55. Tham số biến:
A. Thay đổi theo lời gọi CTC
B. Không thay đổi theo lời gọi CTC
C. Tùy từng CTC
D. Giữ giá trị có tại thân chương trình chính
Câu 56. Tham số giá trị:
A. Thay đổi theo lời gọi CTC
B. Không giữ giá trị có tại chương trình chính.
C. Giữ giá trị có tại thân chương trình chính
D. Tùy từng CTC
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 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. 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ộ
Điền vào chỗ trống. Chương trình con là....?
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. 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. 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. 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ó.
Câu 59: Dấu hiệu để nhận biết tham số hình thức là một tham biến?
A. Có từ khóa VAR ở trước.
B. Được khai báo ở chương trình chính.
C. Được khai báo ở chương trình con.
D. Có giá trị không thay đổi khi ra khỏi chương trình con.
Câu 60. Biến toàn cục được khai báo trong:
A. Phần khai báo của CTC
B. Phần khai báo của chương trình chính
C. Tùy ý theo từng bài toán
D. Tùy ý theo người viết chương trình
Câu 61. Biến cục bộ được khai báo :
A. Phần khai báo của C
B. Phần khai báo của chương trình chính
C. Tùy ý theo từng bài toán
D. Tùy ý theo người viết chương trình
Câu 62. Biến toàn cục có tác dụng
A. Trong thân chương trình chính
B. Trong toàn bộ chương trình
C. Trong thân các chương trình con
D. Trong thân chương trình con được khai báo
Câu 63. Biến cục bộ có tác dụng
A. Trong thân chương trình chính
B. Trong toàn bộ chương trình
C. Trong thân các chương trình con
D. Trong thân chương trình con được khai báo
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à:
5
7
2
0
Cho chương trình: var a: integer;
Procedure T( var 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à:
5
7
2
0
Khi chạy chương trình:
Var x, y: integer; Function F(x,y : integer): integer; Begin if x<y Then F:=x Else F:=y; End; Begin x:=10; y:=15; Write(F(x,y)); End.
Kết quả in ra là:
10
15
0
F(x,y)
Câu 67,68,69, 70
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(‘nhap a và b : ’);
Readln(a, b);
TD(a,b);
Writeln(a,‘ ’, b, ‘ ’, S);
Readln;
End.
Câu 67: 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 68: Trong chương trình trên có các biến toàn cục là?
A. x và y
i
a và b
a,b,S
Câu 69: Trong chương trình trên có các tham số thực sự là?
x và y
i
a và b
a,b,S
Câu 70: Trong chương trình trên có các tham số hình thức là?
x và y
i
a và b
a,b,S
Câu 71: Phần đầu của hàm có cấu trúc như sau?
A. FUNCTION <tên hàm>[(<Danh sách tham số>)]: <Kiểu dữ liệu>;.
B. FUNCTION <tên hàm>[(<Danh sách tham số>)];.
C. FUNCTION <tên hàm>[(<Danh sách tham số>)]: [<Kiểu dữ liệu>];.
D. FUNCTION [<tên hàm>](<Danh sách tham số>): <Kiểu dữ liệu>;.
Câu 72: Chương trình con gồm có các thành phần theo thứ tự?
A. Phần đầu, phần khai báo, phần thân.
B. Phần khai báo, phần đầu, phần thân.
. Phần khai báo, phần thân, phần đầu.
D. Phần đầu, phần thân, phần khai báo.
Câu 73: Cú pháp của lời gọi chương trình con?
A. <Tên chương trình con>(tham số thực sự).
B. <Tên chương trình con>[tham số thực sự].
C. <Tên chương trình con>{tham số thực sự}.
D. (tham số thực sự)<Tên chương trình con>.
Chương trình con có mấy loại?
1
2
3
4
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?
1
0
4
2
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. Assign(f,’VIDU.TXT’); -> rewrite(f); -> write(f,a,b); -> close(f);
B. Assign(f,’VIDU.TXT’); -> reset(f); -> write(f,a,b);
->close(f);
C. Assign(f,’VIDU.TXT’);-> rewrite(f);
->read(f,a,b);
-> close(f);
D. Assing(f,’VIDU.TXT’); -> rewrite(f);
->write
Câu 78: Từ khóa dùng để kí hiệu phần thân của chương trình con là?
A. begin.
B. end.
C. Cặp từ khóa begin và end.
D. Cặp từ khóa begin và end;
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. Procedure vidu(var x, y: integer);.
B. Procedure vidu(var x; y: integer);.
C. Procedure vidu(var x: integer; y: integer);.
D. Procedure vidu(x: integer; var y: integer);.
Câu 80: Đ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 ;
B. Không thể dùng câu lệnh if trong thủ tục;
C. Thiếu dấu “ . ” sau lệnh writeln ;
D. End không thể dùng làm tên của thủ tục ;
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. CHAO MUNG
B. CHAO MUNG BAN DEN VOI LAP TRINH
C. CHAO MUNG BAN
D. CHAO MUNG BAN DEN VOI
Câu 50. Cấu trúc một CTC thủ tục gồm mấy phần bắt buộc
2
3
1
4
