Đề thi HK1 môn Tin học 11 năm 2021-2022
Trường THPT Ngô Gia Tự
-
Câu 1:
Hãy chọn phương án đúng. Biểu thức: 25 mod 3 + 5 / 2 * 3 có giá trị là gì?
A. 8.0;
B. 15.5;
C. 15.0;
D. 8.5;
-
Câu 2:
Biểu diễn biểu thức \((a+b)+\frac{\sqrt{a^{2}+2bc}}{c-\frac{a}{a+b}}\) trong NNLT Pascal là
A. (a+b) + sqrt(a*a+2*b*c) / ( c – a / (a+b) )
B. (a+b) + sqr(a*a+2*b*c) / c – a / (a+b)
C. (a+b) + sqrt( sqr(a) + 2*b*c / c – a / (a+b)
D. (a+b) + sqr( sqrt(a) + 2*b*c) / (c – a / (a+b) )
-
Câu 3:
Trong ngôn ngữ lập trình Pascal, biểu thức số học nào sau đây là hợp lệ ?
A. 5a + 7b + 8c;
B. 5*a + 7*b + 8*c;
C. {a + b}*c;
D. X*y(x+y);
-
Câu 4:
Hàm cho giá trị bằng bình phương của x là gì?
A. Sqrt(x);
B. Sqr(x);
C. Abs(x);
D. Exp(x);
-
Câu 5:
Để thực hiện gán giá trị 10 cho biến X. Phép gán nào sau đây là đúng ?
A. X = 10;
B. X := 10;
C. X =: 10;
D. X := 10;
-
Câu 6:
Trong Pascal, phép toán MOD với số nguyên có tác dụng gì ?
A. Chia lấy phần nguyên
B. Chia lấy phần dư
C. Làm tròn số
D. Thực hiện phép chia
-
Câu 7:
Cho đoạn chương trình:
Begin
a := 100;
b := 30;
x := a div b;
Write(x);
End.
Cho biết kết quả sau khi thực hiện lệnh:
A. 10
B. 33
C. 3
D. 1
-
Câu 8:
Cho biểu thức sau: (a mod 3 = 0) and (a mod 4 = 0). Số a nhận giá trị nào sau đây để biểu thức cho kết quả là TRUE?
A. 24
B. 16
C. 20
D. 15
-
Câu 9:
Biểu thức nào sau kiểm tra: n là một số nguyên dương chẵn?
A. (n>0) and (n mod 2 = 0)
B. (n>0) and (n div 2 = 0)
C. (n>0) and (n mod 2 0)
D. (n>0) and (n mod 2 0)
-
Câu 10:
Để in giá trị lưu trong 2 biến a và b ra màn hình ta dùng lệnh:
A. Write(a,b);
B. Real(a,b);
C. Readln(a,b);
D. Read(‘a,b’);
-
Câu 11:
Trong ngôn ngữ lập trình Pascal, với câu lệnh như sau (a là một biến kiểu số thực):
a :=2345 ;
Writeln('a = ', a:8:3);
Sẽ ghi ra màn hình?
A. a = 2.34
B. a = 2.345E+01
C. Không đưa ra gì cả
D. a = 2345.000
-
Câu 12:
Để nhập giá trị cho 2 biến a và b ta dùng lệnh nào sau đây?
A. Write(a,b);
B. Real(a,b);
C. Readln(a,b);
D. Read(‘a,b’);
-
Câu 13:
Để đưa ra màn hình giá trị của biến a kiểu nguyên và biến b kiểu thực ta dùng lệnh nào sau đây?
A. Write(a:8:3, b:8);
B. Readln(a,b);
C. Writeln(a:8, b:8:3);
D. Writeln(a:8:3, b:8:3);
-
Câu 14:
Cho S là biến có kiểu xâu (String) và y là biến kiểu thực. Trong các cách sau đây, khi thực hiện câu lệnh readln(S,y) nhập giá trị cho S = ‘ Tran Van Thong’ và y = 7.5 từ bàn phím, cách nhập nào đúng ?
A. Gõ “Tran Van Thong 7.5” sau đó nhấn Enter;
B. Gõ “Tran Van Thong” sau đó nhấn phím Enter rồi gõ “7.5” sau đó nhấn phím Enter;
C. Gõ “Tran Van Thong 7,5” sau đó nhấn phím Enter;
D. Gõ “Tran Van Thong ” rồi gõ dấu phẩy rồi gõ “7.5” sau đó nhấn phím Enter;
-
Câu 15:
Trong Turbo Pascal, để đóng cửa sổ chương trình:
A. Nhấn tổ hợp phím Alt + F5
B. Nhấn tổ hợp phím Alt + F3
C. Nhấn phím F3
D. Nhấn phím F5
-
Câu 16:
Trong Turbo Pascal, để lưu một chương trình ta thực hiện thao tác nào?
A. Nhấn tổ hợp phím Alt + F5
B. Nhấn tổ hợp phím Alt + F2
C. Nhấn phím F2
D. Nhấn phím F5
-
Câu 17:
Trong Turbo Pascal, đang ở cửa sổ chương trình nguồn muốn xem lại màn hình Output:
A. Nhấn tổ hợp phím Alt + F5
B. Nhấn tổ hợp phím Alt + F7
C. Nhấn tổ hợp phím Alt + F6
D. Nhấn tổ hợp phím Alt + F8
-
Câu 18:
Trong Turbo Pascal, để chạy chương trình:
A. Nhấn tổ hợp phím Shift + F9
B. Nhấn phím Ctrl + F9
C. Nhấn tổ hợp phím Ctrl + F7
D. Nhấn tổ hợp phím Alt + F9
-
Câu 19:
Trong Turbo Pascal, để thoát khỏi phần mềm:
A. Nhấn tổ hợp phím Alt + X
B. Nhấn tổ hợp phím Ctrl + E
C. Nhấn tổ hợp phím Ctrl + X
D. Nhấn tổ hợp phím Alt + E
-
Câu 20:
Vòng lặp While – do kết thúc khi nào
A. Khi một điều kiện cho trước được thỏa mãn
B. Khi đủ số vòng lặp
C. Khi tìm được Output
D. Tất cả các phương án
-
Câu 21:
Mọi quá trình tính toán đều có thể mô tả và thực hiện dựa trên cấu trúc cơ bản là:
A. Cấu trúc tuần tự
B. Cấu trúc rẽ nhánh
C. Cấu trúc lặp
D. Cả ba cấu trúc
-
Câu 22:
Tính tổng S = 1 + 2 + 3 + … + n + … cho đến khi S > 108. Điều kiện nào sau đây cho vòng lặp while – do là đúng:
A. While S >= 108 do
B. While S
C. While S
D. While S >= E8 do
-
Câu 23:
Câu lệnh sau giải bài toán nào:
While M N do
If M > N then M:=M-N else N:=N-M;
A. Tìm UCLN của M và N
B. Tìm BCNN của M và N
C. Tìm hiệu nhỏ nhất của M và N
D. Tìm hiệu lớn nhất của M và N
-
Câu 24:
Đoạn chương trình sau giải bài toán nào?
For I:=1 to M do
If (I mod 3 = 0) and (I mod 5 = 0) then
T := T + I;
A. Tổng các số chia hết cho 3 hoặc 5 trong phạm vi từ 1 đến M
B. Tổng các số chia hết cho 3 và 5 trong phạm vi từ 1 đến M
C. Tổng các số chia hết cho 3 trong phạm vi từ 1 đến M
D. Tổng các số chia hết cho 5 trong phạm vi từ 1 đến M
-
Câu 25:
Cú pháp lệnh lặp For – do dạng lùi:
A. for = downto do ;
B. for := downto do ;
C. for = down do ;
D. for := downto do ;
-
Câu 26:
Cú pháp lệnh lặp For – do dạng tiến:
A. for = downto do ;
B. for := downto do ;
C. for = down do ;
D. for := to do ;
-
Câu 27:
Trong vòng lặp For – do dạng tiến. Giá trị của biến đếm:
A. Tự động giảm đi 1
B. Tự động điều chỉnh
C. Chỉ tăng khi có câu lệnh thay đổi giá trị
D. Được giữ nguyên
-
Câu 28:
Kiểu dữ liệu của biến đếm trong lệnh lặp For – do:
A. Cùng kiểu với giá trị đầu và giá trị cuối
B. Chỉ cần khác kiểu với giá trị đầu
C. Cùng kiểu với các biến trong câu lệnh
D. Không cần phải xác định kiểu dữ liệu
-
Câu 29:
Trong lệnh lặp For – do: (chọn phương án đúng nhất)
A. Giá trị đầu phải nhỏ hơn giá trị cuối
B. Giá trị đầu phải nhỏ hơn hoặc bằng giá trị cuối
C. Giá trị đầu phải lớn hơn giá trị cuối
D. Giá trị đầu phải bằng giá trị cuối
-
Câu 30:
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 31:
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 32:
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 33:
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 34:
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 35:
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 36:
Trong ngôn ngữ lập trình Pascal, để khai báo kiểu bản ghi để xử lý danh sách cán bộ của một cơ quan, khai báo kiểu bản ghi nào trong các khai báo sau là đúng? (Bản ghi có cấu trúc gồm 5 trường: Họ tên, năm sinh, địa chỉ, mức lương, phụ cấp)
A. Type CanBo = Record HoTen : String[30] ; Namsinh : Integer; Diachi : String[100] ; MucLuong : Real ; PhuCap : Real; End;
B. Type CanBo : Record HoTen : String[30] ; Namsinh : Integer; Diachi : String[100] ; MucLuong : Real ; PhuCap : Real ; End;
C. Type CanBo : Record HoTen : String[30] ; Namsinh : Integer; Diachi : String[100] ; MucLuong : Real ; PhuCap : Real ;
D. Type CanBo : Record HoTen : String[30] ; Namsinh : Integer; Diachi : String[100] ; MucLuong : Real ; PhuCap : Real ; End.
-
Câu 37:
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 38:
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 39:
Đoạn chương trình sau in ra kết quả nào ?
Program Welcome ;
Var a : string[10];
Begin
a := ‘tinhoc ’;
writeln(length(a));
End.
A. 6
B. 7
C. 10
D. Chương trình có lỗi
-
Câu 40:
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;