NGÂN HÀNG CÂU HỎI ÔN THI HỌC KÌ 2 NĂM 2020 MÔN TIN HỌC 11 TRƯỜNG THPT NÚI THÀNH
I. KIỂU XÂU.
1. Nhận biết.
Câu 1: Độ dài lớn nhất của một xâu có giá trị là bao nhiêu?
A. 0
B. 1
C. 255
D. 256
Câu 2: Thủ tục Delete(m, n, p); thực hiện việc gì?
A. Xóa m ký tự của xâu n kể từ vị trí p.
B. Xóa p ký tự của xâu m kể từ vị trí n.
C. Xóa n ký tự của xâu m kể từ vị trí p.
D. Xóa p ký tự của xâu S kể từ vị trí n.
Câu 3: Cho xâu S có giá trị là: ‘TinVhocV11’ thì cách khai báo biến S nào sau đây là không đúng?
A. var S: string [20];
B. var S: string;
C. var S: string[10];
D. var S = string [10];
Câu 4: Cho câu lệnh gán m := copy(n, 3, 1); với n đã có giá trị thì biến m phải khai báo kiểu gì?
A. byte.
B. string.
C. char
D. real
Câu 5: Cho hai biến S, P kiểu string, câu lệnh gán nào sau đây không hợp lệ ? (P đã có giá trị)
A. S := P ;
B. S := copy(P, 1, 1) ;
C. S := Delete(P, 1, 1);
D. S := P + ‘anh’;
Câu 6: Hàm length(P) cho kết quả là gì?
A. Độ dài của xâu P khi khai báo.
B. Số ký tự hiện có của xâu P.
C. Độ dài xâu P, không tính dấu cách.
D. Số lượng dấu cách trong xâu P.
Câu 7: Trong các khai báo sau, khai báo nào sai?
A. var S: string;
B. var P: string[111];
C. var Q: string[256];
D. var T: string[1];
Câu 8: Trong NNLT Pascal, xâu ký tự không có ký tự nào được gọi là:
A. Xâu không
B. Xâu trắng
C. Xâu rỗng
D. Không phải là xâu ký tự.
Câu 9: Để xóa đi 2 ký tự cuối cùng của xâu Q, ta viết:
A. Delete(Q, 1, 1);
B. Delete(Q, length(Q)-1, 2);
C. Delete(Q, 2, length(Q));
D. Delete(Q, n, 2);
Câu 10: Thủ tục Delete(S,1, 5); có ý nghĩa gì?
A. Xóa 1 ký tự trong xâu S kể từ vị trí thứ 5.
B. Xóa 5 ký tự trong xâu S kể từ vị trí đầu tiên.
C. Xóa xâu 1 ký tự trong xâu S kể từ vị trí đầu tiên.
D. Xóa xâu S 5 ký tự kể từ vị trí thứ thứ 5.
2. Thông hiểu.
Câu 1: Hàm pos(‘em’, S) cho kết quả bao nhiêu với S = ‘EmVyeuVtruongVem’?
A. 1
B. 15
C. 16
D. 0
Câu 2: Để xóa đi ký tự đầu tiên của xâu Q, ta viết:
A. Delete(Q, 1, 1);
B. Delete(Q, length(Q), 1);
C. Delete(Q, 1, length(Q));
D. Delete(Q, n, 1);
Câu 3: Hàm upcase(‘ab’) cho kết quả là gì?
A. Xâu ‘AB’.
B. Xâu ‘ab’
C. Xâu ‘Ab’
D. Không cho kết quả, bị lỗi.
Câu 4: P có giá trị bằng bao nhiêu trong câu lệnh gán sau:
P := copy(‘KiemVtraV15Vphut’, 6, 4);
A. ‘mVtraV’
B. ‘traV’
C. ‘15Vph’
D. ‘Vtra’
Câu 5. Biến Q có giá trị bao nhiêu trong câu lệnh: Q := pos(‘xuan’, ‘XuanVMauVTuat’);
A. 0.
B. 1.
C. 4.
D. 13.
3. Vận dụng.
Câu 1: Kết quả của X, Y sau khi thực hiện đoạn chương trình sau là bao nhiêu?
X := ‘LichVSuVVietVNam’;
Y := pos(‘i’, X) + 5; Delete(X, 1, 8);
A. X = ‘LichVSu’, Y = 2
B. X = ‘LichVSu’, Y = 7
C. X = ‘VietVNam’, Y = 7.
D. X = ‘VietVNam’, Y = 15
Câu 2: Cho xâu A = ‘XuanVMauVTuat’, để có xâu B = ‘uan’, ta thực hiện ntn?
A. copy(A, 3, 2);
B. B := Pos(A, 2, 3);
C. B := copy(A, 3, 2);
D. B := copy(A, 2, 3);
Câu 3: Cho S = ‘NgonVHaiVDang’, để có xâu P = ‘Hai’, ta thực hiện lệnh nào?
A. Delete(S, 1, 5); Delete(S, 4, 5);
B. S := Delete(S, 6, 3);
C. P := pos(‘Hai’, S);
D. P := copy(S, 6, 3);
Câu 4: Để tìm vị trí đầu tiên xuất hiện xâu ‘tin’ trong xâu P, ta viết:
A. copy(P, 1, 3)
B. pos(‘tin’, P) := m;
C. m := pos(‘tin’, P);
D. n := pos(P, ‘tin’) ;
4. Vận dụng nâng cao.
Câu 1: Đoạn chương trình sau thực hiện việc gì?
S := 0;
A. Đếm các ký tự b trong xâu Q.
B. Đếm các ký tự B trong xâu Q.
C. Tạo ta xâu S chứa các ký tự b và B.
D. Đếm các ký tự b và B trong xâu Q.
Câu 2: Đoạn chương trình sau thực hiện việc gì?
m := ‘’;
A. Đếm các ký tự a trong xâu P.
B. Tạo xâu m bằng cách loại bỏ các ký tự a trong xâu P.
C. Tạo xâu P bằng cách lấy các ký tự a trong xâu m.
D. Tạo xâu m bằng cách lấy các ký tự a trong xâu P.
Câu 3: Đoạn chương trình sau thực hiện việc gì?
m := 0;
For i := 1 to length(P) do
if (P[i] < ‘0’) or (P[i] > ‘9’) then m := m + 1;
A. Đếm các ký tự là ký tự số trong xâu P
B. Đếm các ký tự không phải là ký tự số trong xâu P
C. Tạo xâu m chứa các ký tự số có trong xâu P.
D. Tạo xâu m không chứa các ký tự số từ xâu P.
Câu 4: Đoạn chương trình sau thực hiện việc gì?
m := ‘’;
For i := 1 to length(P) do
if (P[i] >= ‘0’) and (P[i] <= ‘9’) then m := m + P[i];
A. Đếm các ký tự là ký tự số trong xâu P
B. Đếm các ký tự không phải là ký tự số trong xâu P
C. Tạo xâu m chứa các ký tự số có trong xâu P.
D. Tạo xâu m không chứa các ký tự số từ xâu P.
II. CHƯƠNG TRÌNH CON
1. Nhận biết.
Câu 1: Phát biểu nào sau đây là sai khi nói về biến cục bộ?
A. Biến cục bộ là biến được khai báo trong chương trình chính.
B. Trong một chương trình con có thể có hoặc không có biến cục bộ.
C. Biến cục bộ là biến được khai báo trong chương trình con.
D. Biến cục bộ chỉ được dùng trong chương trình con khai báo nó.
Câu 2: Cấu trúc của chương trình con bao gồm mấy phần?
A. 1 B. 2 C. 3. D. 4
Câu 3: Chọn phương án đúng:
A. Chương trình con không thể sử dụng được biến của chương trình chính.
B. Thủ tục trả về giá trị qua tên của nó
C. Hàm không trả về giá trị nào qua tên của nó.
D. Lời gọi thủ tục không thể tham gia vào biểu thức tính toán
Câu 4: Trong phần thân của hàm bắt buộc phải có câu lệnh nào?
A.
C.
Câu 5: Chương trình con nằm ở vị trí nào trong chương trình chính?
A. Sau khi khai báo biến cho chương trình chính.
B. Trước khi khai báo biến cho chương trình chính
C. Phần thân của chương trình chính.
D. Nằm bất kỳ vị trí nào trong chương trình.
Câu 6: Chọn phát biểu sai khi nói về tham trị và tham biến.
A. Tham trị khai báo không có VAR, còn tham biến khai báo có VAR.
B. Tham trị dùng để lưu dữ liệu ra, còn tham biến dùng để đưa dữ liệu vào.
C. Tham số thực sự (TSTS) thay cho tham biến chỉ là biến, còn TSTS thay cho tham trị là một giá trị cụ thể.
D. Tham biến dùng để lưu dữ liệu ra, còn tham trị dùng để đưa dữ liệu vào.
Câu 7. Chỉ ra biến cục bộ trong thủ tục sau:
Procedure Tinh (m: Byte; Var P: Word);
Var i: Byte;
Begin P:=0;
For i:= 1 to m do P:=P+i;
End;
A. m và P. B. i. C. P. D. m, P và i.
Câu 8: Kiểu dữ liệu nào sau đây không phải là kiểu dữ liệu trả về của hàm?
A. Kiểu mảng B. Kiểu thực C. Kiểu nguyên D. Kiểu xâu
Câu 9. Hãy chỉ ra tham số hình thức trong phần đầu của thủ tục như sau:
Procedure BP(a,b: integer; Var P:longint);
A. a và b B. P C. a, b và P. D. BP
2. Thông hiểu.
Câu 1: Phần đầu của hàm tính diện tích hình tròn, bán kính R được viết là:
A. Function dien tich (R: integer): integer;
B. Function dientich (R: integer; var S: real): real;
C. Function dientich (R: real): integer;
D. Function dientich (R: integer): real;
Câu 2: Câu lệnh gán giá trị cho tên hàm được đặt ở phần nào của hàm?
A. Phần đầu B. Phần khai báo C. Phần thân D. Sau khi khai báo biến
Câu 3: Phần đầu của thủ tục tính tổng của 2 số a và b được viết là:
A. Procedure TONG (a, b: integer);
B. Procedure TONG (a, b: integer; var S: integer);
C. Function TONG (a, b: byte; var T: word);
D. Procedure TONG (a, b: integer): integer;
Câu 4: Cho phần đầu: Function KT(a, b: Integer): Boolean; Lời gọi nào sau đây đúng? (Var ok: Boolean; x: Byte;)
A. KT(4, ok); B. ok:= KT(5, 30);
C. ok:= KT(10); D. If KT(x, 20) then KT(5, 25);
Câu 5: Cho phần đầu Procedure Nhap (var a, b: integer); Lời gọi nào là Đúng với tham số thực sự là M và N?
A. Nhap(a,b); B. Nhap(M, N);
C. Nhap (a, b, M, N); D. Nhap (M=a,N=b);
3. Vận dụng.
Câu 1. CTC sau dùng để làm gì?
Procedure BP(a,b: integer; Var P:longint);
Begin
P := sqr(a+b);
End;
A. Tính a2 + b2. B. Tính (a + b)2 C. Tính Tổng a + b. D. Tính P2
Câu 2: Muốn khai báo a là tham biến, b là tham trị trong thủ tục có tên là TINH thì khai báo nào là đúng?
A. procedure TINH (var a, b: integer);
B. procedure TINH (a, b: integer);
C. procedure TINH (a: integer; var b: integer);
D. procedure TINH (b: integer; var a: integer);
Câu 3. Phần đầu của hàm Function Tong (a, b: integer): integer; được viết lại thành thủ tục như thế nào?
A. Procedure TTT (a, b: Integer): Integer;
B. Procedure TTT (T: Integer; var a, b: Integer);
C. Procedure TTT (a, b, Tong: Integer): Integer;
D. Procedure TTT (a, b: Integer; var Tong: Integer);
Câu 4. Phần đầu của thủ tục Procedure Tinh (x, y: byte; var M: word); được viết lại hàm như thế nào?
A. Function Tinh (x, y: byte): word;
B. Function Tinh (var x, y, M: byte): Word;
C. Function Tinh (x, y, M: byte);
D. Function Tinh (x, y: byte; var M: word): Word;
4. Vận dụng nâng cao.
Câu 1. Cho hàm sau:
Function Tinh (m: byte): word;
var j: byte; N: word;
begin
N := 0; For j:= 1 to m do if j mod 2 = 0 then N := N + j;
…………………..
end;
Câu lệnh còn thiếu trong phần ............ là gì?
A. Tinh (m) := N; B. Tinh := N; C. N := Tinh; D. Tinh(10) := N;
Câu 2: Nếu trong chương trình chính có lời gọi hàm ở câu 1 thì lời gọi nào đúng?
A. S := Tinh (1,30); B. S := Tinh (30); C. Tinh := N; D. Tinh (20, T);
Câu 3. Thủ tục sau thực hiện việc gì?
Procedure Tinh (x, y: byte; var M: word);
var j: byte;
begin
M := 0; For j:= 1 to y do M := M * x;
end;
A. Đếm các số từ 1 đến M. B. Tính tổng giá trị các số từ 1 đến y.
C. Tính lũy thừa xy D. Tính tổng giá trị các số từ x đến y.
Câu 4. Cách nào đúng khi chuyển thủ tục sau thành hàm?
Procedure CAN (a,b: real; Var P: real);
Begin
P := sqrt(a*a*a + b*b*b);
End;
A. Function CAN (a, b: real);
CAN := sqrt(sqr(a)*a + sqr(b)*b);
B. Function CAN (a, b: real): real;
CAN := sqrt(sqr(a)*a + sqr(b)*b);
C. Function CAN (a, b: real; var P: real);
CAN := sqrt(sqr(a)*a + sqr(b)*b);
D. Function CAN (a, b: real; var P: real):real;
CAN := sqrt(sqr(a)*a + sqr(b)*b);
Câu 5. Thủ tục sau thực hiện việc gì?
Procedure Tinh (m: Byte; Var P: Word);
Var i: Byte;
Begin P:=0;
For i:= 1 to m do P:=P+i;
A. Tính giá trị của m số chẵn
B. Hiển thị giá trị m số tự nhiên
C. Tính tổng của m số tự nhiên đầu tiên
D. Tính tổng của P số tự nhiên đầu tiên
...
Trên đây là phần trích dẫn nội dung Ngân hàng câu hỏi ôn thi HK2 năm 2020 môn Tin học 11 Trường THPT Núi Thành để xem nội dung đầy đủ, chi tiết vui lòng đăng nhập vào hệ thống Chúng tôi để xem onlien hoặc tải về máy!
Ngoài ra quý thầy cô và các em học sinh có thể tham khảo thêm một số tài liệu sau đây:
Đề thi HK2 môn Tin học 11 năm 2018 - 2019 có đáp án Trường THPT Lương Sơn
Đề kiểm tra giữa HK2 môn Tin học 11 năm 2018 - 2019 Trường THPT Duy Tân
Chúc các em học tốt!