Câu 1
Biến đếm của vòng lặp với số lần lặp biết trước thường có kiểu?
A. Ký tự |
B. Số nguyên |
C. Số thực |
D. .Logic |
Câu 2
Xác định giá trị của biểu thức:
S = (135 div 100) + (135 mod 100) div 10 + (135 mod 10)
A. S = 4 |
B. S=10 |
C. S=6 |
D. S=9 |
Câu 3
đoạn chương trình sau thực hiện công việc nào trong các công việc sau:
i:=pos(‘ ‘,S); {‘ ’ là 2 dấu cách}
While i<>0 do
Begin
Delete(s, i, 1);
i:=pos(‘ ‘, s);
End;
A. Xóa các dấu cách liền nhau cuối cùng trong xâu; |
B. Xóa hai dấu cách liên tiếp nhau đầu tiên trong xâu; |
C. Xóa đi 1 trong 2 dấu cách đầu tiên trong xâu; |
D. Xóa đi 1 dấu cách trong 2 dấu cách liên tiếp trong xâu s để s không còn 2 dấu cách liền nhau; |
Câu 4
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 từng kí tự xâu ra màn hình |
B. In từng kí tự ra màn hình theo thứ tự ngược, trừ kí tự đầu tiên. |
C. In từng kí tự ra màn hình theo thứ tự ngược |
D. In xâu ra màn hình |
Câu 5
Hãy chọn phương án ghép đúng. Cho xâu S là ‘Hanoi-Vietnam’. Kết quả của hàm Pos(‘Vietnam’,S) là
A. 5 |
B. 8 |
C. 7 |
D. 6 |
Câu 6
Cho biết màn hình xuất hiện như thế nào với đoạn chương trình sau:
d:=0;
For i:=1 to 10 do
Begin
i:= i+1; Write(d,' ');
End;
A. 11 |
B. 1 2 3 4 5 6 7 8 9 10 |
C. 0 0 0 0 0 |
D. 10 |
Câu 7
Đoạn chương trình sau thực hiện việc nào trong các việc sau:
S:=0;
For i:= 1 to n do S:=S+ i;
A. Tính tổng các giá trị từ 1 đến n; |
B. Không thực hiện việc nào trong 3 việc trên; |
C. In ra màn hình các giá trị từ 1 đến n; |
D. Đếm các giá trị từ 1 đến n; |
Câu 8
Hãy điền vào chỗ (…)
S1:= ‘CDE' S2:= 'ABG' ; Insert( S1,S2, ...);
để thu được kết quả S2= 'ABCDEG'
A. 1 |
B. 4 |
C. 2 |
D. 3 |
Câu 9
Khi điều kiện đúng, câu lệnh IF <điều kiện> Then <câu lệnh1> Else <Câu lệnh2>; sẽ thực hiện
A. Câu lệnh 1 |
B. Câu lệnh 2 |
C. Thực hiện câu lệnh 2 trước rồi đến câu lệnh 1 |
D. Thực hiện câu lệnh 1 trước rồi đến câu lệnh 2 |
Câu 10
Lệnh Write trong đoạn chương trình sau thực hiện bao nhiêu lần ?
FOR i:=1 TO 3 DO
FOR j:=2 TO 5 DO Write (i,' ',j);
A. 3 lần |
B. 5 lần |
C. 12 lần |
D. 9 lần |
Câu 11
Tên nào đặt Sai quy định của Pascal:
A. Giai_Ptrinh_Bac_2; |
B. Ngaysinh; |
C. Sv2000 ; |
D. Noi sinh; |
Câu 12
phần tử đầu tiên của xâu kí tự mang chỉ số là:
A. 0 |
B. 1 |
C. Do người lập trình khai báo |
D. Không có chỉ số |
Câu 13
sau khi thực hiện đoạn chương 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);
A. ‘Ha Noi’; |
B. ‘Mua thu Ha Noi’; |
C. ‘Mua thu Ha Noi mua thu’; |
D. ‘Ha Noi Mua thu’; |
Câu 14
đoạn chương trình sau thực hiện công việc nào trong các công việc sau:
i:=pos(‘ ‘,S); {‘ ’ là 2 dấu cách}
While i<>0 do
Begin
Delete(s, i, 1);
i:=pos(‘ ‘, s);
End;
A. Xóa các dấu cách liền nhau cuối cùng trong xâu; |
B. Xóa đi 1 dấu cách trong 2 dấu cách liên tiếp trong xâu s để s không còn 2 dấu cách liền nhau; |
C. Xóa đi 1 trong 2 dấu cách đầu tiên trong xâu; |
D. Xóa hai dấu cách liên tiếp nhau đầu tiên trong xâu; |
Câu 15
Câu lệnh lặp biết trước số lần lặp:
FOR <biến đếm> := <Giá trị đầu> to <giá trị cuối> do <câu lệnh>;
Thì số lần lặp được tính theo công thức nào sau đây?
A. Giá trị cuối – giá trị đầu + 1 |
B. Giá trị cuối + giá trị đầu + 1 |
C. Giá trị cuối – giá trị đầu – 1 |
D. Giá trị đầu – giá trị cuối + 1 |
Câu 16
Vòng lặp nào có biến đếm tự động tăng lên một đơn vị sau một lần thực hiện câu lệnh?
A. Repeat…Until… |
B. For …to…do… |
C. For …downto…do… |
D. While…do… |
Câu 17
Hằng xâu Le Minh Xuan được viết như thế nào?
A. "Le Minh Xuan" |
B. ‘Le Minh Xuan" |
C. Le Minh Xuan |
D. ‘Le Minh Xuan’ |
Câu 18
Cho khai báo:
Var A: Array[1..4] of Real;
i : Integer ;
Ðể nhập dữ liệu cho A, chọn câu nào :
A. For i:=1 to 4 do Readln(‘ Nhập A[‘, i, ‘]:’); |
B. For i:=1 to 4 do Write(‘ Nhập A[‘, i, ‘]:’); Readln(A[i]); |
C. Write(‘ Nhập A:’); Readln(A); |
D. For i:=1 to 4 do Begin Write(‘ Nhập A[‘, i, ‘]:’); Readln(A[i]); End; |
Câu 19
với xâu kí tự ta có thể:
A. Gán biến xâu cho biến xâu và gán một kí tự cho biến xâu; |
B. So sánh hai xâu kí tự, gán biến xâu cho biến xâu và gán một kí tự cho biến xâu; |
C. So sánh và gán một biến xâu cho biến xâu. |
D. So sánh hai xâu kí tự; |
Câu 20
Cho xâu s = ‘123456789’, sau khi thực hiện thủ tục delete(s,3,4) thì:
A. S = ‘123789’; |
B. S = ‘1256789’; |
C. S = ‘’; |
D. S = ‘12789’; |
Câu 21
Cho St là biến xâu, sau khi thực hiện các lệnh:
St:=’TINHOC11’;
Delete(St, 4, 3);
-Kết qủa in lên màn hình là:
A. HOC11 |
B. TIN11 |
C. TINH1 |
D. TINHOC |
Câu 22
Trong quá trình nhập dữ liệu của mảng một chiều, để giá trị i cũng tăng theo phần tử thứ i ta viết 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 23
Cho sâu s1 = ‘123’; s2 = ‘abc’ sau khi thực hiện thủ tục Insert(s1, s2, 2) thì:
A. s1 = ‘123’; s2 = ‘12abc’ |
B. s1 = ‘ab123; s2 = ‘abc’ |
C. s1 = ‘1abc23’; s2 = ‘abc’ |
D. s1 = ‘123’; s2 = ‘a123bc’ |
Câu 24
Cho St là biến chuỗi, sau khi thực hiện bốn lệnh:
St:=’ABCDEF’;
Delete(St, 3, 2);
Insert(‘XYZ’, St, 2);
Write(St);
-Kết qủa in lên màn hình là:
A. AXYZBCDEF |
B. ABXYZEF |
C. AXYZ |
D. AXYZBEF |
Câu 25
Var A; string[20]; Xâu A có thể chứa?
A. 256 kí tự |
B. 255 kí tự |
C. 20 kí tự |
D. Báo lỗi |
Câu 26
Cho câu lệnh For i:= 5 to 10 do write(‘Chao ban’); Câu ‘Chao ban’ xuất ra mấy lần:
A. 9 |
B. 6 |
C. 10 |
D. 5 |
Câu 27
Hai xâu kí tự được so sánh dựa trên:
A. Độ dài tối đa của hai xâu; |
B. Độ dài thực sự của hai xâu; |
C. Mã của từng kí tự trong các xâu lần lượt từ trái sang phải; |
D. Số lượng các kí tự khác nhau trong 2 xâu; |
Câu 28
Trong các hàm sau, hàm nào cho kết quả là độ dài thực sự của xâu st
A. Length(st); |
B. Pos(st1,st2); |
C. Upcase(ch); |
D. Copy(st1,m,n); |
Câu 29
Cho xâu s = ‘123456789’, sau khi th ực hiện thủ tục delets(s,3,4) thì:
A. S = ‘12789’; |
B. S = ‘1256789’; |
C. S = ‘’; |
D. S = ‘123789’; |
Câu 30
Cho biết kết quả khi thực hiện đoạn chương trình sau:
d:=0;
For i:=1 to 10 do d:= d+1;
Write(d);
A. 10 |
B. 1 |
C. 0 |
D. 11 |
Câu 31
Cho St là biến chuỗi, sau khi thực hiện hai lệnh :
St:= Copy( 'PASCAL VERSION 5.5' , 8, 7) ;
Write(St);
- Kết qủa in lên màn hình là:
A. VERSION |
B. 5.5 |
C. VERSION 5.5 |
D. PASCAL |
Câu 32
hàm length(s) cho kết quả gì?
A. Số kí tự hiện có trong xâu S không tính các khoảng trắng(Kí tự trắng, khoảng cách); |
B. Số kí tự hiện có của xâu S; |
C. Độ dài xâu S khi khai báo; |
D. Số các kí tự của xâu không tính dấu cách cuối cùng; |
Câu 33
Cho a:=3; b:=5. Câu lệnh IF a>b Then a:=4 Else b:=1; Sau khi thực hiện đoạn chương trình trên đáp án nào đúng?
A. a=3 |
B. b=5 |
C. b=1 |
D. a=4 |
Câu 34
Cho s = ‘500 ki tu’, hàm Length(s) cho giá trị bằng:
A. 500 |
B. 9 |
C. ‘5’ |
D. ‘500’ |
Câu 35
Câu lệnh nào sau đây đúng?
A. for i:=1 to 5 do s:=s*i; |
B. for i:=5 downto 1; do s:=s+i; |
C. for i:= 1 to 4 do s= -i; |
D. for i=1 to 5 do s=s+2; |
Câu 36
Cho các biến St chuỗi và k nguyên. Sau khi gán:
St:='Sinh vien Tin hoc hoc Tin hoc'
k := Pos('Tin', ST) ;
- Giá trị của k là :
A. k=11 |
B. k=23 |
C. k=26 |
D. k=13 |
Câu 37
Đoạn chương trình sau đây dùng để thực hiện công việc gì?
For i:=1 to n do
If i mod 2 = 0 then Writeln(A[i],’ ‘);
A. In ra màn hình giá trị của các phần tử có chỉ số chẵn trong mảng |
B. In ra màn hình giá trị của các phần tử có giá trị chẵn trong mảng |
C. In ra màn hình tất cả các phần tử trong mảng |
D. Tất cả đều đúng |
Câu 38
Hãy cho biết giá trị của M sau khi thực hiện đoạn chương trình sau với a=19 và b=12 ?
M := a ;
If a<b then M := b ;
A. M = 19 |
B. M = 12 |
C. M nhận cả hai giá trị trên |
D. M không nhận giá trị nào |
Câu 39
Cho đoạn chương trình sau
If (a<>0) then x:=9 div a Else x:=-1;
Write(‘ x= ‘, x + 1);
Khi cho a=0 thị đoạn chương trình trên sẽ in ra màn hình giá trị x=?
A. x=0; |
B. x= -1 |
C. x là không xác định |
D. x=1 |
Câu 40
hàm Upcase(ch); cho kết quả là:
A. Chữ cái in hoa tương ứng với ch; |
B. Xâu ch toàn chữ thương; |
C. Xâu ch toàn chữ hoa; |
D. Biến ch thành chữ thường; |
Câu 41
Var A:Array[1..200] of real;
Nhóm lệnh nào sau đây dùng để nhập giá trị cho tất cả các phần tử trong mảng?
A. For i:= 1 to 200 do Writeln(A[i]); |
B. For i:= 1 to 200 do Readln(A[i]); |
C. For i:= 1 to 200 do Readln(A[1]); |
D. For i:= 1 to 200 do Writeln(i); |
Câu 42
Chương trình sau thực hiện công việc gì?
X:= length(s);
For i:=x downto 1 do
If S[i] =’ ‘ then delete(s,i,1); {‘ ’ là khoảng trắng}
A. Xóa khoảng trắng đầu tiên trong xâu kí tự S; |
B. Xóa khoảng trắng tại vị trí cuối cùng trong xâu kí tự S; |
C. Xóa khoảng trắng thừa trong xâu kí tự S; |
D. Xóa mọi khoảng trắng trong xâu kí tự S; |
Câu 43
đoạn chương trình sau thực hiện công việc gì?
S1:=’anh’; S2:=’em’; i:=Pos(s2,s);
While i<> 0 do
Begin
Delete(s, i, 2);
Insert(s1, s, i);
i:=pos(s2, s);
End;
A. Thay toàn bộ từ ‘anh’ đầu tiên trong xâu S bằng từ ‘em’; |
B. Thay toàn bộ từ ‘em’ trong xâu S bằng từ ‘anh’; |
C. Thay toàn bộ từ ‘em’ đầu tiên trong xâu S bằng từ ‘anh’; |
D. Thay toàn bộ từ ‘anh’ trong xâu S bằng từ ‘em’; |
Câu 44
Lệnh IF.. THEN.. ELSE…; thuộc lệnh nào sau đây?
A. Vòng lặp |
B. Lệnh rẽ nhánh |
C. Lệnh ghép |
D. Lệnh chọn lựa |
Câu 45
phần mở rộng của tập tin Pascal chứa tối đa bao nhiêu kí tự?
A. 64 |
B. 32 |
C. 8 |
D. 16 |
Câu 46
Sau khi thực hiện đoạn chương trình sau, thì biến X có giá trị là bao nhiêu?
A:= 4 ; B: = 1; X:= 2 ;
IF A + B > 5 THEN X := X + A + B; WRITE (X);
A. 7 |
B. 0 |
C. 5 |
D. 2 |
Câu 47
S:= 'ABCDEG ' ;
Delete ( S ,2, 3); thu được kết quả :
A. S=‘AEG’ |
B. S=‘ADEG’ |
C. S=‘ABG’ |
D. S=‘ABEG’ |
Câu 48
thủ tục chèn xâu S1 vào xâu S2 bắt đầu từ vị trí vt được viết:
A. Insert(vt,S1,S2); |
B. Insert(S2,S1,vt); |
C. Insert(S1,vt,S2); |
D. Insert(S1,S2,vt); |
Câu 49
Để tìm vị trí xuất hiện đầu tiên của xâu ‘hoa’ trong xâu s ta có thể viết?
A. S1:=’hoa’; I:=pos(s1,’hoa’); |
B. I:=pos(‘hoa’,’hoa’); |
C. I:=pos(’hoa’,s); |
D. I:=pos(s,’hoa’); |
Câu 50
Khai báo nào đúng:
A. Var A : array[1..n] of integer; |
B. Var A: array[3, 2] of Integer; |
C. Var n, m : integer ; A: array[1..n] of integer; |
D. Const n=2; Var A: array[1..n] of integer; |