40 câu hỏi trắc nghiệm môn tin học 11

  • doc
  • 10 trang
40 CÂU HỎI TRẮC NGHIỆM
MÔN TIN HỌC 11
Câu 1: Các phần tử trong mảng một chiều phải:
A. giống hệt nhau;
C. có kiểu dữ liệu giống nhau;
B. là số nguyên;
D. là số thực.
Câu 2: cho a=1, b=1; hãy cho biết t sẽ nhận giá trị nào khi kết thúc đoạn chương trình sau:
a:=b+1; b:=a;
If a=b Then t:=a+b+1
Else
t:=a+b-1;
A. 1
B. 5
C. 3
D. đoạn chương trình báo lỗi
Câu 4: Điều kiện 10A. (10C.(10B. (10D. Cả A,B,C đều sai;
Câu 5: Kiểu Boolean và Byte có cùng kích thước với kiểu dữ liệu nào?
A. Char;
B. Real;
C. Word;
D. Cả A,B,C đều sai;
Câu 6: Trong khai báo mảng một chiều, nếu ở kiểu chỉ số có n1=-99; n2=0. Hãy cho biết muốn
tham chiếu đến phần tử thứ 4 của mảng thì chỉ số là:
A. 4
B. 3
C. -96
D. -95

| x |  | y |
Câu 7: Cho bài toán: Tính và xuất ra màn hình giá trị của Z với Z  
x  y

Nếu x  y
Nếu x > y

Hãy cho biết, cần sử dụng cấu trúc nào?
A. Rẽ nhánh;
C. Lặp với số lần không biết trước;
B. Lặp với số lần biết trước dạng lùi;
D. Lặp với số lần biết trước dạng tiến;
Câu 8: Cho s,i,n là số nguyên dương. Câu lệnh tính s=n! là:
A. s:=1; For i:=1 To n Do s:=s*i;
C. s:=1; For i:=1 To n Do s:=s*n;
B. s:=0; For i:=1 To n Do s:=s*i;
D. s:=1; For i:=1 To n Do s:=s+i;
Câu 9: Đoạn chương trình nào thu được giá trị của biến s = 10?
A.
s:=5;
s:=s*s;
write(s);

B.
s:=5;
s:=s+s;
write(s);

C.
s:=10;
s:=s*s;
write(s);

D.
s:=10;
s:=s+s;
write(s);

Câu 10: Trong cú pháp câu lệnh If-Then, điều kiện là:
A. biểu thức lôgic
C. câu lệnh gán
B. biểu thức toán học
D. Cả A,B,C đều sai.
Câu 11: Kiểu Real có kích thức bao nhiêu byte?
A. 2
B. 4
C. 6
D.10
Câu 12:Những thông tin nào không phải là thành phần cơ bản của ngôn ngữ lập trình?
A. Cú pháp;
C. Ngữ nghĩa và bảng chữ cái
B. Biến và hằng
D. Cả A,B,C đều sai;
Câu 13: “Biến mảng chỉ có thể nhận được giá trị khi thực hiện thủ tục nhập giá trị từ bàn
phím”. Phát biểu trên là:
A. Đúng
B. Sai
Câu 14: Tên sai trong ngôn ngữ lập trình Pascal là:
A. 5pr;
B. _43;
C. p21
D. oloha;
Câu 15: Hàm Sqr áp dụng cho các đối số có kiểu là:
A. số thực;
B. số nguyên;
C. Cả A,B đều đúng; D. Cả A,B đều sai;
Câu 16: Kiểu dữ liệu chuẩn được sử dụng để làm gì?
A. Khai báo biến;
C. Diễn đạt thuật toán;

B. Mô tả biểu thức;
D. Viết chương trình;
Câu 17: cho đoạn chương trình sau:
S:=3;
For i:=1 To 5 Do
If i mod 2=0 Then S:=S+I;
Hãy cho biết s nhận giá trị nào?
A. 9
B. 8
C. 18
D. Cả A,B,C đều sai.
Câu 18: thông tin nào không phải là hằng số học?
A. -2.23E01;
B. 54
C. -23.25
D. ‘45’
Câu 19: Biểu thức nhận giá trị là True hoặc False là:
A. Toán học thực và lôgic;
C. Lôgic và quan hệ;
B. Toán học và lôgic;
D. Quan hệ và Toán học;
Câu 20: các phần tử của mảng có thể có kiểu gì?
A. Real;
C. Real, Integer, Char;
B. Real, Integer;
D. Real ,Integer, Char, Boolean;
Câu 21: Thủ tục mở một tệp để ghi thông tin từ ngoài vào tệp là:(0.25đ)
A. Rewrite();
C. Rewrite();
B. Rewrite(,);
D. Rewrite(,);.
Câu 23: Thủ tục nào sau đây không được dùng khi sử dụng tệp văn bản: (0.25đ)
A. Write(, );
B. Read(, );
C. Writeln(, );
D. Tất cả đều dùng được khi sử dụng tệp văn bản
Câu 25: Phát biểu nào sau đây là chính xác khi nói về hàm EOF:(0.25đ)
A. Hàm cho giá trị False nếu con trỏ tệp ở vị trí kết thúc tệp.
B. Hàm cho giá trị False nếu con trỏ tệp ở vị trí kết thúc dòng.
C. Hàm cho giá trị True nếu con trỏ tệp ở vị trí kết thúc tệp.
D. Hàm cho giá trị True nếu con trỏ tệp ở vị trí kết thúc dòng
Câu 27: Cho chương trình sau: (0.5)
Var f: text;
Begin
Assign(f,‘output.dat’);
Rewrite(f);
Write(f, ‘510 + 702 - 792’);
Close(f);
End.
Sau khi thực hiện chương trình, tập tin ‘output.dat’ có nội dung như thế nào?
A. 510 702 792
B. 420
C. 510 + 702 - 792
D. 510702792
Câu 28: Cho chương trình sau: (0.5)
Var t: text; d:real; x,y:integer;
Begin
Assign(t,‘dulieu.txt’);
Reset(t);
While not eof(t) Do
Begin
Read(t,x,y);
d:=sqrt(x*x+y*y);
Writeln(‘ket qua =’, d:5:2);
End;
Close(t);
Readln;
End.

Sau khi thực hiện chương trình, màn hình có nội dung như thế nào nếu tệp ‘dulieu.txt’
chứa thông tin sau: 3 4 4 3?
A.

ketqua = 5.00
ketqua =25.00

B.

ketqua =25.00
ketqua = 5.00

C. ketqua =25.00

ketqua =25.00

D.

ketqua = 5.00
ketqua = 5.00

Câu 30: Muốn sử dụng thủ tục xóa màn hình (Clrscr) ta phải khai báo thư viện như thế nào?
A. Type Use; B. Type Uses; C. Uses Crt;
D. Uses Ctr;
Câu 31: Muốn biến h lưu trữ độ dài xâu s ta viết:
A. s:=copy(h);
C. h:=copy(s);
B. s:=Length(h);
D. h:=length(s);
Câu 32: Biến t có thể nhận các giá trị là 1; 100; 12.55; -46.1; Có thể khai báo biến t có kiểu là:
A. Integer và Real;
B. Byte và Integer;
C. Real và Byte;
D. Real;
Câu 33: Phần mở rộng của Pascal là:
A. (.txt);
B. (.dos);
C. (.pas);
D. (.xls);
Câu 34: Thủ tục để nhập dữ liệu vào biến là:
A. Write và Readln;
B. Read và Writeln;
C. Writeln và Write;
D. Readln và
Read;
Câu 35: Xét biểu thức (m mod 2 <>0) And (m div 2 >=5). Với giá trị nào của m dưới đây để biểu
thức trên cho giá trị là True?
A. 5
B. 500
C. 455
D. 6
Câu 36: Biến N chỉ nhận một trong 2 giá trị là ‘1’ và ‘0’. Hãy cho biết khai báo nào sau đây là
đúng.
A. Var N:Char;
B. Var N:Byte;
C. Var N: Boolean
D. Var N:Real;
Câu 37: Hàm tính căn bậc 2 của P là:
A. Abs(P);
B. Sqr(P);
C. Srq(P);
D. Sqrt(P);
Câu 38: Biểu thức (2*2<1+1) Or (Abs(-3)<=3) trong Pascal sẽ nhận giá trị:
A. Đúng
B. Sai
C. True
D. False
Câu 39: Hãy chọn ra kiểu dữ liệu có kích thước bộ nhớ lớn nhất trong các kiểu sau:
A. Integer;
B. Byte;
C. Longint;
D. Real;
Câu 40: Biết a,b,c là độ dài 3 cạnh của một tam giác, biểu thức a+b>c trong Pascal cho giá trị là:
A. True
B. False
HẾT./.

ĐÁP ÁN
Câu 1: C
Câu 2: B
Câu 3: C
Câu 4: B
Câu 5: A
Câu 6: C
Câu 7: A
Câu 8: A
Câu 9: B
Câu 10: A
Câu 11: C
Câu 12: B
Câu 13: B
Câu 14: A

Câu 15: C
Câu 16: A
Câu 17: A
Câu 18: D
Câu 19: C
Câu 20: D
Câu 21: A
Câu 22: C
Câu 23: D
Câu 24: B
Câu 25: C
Câu 26: A
Câu 27: C
Câu 28: D

Câu 29: C
Câu 30: C
Câu 31: D
Câu 32: D
Câu 33: C
Câu 34: D
Câu 35: C
Câu 36: A
Câu 37: D
Câu 38: C
Câu 39: D
Câu 40: A

Câu số: 1 Trong Pascal, để truy cập tới phần tử của mảng 1 chiều ta dùng cặp dấu ngoặc nào?
( và )
[ và ]
{ và }
< và >
Câu số: 2 Trong Pascal, để khai báo trực tếp mảng 1 chiều ta thực hiện?
Var : array[Var : array[hàng>] of ;
số>] of ;
Var : array[Var : array[số>] of ;
số>] of ;
Câu số: 3 Trong Pascal, có đoạn chương trình sau:
Var S:array[1..10] of real;

S2:=0;
for i:=1 to 10 do if S[i] < 50 then s2:=s2+s[i];
Đoạn chương trình trên dùng để tính:
Tính tổng các phần tử của S có giá
Tính tổng các phần tử của S có giá trị nhỏ
trị lớn hơn 50.
hơn 50.
Tính tích các phần tử của S có giá trị
Không tính gì cả.
nhỏ hơn 50.
Câu số: 4 Trong Pascal, khai báo kiểu gián tếp biến mảng hai chiều ta thực hiện:
type = array[type = array[số cột>,] of số hàng, kiểu chỉ số cột>] of phần tử>;
tử>;
var =;
var :;
type = record[type = array[số hàng, kiểu chỉ số cột>] of hàng, chỉ số cột>] of ;
tử>;
var :;
var :;
Câu số: 5 Trong ngôn ngữ lập trình Pascal, với cách khai báo như sau:
Type mang = array[1..100] of integer;
Var a, b: mang;
c: array[1..100] of integer;
Câu lệnh nào dưới đây là hợp lệ?
a := b;
b := c;
c := b;
a := c;
Câu số: 6 Trong ngôn ngữ lập trình Pascal:
Các phần tử của mảng một chiều được
Các phần tử của mảng một chiều được
sắp thứ tự theo chỉ số
sắp thứ tự theo giá trị giảm dần
Các phần tử của mảng một chiều được
Các phần tử của mảng một chiều không
sắp thứ tự theo giá trị tăng dần
sắp thứ tự
Câu số: 7 Trong Pascal, có đoạn chương trình sau:
Min:=A[1]; cs:=1;
for i:=1 to n do if A[i] < Min then
Begin
Min := A[i]; cs:=i;
End;
Giả sử các phần tử của mảng A nhận các giá trị là: 4,8,6,3,0,1,7,6, thì kết quả của Min
và cs sau khi chạy đoạn chương trình trên là:

Min = 1;cs=1;
Min = 0;cs=5;
Min = 8;cs=2;
Min = 6;cs=8;
Câu số: 8 Trong Pascal, có khai báo: B:array[1..10,1..10] of integer; thì việc truy xuất đến phần tử
của mảng sẽ được viết là:
B[i][j]
B[i],[j]
B[i;j]
B[i,j]
Câu số: 9 Trong ngôn ngữ lập trình Pascal, để đổi giá trị hai phần tử mảng một chiều A tại hai vị
trí i và j, ta viết:
A[i] := TG;
TG := A[i];
A[i] := A[j];
A[i] := A[j];
A[j] := TG;
A[j] := TG;
TG := A[i];
TG := A[i];
A[j] := A[i];
A[i] := A[j];
A[j] := TG;
TG := A[j];
Câu số: Trong Pascal, có đoạn chương trình sau:
10
var A:array[1..10] of real; i:byte;
begin
Randomize;
for i:=1 to 10 do A[i]:=random(100);
end.
Khẳng định nào sau đây là đúng?
Giá trị của các phần tử của A sẽ là tổng
Giá trị các phần tử của A sẽ lớn hơn 100
các số từ 0 đến 100.
Giá trị các phần tử của A sẽ từ -100 đến
Giá trị các phần tử của A sẽ từ 0 đến 100
100
Câu số:
Trong Pascal, câu lệnh nào sau đây được khai báo đúng:
11
Type kieu1chieu = array(1..500) of
Type kieu1chieu = array[1..50] of byte;
boolean;
var a:kieu1chieu;
var a:kieu1chieu;
Type kieu1chieu : array[1..50] of
Type kieu1chieu = array[1..50[ of
integer;
boolean;
var a:kieu1chieu;
var a:kieu1chieu;
Câu số: Trong Pascal, có khai báo: B:array[1..10,1..10] of integer; công việc nhập dữ liệu cho
12
mảng sẽ được thực hiện qua câu lệnh:
for i:=1 to 10 do
for i:=1 to 10 do
for j:=1 to 10 do
for j:=1 to 10 do
readlnB[i,j]
readln(B[i,j]);
for i:=1 to 10 do
for i:=1 to 10 do
for j:=1 to 10 do
for j:=10 to 1 do
write(B[i,j])
readln(B[i,j]);
Câu số:
Trong Pascal, về mặt cú pháp câu lệnh nào sau đây là đúng:
13
Type 1chieu = array[1..500] of boolean;
Type 1chieu = array[1...500] of boolean;
Type 1chieu = arrays[1..500] of
Types 1chieu = array[1..500] of boolean;
boolean;
Câu số: Trong Pascal, khai báo kiểu gián tếp biến mảng một chiều ta thực hiện:

14
type = array[type = string[số>] of ;
số>] of ;
var =;
var :;
type = array[type = array[số>] of ;
số>] of ;
var :;
var :;
Câu số: Trong Pascal, ta có khai báo như sau: var a : array[1..10] of real; i:byte;
15
Để nhập dữ liệu cho các phần tử trong mảng ta thực hiện:
readln(a[i])
for i:=1 to 10 do readln(a[i]);
for i:=1 to 100 do readln(a[i]);
for i:=10 to 1 do readln(a[i]);
Câu số: Trong Pascal, có đoạn chương trình sau:
16
T:=0;
for i:=1 to n do If A[i] mod k = 0 then T:=T+A[i];
Em hãy cho biết ý nghĩa của đoạn chương trình trên?
Đoạn chương trình trên sẽ tính tổng số
Đoạn chương trình trên sẽ tính tổng số
các phẩn tử trong mảng A có giá trị chia
các phẩn tử trong mảng A.
hết cho số k.
Đoạn chương trình trên sẽ tính tổng số
Đoạn chương trình trên sẽ tính tích số
các phẩn tử trong mảng A có giá
các phẩn tử trong mảng A mà có giá trị
trị bằng số k.
chia hết cho số k.
Câu số:
Trong Pascal, để khai báo trực tếp mảng 2 chiều ta thực hiện:
17
var :array[kiểu chỉ số
var :array[kiểu chỉ số
cột, kiểu chỉ số hàng] of ;
cột, kiểu chỉ số cột] of ;
var :array[kiểu chỉ số
var :array[kiểu chỉ số
hàng, kiểu chỉ số hàng] of hàng, kiểu chỉ số cột] of ;
tử>;
Câu số:
Trong Pascal, để gán giá trị cho bản ghi ta có thể thực hiện bằng cách nào?
18
Gán giá trị cho từng trường.
Gán giá trị cho từng bản ghi.
Nhập dữ liệu từ bàn phím.
Cả 3 cách trên đều đúng.
Câu số:
Trong ngôn ngữ lập trình Pascal, có thể gán giá trị cho bản ghi bằng cách nào?
19
Gán giá trị cho từng trường
Gán giá trị cho bản ghi
Nhập giá trị từ bàn phím
Cả 3 cách trên
Câu số: Trong ngôn ngữ lập trình Pascal, sau khi chương trình thực hiện xong đoạn chương
20
trình sau, giá trị của biến S là?
S := ‘Ha Noi mua thu’;
Delete (S, 7,
8);
Insert (‘Mua thu’, S, 1);
Ha Noi Mua thu
Mua thu Ha Noi mua thu
Mua thu Ha Noi
Ha Noi
Câu số:
Trong Pascal, khi làm việc với kiểu xâu ta có thể?
21
So sánh hai xâu với nhau.
Ghép hai xâu thành một.
Gán một kí tự bất kì cho biến xâu?
Cả 3 đáp án trên.
Câu số:
Trong ngôn ngữ lập trình Pascal, phần tử đầu tên của xâu kí tự mang chỉ số là?
22

0
1
Câu số:
Trong Pascal, ta có thể coi xâu kí tự là?
23
Một dãy các kí tự số trong bảng mã
ASCII
Một dãy các kí tự trong bảng mã ASCII

Do người lập trình khai báo
Không có chỉ số

Một dãy các kí tự chữ cái thường trong
bảng mã ASCII
Một dãy các kí tự chữ cái hoa trong bảng
mã ASCII

Câu số:
Trong Pascal, hàm Upcase(c) sẽ cho kết quả là?
24
C
c
'C '
"C"
Câu số: Trong Pascal, đoạn chương trình sau thực hiện việc gì?
25
X:=Length(S);
for i:=X to 1 do if S[i] = ' ' then Delete(S,i,1);
Xóa dấu cách đầu tiên trong xâu S.
Xóa một dấu cách cuối xâu S.
Xóa x dấu cách trong xâu S.
Xóa mọi dấu cách trong xâu S.
Câu số: Trong ngôn ngữ lập trình Pascal, thủ tục Delete (S, V, N). thực hiện công việc gì trong
26
các việc sau?
Xoá trong xâu kí tự S N kí tự bắt đầu từ
Xoá trong xâu kí tự S V kí tự bắt đầu từ
vị trí V
vị trí N
Xoá trong xâu kí tự V S kí tự bắt đầu từ
Xoá trong xâu kí tự N V kí tự bắt đầu từ
vị trí N
vị trí S
Câu số:
Trong ngôn ngữ lập trình Pascal, xâu kí tự có tối đa?
27
8 kí tự
256 kí tự
16 kí tự
255 kí tự
Câu số:
Trong Pascal, xâu không có kí tự nào được gọi là?
28
Xâu không
Xâu rỗng
Xâu trắng
Không thuộc xâu kí tự
Câu số:
Giả sử có 2 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ệ?
29
x := copy (y, 5, 3);
x := y;
x := Delete (y, 5, 3);
Delete (y, 5, 3);
Câu số:
Trong Pascal, cách khai báo xâu kí tự nào sau đây là đúng?
30
S: File of String;
S: File of char;
S: String;
Cả 3 đều đúng.
Câu số: Trong Pascal, đoạn chương trình sau thực hiện công việc gì?
31
d:=0;
for i:=1 to Length(X) do If (X[i] >= '0 ') and (X[i] <= '9 ') then d:=d+1;
Đếm số lần xuất hiện kí tự số trong xâu
Đếm xem trong X có bao nhiêu kí tự khác
X.
kí tự số.
Tính tổng số lần xuất hiện kí tự đặt biệt
Xóa đi tất cả các kí tự số trong X.
trong X.

Câu số:
Trong ngôn ngữ lập trình Pascal, hàm length(S) cho kết quả là gì?
32
Số kí tự hiện có của xâu S không tính các
Độ dài xâu S khi khai báo
dấu cách
Số ký tự của xâu không tính dấu cách
Số kí tự hiện có của xâu S
cuối cùng
Câu số: Trong ngôn ngữ lập trình Pascal, thủ tục chèn xâu S1 vào xâu S2 bắt đầu từ vị trí vt
33
được viết:
Insert(vt, S1, S2)
Insert(S1, S2, vt)
Insert(S1, vt, S2)
Insert(S2, S1, vt)
Câu số: Trong Pascal, để tìm vị trí xuất hiện đầu tên của xâu 'hoa ' trong xâu T ta có thể viết
34
bằng cách nào sau?
T:= 'hoa ';
I:=Pos( 'hoa ',T);
I:=Copy(T,3);
I:=Pos(T, 'hoa ');
I:=Pos(hoa,T);
Câu số:
Trong ngôn ngữ lập trình Pascal, với xâu kí tự có các phép toán là?
35
Phép cộng, trừ, nhân, chia
Phép cộng và phép trừ
Chỉ có phép cộng
Phép ghép xâu và phép so sánh

ĐÁP ÁN CHO MÃ ĐỀ SỐ: 58
Câu hỏi số: 1 - B
Câu hỏi số: 19 - D
Câu hỏi số: 2 - B
Câu hỏi số: 20 - C
Câu hỏi số: 3 - B
Câu hỏi số: 21 - D
Câu hỏi số: 4 - B
Câu hỏi số: 22 - C
Câu hỏi số: 5 - A
Câu hỏi số: 23 - C
Câu hỏi số: 6 - A
Câu hỏi số: 24 - A
Câu hỏi số: 7 - B
Câu hỏi số: 25 - D
Câu hỏi số: 8 - D
Câu hỏi số: 26 - A
Câu hỏi số: 9 - B
Câu hỏi số: 27 - D
Câu hỏi số: 10 - D
Câu hỏi số: 28 - B
Câu hỏi số: 11 - B
Câu hỏi số: 29 - C
Câu hỏi số: 12 - B
Câu hỏi số: 30 - C
Câu hỏi số: 13 - A
Câu hỏi số: 31 - A
Câu hỏi số: 14 - C
Câu hỏi số: 32 - D
Câu hỏi số: 15 - B
Câu hỏi số: 33 - B
Câu hỏi số: 16 - A
Câu hỏi số: 34 - B
Câu hỏi số: 17 - D
Câu hỏi số: 35 - D
Câu hỏi số: 18 - D