C©u 1:
|
B
|
Cách viết nào sau đây là đúng khi khai báo
mảng một chiều?
A. Var : array[tên biến
mảng] of ;
B. Var : array[kiểu chỉ
số] of ; C.
Var of ;
D. Var : array[kiểu chỉ
số] of ;
|
C©u 2:
|
D
|
Procedure
là từ khóa dùng để khai báo cho:
A.
Mảng B. Bản
ghi C. Hàm D. Thủ tục
|
C©u 3:
|
C
|
Trong ngôn ngữ lập trình Pascal, đoạn chương
trình sau thực hiện công việc:
Readln(s); k:= length(S); for i:= k downto 1 do write(S[i]);
A. in ra màn hình xâu S B. in ra màn
hình độ dài xâu S
C. in ra màn hình xâu S đảo ngược D.
đưa ra màn hình xâu S
|
C©u 4:
|
B
|
Cách viết nào sau
đây là khai báo kiểu xâu?
A. Var Hoten:
record;
B.
Var Hoten: String[100];
C. Var Hoten:
Char[30]; D. Var Hoten: Array[1..30] of Char;
|
C©u 5:
|
C
|
Chọn phát biểu đúng trong các phát biểu dưới
đây khi nói về lợi ích của việc sử dụng chương trình con: A. Không có lợi ích B. Viết để chương trình gọn hơn
C. Tránh việc lặp đi, lặp
lại cùng một dãy lệnh nào đó.
D. Hỗ trợ việc viết
chương trình có cấu trúc như cấu trúc lặp, rẽ nhánh.
|
C©u 6:
|
B
|
Với khai báo A: array[1..100] of integer; thì việc truy
xuất đến phần tử thứ 5 như sau:
A.
A(5) B.
A[5] C.
A5 D.
A 5
|
C©u 7:
|
A
|
Thủ
tục đóng tệp có dạng:
A.
Close(); B.
Close();
C. Close; D.
Close all;
|
C©u 8:
|
D
|
Mở tệp để ghi dữ liệu, ta sử dụng thủ tục:
A.
Reset(); B.
Reset(); C.
Rewrite(); D.
Rewrite();
|
C©u 9:
|
A
|
Lệnh reset(); dùng để
A. Mở tệp để đọc B. Đóng tệp C. Mở tệp vừa đọc vừa ghi D. Mở tệp để ghi.
|
C©u 10:
|
D
|
Để ghi dữ liệu vào
tệp văn bản, ta có thể sử dụng thủ tục:
A. read(,); B.
read(,);
C. write(,); D.
write(,);
|
C©u 11:
|
B
|
Để đọc dữ liệu từ
tệp văn bản, ta có thể sử dụng thủ tục:
A. read(,); B.
read(,);
C. Real(,); D.
Real(,);
|
C©u 12:
|
C
|
Để gán tên tệp cho biến tệp ta sử dụng câu
lệnh:
A. := ;
B. := ;
C. assign(,); D.
assign(,);
|
C©u 13:
|
B
|
Trong
Pascal, để khai báo biến tệp văn bản ta sử dụng cú pháp:
A. Var : text; B. Var : text;
C. Var : string; D. Var : string;
|
C©u 14:
|
A
|
Trong Pascal, để
khai báo hai biến tệp văn bản f1, f2 ta viết:
A. var f1,f2 : text; B. var f1,f2 : txt; C. var f1.txt, f2.txt; D. var f1.txt; f2.txt;
|
C©u 15:
|
D
|
Dữ liệu kiểu tệp:
A. được lưu trữ trên ROM
B. được lưu trữ trên RAM
C. chỉ được lưu trữ trên đĩa cứng
D. được lưu trữ trên bộ nhớ ngoài
|
C©u 16:
|
A
|
Cho s=’123456789’ hàm copy(s,2,3) cho giá trị bằng:
A.
‘234’ B.
234
C. ‘34’ D. 34
|
C©u 17:
|
B
|
Cho s=’500 ki tu’, hàm length(s) cho giá
trị bằng:
A.
500 B.
9
C. ‘5’ D.
‘500’
|
C©u 18:
|
A
|
Thủ tục insert(‘123’,’abc’,2) sẽ cho xâu kết
quả nào sau đây?
A.
a123bc B.
1abc23 C.
12abc
D. ab123
|
C©u 19:
|
B
|
Cho
xâu s=’123456789’ sau khi thực
hiện thủ tục delete(s,3,4) thì:
A. s=’1256789’ B. s=’12789’ C.
s=’123789’ D.
s=”
|
C©u 20
|
B
|
Cho A=’abc’; B=’ABC’; khi đó A+B cho kết quả nào?
A.
‘aAbBcC’ B.
‘abcABC’ C.
‘AaBbCc’ D. ‘ABCabc’
|
C©u 21:
|
B
|
Với
khai báo A: array[1..100,1..100] of integer; thì việc truy xuất đến các phần
tử như sau:
A.
A(i,j)
B. A[i,j] C.
A(i;j) D. A[i;j]
|
C©u 22:
|
C
|
Để khai báo biến kiểu xâu ta sử dụng cú
pháp nào?
A. var :; B. var =;
C. var : string[độ dài lớn nhất của xâu];
D. var = string[độ dài lớn nhất của xâu];
|
C©u 23:
|
A
|
Trong
các khai báo sau, khai báo nào đúng?
A. var hoten : string[27]; B. var diachi : string(100);
C. var ten= string[30]; D. var ho = string(20);
|
C©u 24:
|
C
|
Trong ngôn ngữ lập trình Pascal, phần tử đầu
tiên của xâu kí tự mang chỉ số là?
A.
0 B. Do người lập
trình khai báo C. 1 D. Không có chỉ số
|
C©u 25:
|
C
|
Trong
ngôn ngữ lập trình Pascal, đoạn chương trình sau thực hiện công việc gì?
d:=0; For i:= 1 to Length(S) do
If (S[i]>=’0’) And
(S[i]<=’9’) then d:=d+1;
A. Đếm xem có bao
nhiêu loại kí tự số trong xâu S B. Xóa đi các chữ số có
trong S
C. Đếm số kí tự là
kí tự số trong xâu S D. Xóa
đi chữ số đầu tiên trong S
|
C©u 26:
|
C
|
Để khai báo hàm
trong Pascal bắt đầu bằng từ khoá
A. Program B. Procedure C. Function D. Var
|
C©u 27:
|
B
|
Trong
ngôn ngữ lập trình Pascal, đoạn chương trình sau thực hiện việc nào trong các
việc sau ( A là mảng số có n phần tử)
S:=0;
for i:= 1 to n do s:= s + A[i];
A. In ra màn hình mảng A B. Tính tổng các phần
tử của mảng A
C. Đếm số phần tử của mảng D. Không thực hiện
việc nào trong 3 việc trên
|
C©u 28:
|
A
|
Trong ngôn ngữ lập trình Pascal
A. Các phần tử của mảng một chiều được sắp xếp
thứ tự theo chỉ số
B. Các phần tử của mảng một chiều được sắp xếp
thứ tự theo giá trị tăng dần
C. Các phần tử của mảng một chiều được sắp xếp
thứ tự theo giá trị giảm dần
D. Các phần tử của mảng một chiều không
sắp thứ tự
|
C©u 29:
|
B
|
Trong
ngôn ngữ lập trình Pascal,………….là dãy hữu hạn các phần tử cùng kiểu
A. Mảng hai chiều B. Mảng một chiều C. Xâu kí tự D. Bản ghi
|
C©u 30:
|
D
|
Trong ngôn ngữ lập trình Pascal, hai xâu kí tự
được coi là bằng nhau
A. nếu chúng bằng nhau
B. nếu độ dài hai xâu bằng nhau
C. nếu hai xâu bằng nhau
D. nếu chúng giống nhau hoàn toàn
|
C©u 31:
|
A
|
Trong
ngôn ngữ lập trình Pascal, khai báo mảng hai chiều sau cho biết
Var A: array[1..7,1..8] of integer;
A. mảng A có 7 hàng, 8 cột và các phần tử của mảng là các số
nguyên
B. mảng A có 8 hàng, 7 cột và các phần tử của mảng là các số
nguyên
C. mảng A có 7 hàng, 8 cột và các phần tử của mảng là các số
thực
D. mảng A có 8 hàng, 7 cột và các phần tử của mảng là các số
thực
|
C©u 32:
|
B
|
Trong ngôn ngữ lập trình Pascal, về mặt cú
pháp câu lệnh nào sau đây là đúng
A. War A: array [1..100,1..100] of
integer; B.
Var A: array [1..100,1..100] of integer;
C. Var A: array [1..100,1..100] of interger; D. Var A: array
[1..100;1..100] of integer;
|
C©u 33:
|
B
|
Trong ngôn ngữ lập trình Pascal, xâu kí tự là?
A. Mảng các kí tự B. Dãy các
kí tự trong bảng mã ASCII
C. Tập hợp các chữ cái trong bảng chữ cái
tiếng Anh
D. Tập hợp các chữ cái và các chữ số trong
bảng chữ cái tiếng Anh
|
C©u 34:
|
B
|
Trong ngôn ngữ lập trình Pascal, thủ tục
Insert(S1, S2, n) thực hiện công việc gì?
A. Chèn thêm xâu S1 vào xâu S2 bắt đầu từ vị
trí n của xâu S1
B. Chèn thêm xâu S1 vào xâu S2 bắt đầu từ vị
trí n của xâu S2
C. Chèn xâu S2 vào xâu S1 bắt đầu từ vị trí n của xâu S1 D. Đáp án
khác
|
C©u 35:
|
B
|
Trong ngôn ngữ lập trình Pascal, hàm
Upcase(ch) cho kết quả là
A. Xâu ch gồm toàn chữ hoa
B. Chữ cái in hoa tương ứng với ch
C. Xâu ch gồm toàn chữ thường
D. Biến ch thành chữ thường
|
C©u 36:
|
B
|
Trong
ngôn ngữ lập trình Pascal, để xoá đi kí tự đầu tiên của xâu kí tự S ta viết
A. Detele(S, i,
1);{i là biến có giá trị bất kì} B.
Detele(S, 1, 1);
C. Detele(S, 1, i);{i là biến có giá trị bất
kì}
D. Detele(S, length(S), 1);
|
C©u 37:
|
B
|
Trong
ngôn ngữ lập trình Pascal, mảng hai chiều là
A. dãy hữu hạn các phần tử cùng kiểu B. bảng
các phần tử cùng kiểu
C. bảng các phần tử khác kiểu D.
Đáp án khác
|
C©u 38:
|
C
|
Trong ngôn ngữ lập trình Pascal, để in ra mảng
vừa tạo về mặt cú pháp câu lệnh nào là đúng:
A. for i := 1 to n do write(‘A[i]:5’); B. for i
= 1 to n do write(‘A[i]:5’);
C. for i := 1 to n do write(A[i]:5); D. for
i = 1 to n do write(A[i]:5);
|
C©u 39:
|
B
|
Trong
ngôn ngữ lập trình Pascal, cách khai báo xâu kí tự nào sau đây là đúng?
A. Var S: String[257]; B. Var S: String; C. Var S: File of String; D. Var S: String
|
C©u 40:
|
C
|
Trong
ngôn ngữ lập trình Pascal, xâu có độ dài bằng 0 gọi là……
A. Xâu không B. Xâu trắng C. Xâu rỗng D. Cả A, B và C đều đúng
|
C©u 41:
|
B
|
Trong
ngôn ngữ lập trình Pascal, sau khi thực hiện xong đoạn chương trình sau, giá
trị của biến S là
S:=’Ha Noi mua thu’; Detele(S, 7, 8); Insert(‘Mua thu ’, S,1)
A. Ha Noi Mua thu B. Mua thu Ha noi C. Mua thu Ha Noi mua
thu D. Ha Noi
|
C©u 42:
|
C
|
Trong
ngôn ngữ lập trình Pascal, đoạn chương trình sau thực hiện công việc gì?
d:=0; For
i:= 1 to n do
If A[i]
mod 2=0 then d:=d+1;
A. Tính tổng các phần tử của mảng chia hết cho
2 B.In ra màn hình các phần tử của mảng chia hết cho 2
C. Đếm số phần tử của mảng chia hết cho 2 D. Đếm số phần tử của mảng không
chia hết cho 2
|
C©u 43:
|
D
|
Trong ngôn ngữ lập trình Pascal, có mấy cách
khai báo mảng
A. 4
B. 3
C. 1 D. 2
|
C©u 44:
|
C
|
Trong ngôn ngữ lập trình Pascal, hàm cho vị
trí xuất hiện đầu tiên của xâu S1 trong xâu S2 là
A. Pos(S2,
S1) B. Pos(S2; S1) C. Pos(S1, S2) D. Pos(S1; S2)
|
C©u 45:
|
A
|
Trong
ngôn ngữ lập trình Pascal, sau khi thực hiện câu lệnh Write(Pos(‘tin’,’cau lac
bo tin hoc’)) ta có kết quả là A. 12
B. 11 C. 10
D. 13
|
C©u 46:
|
B
|
Trong
ngôn ngữ lập trình Pascal, sau khi thực hiện đoạn chương trình sau, kết quả
là xâu nào
S:=’tin
hoc’; Delete(s,4,4);
A. ‘hoc’ B.‘tin’ C. ‘tin
’ D. ‘ hoc’
|
C©u 47:
|
D
|
Trong
ngôn ngữ lập trình Pascal, hàm length(S) cho giá trị
A. độ dài xâu S khi khai báo
B. độ dài của xâu S không tính các dấu cách
C. độ dài của xâu S không tính dấu cách cuối
cùng D. độ dài xâu S
|
C©u 48:
|
A
|
Trong ngôn ngữ lập trình Pascal, sau khi thực
hiện xong đoạn chương trình, giá trị của S là?
S1:=
‘tin hoc’; S2:= ‘cau lac bo ’;
Insert(S1, S2,12);
A. ‘cau lac bo tin hoc’ B. ‘tin hoc cau lac bo’ C. ‘Cau lac bo tin hoc’ D. ‘tin hoccau lac bo’
|
C©u 49:
|
C
|
Trong
ngôn ngữ lập trình Pascal, xâu kí tự có tối đa
A. 8 kí tự B. 16 kí
tự C.
255 kí tự D. 256 kí tự
|
C©u 50:
|
D
|
Trong ngôn ngữ lập trình Pascal, với xâu kí tự
có các phép toán là?
A. Phép cộng, trừ, nhân, chia
B. Chỉ có phép cộng
C. Phép cộng và phép trừ D.
Phép ghép xâu và phép so sánh
|
C©u 51:
|
B
|
Mảng
một chiều là:
A.
Bảng các phần tử khác kiểu. B. Dãy hữu hạn các
phần tử cùng kiểu.
C.
Bảng các phần tử cùng kiểu.
D. Dãy hữu hạn các phần tử khác kiểu.
|
C©u 52:
|
C
|
Hàm length(s) có chức năng:
A. cho biết vị trí của kí tự trong xâu s B. Cho giá trị là chữ cái in hoa
của xâu s.
C. cho giá tị độ dài xâu s D. sao chép
xâu s.
|
C©u 53
|
A
|
Sau khi thực hiện đoạn lệnh sau:
S:=0; For
i:=1 to 4 do S:=S+i;
S có giá trị là:
A. 10 B. 4
C. 1
D. 8
|
C©u 54:
|
A
|
Cách tham chiếu đến phần tử của mảng:
A. []; B.
[];
C. []; D.
[];
|
C©u 55:
|
D
|
Function là
từ khóa dùng để khai báo:
A. Bản ghi B. Mảng C. Thủ
tục D.
Hàm
|
C©u 56:
|
B
|
Cặp từ khóa mở đầu và kết thúc chương trình
con là:
A. Begin và End. B. Begin và End;
C. Begen và End. C.
Begin; và End;
|
C©u 57:
|
B
|
Để khai báo biến kiểu xâu trực tiếp ta sử dụng
cú pháp nào?
A. var :; B. var
:string[độ dài lớn
nhất của xâu];
C. var =string[độ dài lớn nhất của xâu];
D. var =;
|
C©u 58:
|
C
|
Trong các phát biểu sau, phát biểu nào sai?
A. Xâu không có kí tự nào được gọi là xâu
rỗng; B. Có thể tham chiếu
đến từng kí tự trong xâu.
C. Xâu có chiều dài không được vượt quá 250;
D. Thao tác nhập và xuất đối với dữ liệu kiểu
xâu như nhập hay xuất giá trị của biến kiểu dữ liệu chuẩn;
|
C©u 59:
|
B
|
Cho s=’abcdefghi’ hàm copy(s,2,3) cho giá trị
bằng:
A.
bcd B.
‘bcd’
C. ‘cd’ D. cd
|
C©u 60:
|
A
|
Cho s=’Kon Tum Viet Nam’, hàm length(s) cho giá trị
bằng:
A.
16 B.
15
C. ‘16’ D.
‘15’
|
C©u 61:
|
C
|
Cho
xâu s=’abcdefghi’ sau khi thực
hiện thủ tục delete(s,3,4) thì:
A. s=’abchi’ B. s=’abcdi’ C.
s=’abghi’ D.
s=”
|
C©u 62:
|
B
|
Trong ngôn ngữ lập trình Pascal, để in một xâu
ký tự ra màn hình theo thứ tự ngược lại của các ký tự trong xâu(vd: abcd thì
in ra là dcba), đoạn chương trình nào sau đây thực hiện việc này?
A. For i:=1 to Length(S) Do Write(S[i]); B. For i:=Length(S)
Downto 1 do Write(S[i]);
C. For i:=Length(S) Downto 1 do Write(S); D. For i:=1 to Length(S)
Div 2 Do Write(S[i]);
|
C©u 63:
|
C
|
Trong ngôn ngữ lập trình Pascal, khai báo nào
trong các khai báo sau là sai khi khai báo xâu kí tự?
A. S: String; B. X1: String[100]; C. S: String[256]; D. X1: String[1];
|
C©u 64:
|
C
|
Dữ liệu kiểu tệp:
A. sẽ bị mất khi tắt máy.
B. Sẽ bị mất hết khi tắt điện đột ngột.
C. không bị mất khi tắt máy hoặc mất điện D. Cả A, B, C đều sai
|
C©u 65:
|
D
|
Chương trình con sau thực hiện công việc gì?
Function M(a,b: real): real;
Begin
If a>b then M:=a
else M:=b;
End;
A. Tìm giá trị nhỏ nhất trong hai số nguyên a,
b B. Tìm giá trị nhỏ nhất trong
hai số nguyên a, b
C. Tìm giá trị nhỏ nhất trong hai số thực a,
b D. Tìm giá trị lớn nhất
trong hai số nguyên a, b
|
C©u 66:
|
B
|
Trong ngôn ngữ lập trình Pascal, mảng hai
chiều là
A. dãy hữu hạn các phần tử cùng kiểu B. bảng các phần tử cùng kiểu
C. bảng các phần tử khác kiểu D. Đáp án khác
|
C©u 67:
|
A
|
Trong ngôn ngữ lập trình Pascal, trong quá
trình nhập dữ liệu của mảng một chiều A, để các phần tử hiển thị như trong
cửa sổ chương trình ta viết lệnh như sau:
A. Write(‘A[‘,i,’]=’); readln(A[i]); B. Write(‘A[i]=’) readln(A[i]);
C. Write(‘A[‘i’]=’); readln(A[i]); D.
Write(“A[“,i,”]=”); readln(A[i]);
|
C©u 68:
|
D
|
Trong ngôn ngữ lập trình Pascal, về mặt cú
pháp câu lệnh nào sau đây là đúng
A. War mang: array [1..100] of integer; B. Var mang: array [1…100] of
integer;
C. Var mang: array [1..100] of interger; D. Var mang: array [1..100] of
integer;
|
C©u 69:
|
B
|
Ta có đoạn chương trình sau(A là mảng số có N
phần tử)
S:=0;
for i:=1 to N do if
a[i]>0 then S:= S+A[i];
Giả sử n=5 ta có mảng A như sau: 5
-1 -6 4
2 , sau khi thực hiện thì kết quả bằng bao nhiêu
A. -7 B.
11
C. 7 D. 3
|
C©u 70:
|
C
|
Trong ngôn ngữ lập trình Pascal, sau khi thực
hiện đoạn chương trình sau, kết quả là xâu nào
S:=’tin hoc 11’; Delete(S,4,4);
A. ‘hoc 11’ B. ‘ hoc’ C.’tin 11’ D. ‘tin11’
|