Câu 3-NB: 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 3-NB: 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;
Cho chương trình sau
Program Xep_so;
Const T = 10;
Var M : Array[ 1 . . T ] of Integer;
Tg, i, j: Integer;
Begin
For i: = 1 to T do
Begin
Write(‘Hay nhap gia tri so thu’ , i , ’la :’);
Readln(M[ i ]);
End;
For i : = 1 to T - 1 do
For j : = i + 1 to T do
Begin
If M[ i ] > M[ j ] then
Begin
Tg: = M[ i ];
M[ i ]: = M[ j ];
M[ j ]: = Tg;
End;
End;
Writeln(‘ KET QUA SU CHUONG TRINH CHAY LA:’);
For i: = 1 to T do Writeln(M[ i ]);
Readln
End.
A. Cho biết đoạn chương trình này làm gì?
Câu 1
Đoạn chương trình sau đưa ra màn hình kết quả gì?
For i:=1 to 10 do write(I,’’);
A. 12345678910 |
B. Đưa ra 10 dấu cách |
C. Không đưa ra kết quả gì |
D. 10 9 8 7 6 5 4 3 2 1 |
Câu 2
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ố thực |
C. Số nguyên |
D. .Logic |
Câu 3
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. While…do… |
B. For …to…do… |
C. For …downto…do… |
D. Repeat…Until… |
Câu 4
Cho A = ‘abc’; B = ‘ABC’; Khi đó A + B cho kết quả nào?
A. ‘ABCcbc’; |
B. ‘AaBbCc’; |
C. ‘aAbBcC’; |
D. ‘abcABC’; |
Câu 5
Cho khai báo:
Var A: Array[1..4] of Integer ;
i : Integer ;
Sau khi thực hiện các lệnh:
For i:=1 to 4 do A[i]:= i;
For i:=1 to 4 do A[i]:= A[i]+1;
thì mảng A có gía trị là :
A. A[1]=1, A[2]=1, A[3]=1, A[4]=1 |
B. A[1]=2, A[2]=3, A[3]=4, A[4]=5 |
C. A[1]=1, A[2]=2, A[3]=3, A[4]=4 |
D. A[1]=0, A[2]=1, A[3]=2, A[4]=3 |
Câu 6
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. 5 |
B. 10 |
C. 6 |
D. 9 |
Câu 7
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 Write(‘ Nhập A[‘, i, ‘]:’); Readln(A[i]); |
B. Write(‘ Nhập A:’); Readln(A); |
C. For i:=1 to 4 do Readln(‘ Nhập A[‘, i, ‘]:’); |
D. For i:=1 to 4 do Begin Write(‘ Nhập A[‘, i, ‘]:’); Readln(A[i]); End; |
Câu 8
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. Thực hiện câu lệnh 1 trước rồi đến câu lệnh 2 |
C. Câu lệnh 2 |
D. Thực hiện câu lệnh 2 trước rồi đến câu lệnh 1 |
Câu 9
Cho biết câu lệnh sau sai ở đâu? IF DTB>5 then Write(‘Do’); Else Write(‘Truot’);
A. Đồng thời viết cả giá trị Đỗ, trượt |
B. Chưa biết giá trị của ĐTB |
C. Thừa dấu chấm phẩy (;) trước từ khóa Else |
D. Tất cả đều sai |
Câu 10
Cho ST:= 'Ngay 1 thang 11‘;
C:=Pos('1',ST) -> C=…
A. C=6 và 14 |
B. C=5 |
C. C=14 và 15 |
D. C=6 |
Câu 11
Câu lệnh nào sau đây đúng?
A. for i:=5 downto 1; do s:=s+i; |
B. for i:= 1 to 4 do s= -i; |
C. for i:=1 to 5 do s:=s*i; |
D. for i=1 to 5 do s=s+2; |
Câu 12
Đoạn chương trình sau viết những gì ra màn hình?
m:=5 ; n: =3 ;
If m < n then Writeln ( m , ‘ x ’ , n , ‘ = ‘, m*n )
Else Writeln( m , ‘ + ’ , n , ‘ = ‘, m+n );
A. 5 + 3 = 8 |
B. m x m = 15 |
C. m + n = 8 |
D. 5 x 3 = 15 |
Câu 13
Cho xâu s = ‘123456789’, sau khi th ực hiện thủ tục delets(s,3,4) thì:
A. S = ‘123789’; |
B. S = ‘1256789’; |
C. S = ‘12789’; |
D. S = ‘’; |
Câu 14
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. ‘Mua thu Ha Noi’; |
B. ‘Ha Noi Mua thu’; |
C. ‘Mua thu Ha Noi mua thu’; |
D. ‘Ha Noi’; |
Câu 15
Hãy điền vào chỗ (…).
S:= 'Le Loi Dong Ha' ; Delete ( S ,…, ...); để thu được kết quả S= 'Dong Ha'
A. 1,8 |
B. 7,7 |
C. 1,9 |
D. 1,7 |
Câu 16
Đ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+ A[i];
A. In ra màn hình mảng A; |
B. Đếm số phần tử của mảng A; |
C. Không thực hiện việc nào trong 3 việc trên; |
D. Tính tổng các phần tử của mảng một chiều A; |
Câu 17
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. AXYZ |
B. ABXYZEF |
C. AXYZBEF |
D. AXYZBCDEF |
Câu 18
Var A; string[20]; Xâu A có thể chứa?
A. 20 kí tự |
B. 255 kí tự |
C. Báo lỗi |
D. 256 kí tự |
Câu 19
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 |
Câu 20
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 nhận cả hai giá trị trên |
B. M = 12 |
C. M không nhận giá trị nào |
D. M = 19 |
Câu 21
Số câu lệnh trong câu lệnh ghép là bao nhiêu?
A. >=1 |
B. 2 |
C. 1 |
D. >=2 |
Câu 22
Tên nào đặt Sai quy định của Pascal:
A. Ngaysinh; |
B. Sv2000 ; |
C. Giai_Ptrinh_Bac_2; |
D. Noi sinh; |
Câu 23
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. 5 lần
B. 9 lần
C. 3 lần
D. 12 lần
Câu 24
thủ tục Insert(S1,S2,n) thực hiện công việc gì?
A. Chèn thêm xâu S2 vào xâu S1 bắt đầu từ vị trí n của S1; |
B. Chèn thêm xâu S1 vào xâu S2 bắt đầu từ vị trí n của S2; |
C. Chèn thêm xâu S2 vào xâu S2 bắt đầu từ vị trí n của S1; |
D. Chèn thêm xâu S1 vào xâu S2 bắt đầu từ vị trí n của S1; |
Câu 25
Cho khai báo sau :
Var Xau: string;
Phát biểu nào dưới đây là đúng ?
A. Xâu có độ dài lớn nhất là 255; |
B. Xâu có độ dài lớn nhất là 0; |
C. Cần phải khai báo kích thước của xâu sau đó; |
D. Câu lệnh sai vì thiếu độ dài tối đa của xâu; |
Câu 26
Câu lệnh rẽ nhánh IF gồm có mấy dạng?
A. 2 |
B. 1 |
C. 3 |
D. 4 |
Câu 27
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 và gán một biến xâu cho biến xâu. |
C. 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; |
D. So sánh hai xâu kí tự; |
Câu 28
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 tại vị trí cuối cùng trong xâu kí tự S; |
B. Xóa mọi khoảng trắ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 khoảng trắng đầu tiên trong xâu kí tự S; |
Câu 29
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 30
Câu lệnh ghép có dạng:
A. Begin End, |
B. Begin End. |
C. Begin End; |
D. Begin End |
Câu 31
Hãy chọn phương án ghép đúng. Cho xâu S là ‘Ho Chi Minh-Viet Nam’. Kết quả của hàm Length(S) là
A. 19 |
B. 18 |
C. 20 |
D. 17 |
Câu 32
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. Upcase(ch); |
C. Copy(st1,m,n); |
D. Pos(st1,st2); |
Câu 33
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 34
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=13 |
D. k=26 |
Câu 35
Xâu ‘ABBA’ NHỎ hơn xâu:
A. ‘ABABA’; |
B. ‘ABC’; |
C. ‘ABA’; |
D. ‘ABABAB’ ; |
Câu 36
Với khai báo như sau:
Type mang=array[1..100] of integer;
Var a,b:mang;
c:array[1..50] of integer;
Câu lệnh nào dưới đây đúng nhất?
A. b:=c; |
B. c:=b; |
C. a:=c; |
D. a:=b; |
Câu 37
Khai báo nào đúng:
A. Const n=2; Var A: array[1..n] of integer; |
B. Var n, m : integer ; A: array[1..n] of integer; |
C. Var A: array[3, 2] of Integer; |
D. Var A : array[1..n] of integer; |
Câu 38
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 Readln(A[i]); |
B. For i:= 1 to 200 do Readln(A[1]); |
C. For i:= 1 to 200 do Writeln(i); |
D. For i:= 1 to 200 do Writeln(A[i]); |
Câu 39
Cách khai báo xâu kí tự nào sau đây là đúng:
A. Var S: Char; |
B. Var S: Strings[255]; |
C. Var S: String; |
D. Var S: Strings; |
Câu 40
xâu kí tự không chứa kí tự nào gọi là:
A. Xâu không; |
B. Không phải là xâu kí tự |
C. Xâu rỗng; |
D. Xâu trắng; |
Câu 41
Cho s = ‘500 ki tu’, hàm Length(s) cho giá trị bằng:
A. ‘500’ |
B. 500 |
C. 9 |
D. ‘5’ |
Câu 42
Để 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(s,’hoa’); |
C. I:=pos(’hoa’,s); |
D. I:=pos(‘hoa’,’hoa’); |
Câu 43
Lệnh IF.. THEN.. ELSE…; thuộc lệnh nào sau đây?
A. Vòng lặp |
B. Lệnh chọn lựa |
C. Lệnh rẽ nhánh |
D. Lệnh ghép |
Câu 44
Đoạn chương trình: Max:=a; IF b>Max Then Max:=b. Hãy cho biết đoạn chương trình trên dùng để:
A. Tìm giá trị lớn nhất trong 2 số a và b |
B. Tìm giá trị lớn nhất trong 2 số a |
C. Tính giá trị a |
D. Tính giá trị b |
Câu 45
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. 1 2 3 4 5 6 7 8 9 10 |
B. 11 |
C. 0 0 0 0 0 |
D. 10 |
Câu 46
Cho xâu s = ‘123456789’, sau khi thực hiện thủ tục delete(s,3,4) thì:
A. S = ‘12789’; |
B. S = ‘1256789’; |
C. S = ‘’; |
D. S = ‘123789’; |
Câu 47
Khi chạy chương trình :
Var
St : string;
i, L : integer;
Begin
St :='Hoc thay khong tay hoc ban’; L:=Length(St);
For i := 1 to L do
If (St[i] >= 'a') and (St[i] <= 'z') then
St[i]:= Upcase (St[i]);
Write (St);
End.
-Chương trình in ra :
A. Hoc Thay Khong Tay Hoc Ban |
B. hoc thay khong tay hoc ban |
C. HOC THAY KHONG TAY HOC BAN |
D. Hoc thay khong tay hoc ban |
Câu 48
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. 0 0 0 0 0 |
B. 11 |
C. 1 2 3 4 5 6 7 8 9 10 |
D. 10 |
Câu 49
Cho khai báo mảng sau:
Var P: array [1..50] of word;
Tham chiếu đến một phần tử của mảng P nào sau đây là SAI?
A. P[50] |
B. P[0] |
C. P[15] |
D. P[30] |
Câu 50
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 5.5 |
B. PASCAL |
C. 5.5 |
D. VERSION |
Câu 1
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. 0 |
B. 7 |
C. 5 |
D. 2 |
Câu 2
Cách khai báo xâu kí tự nào sau đây là đúng:
A. Var S: Strings[255]; |
B. Var S: Strings; |
C. Var S: Char; |
D. Var S: String; |
Câu 3
Hãy điền vào chỗ (…).
S:= 'Le Loi Dong Ha' ; Delete ( S ,…, ...); để thu được kết quả S= 'Dong Ha'
A. 1,7 |
B. 1,9 |
C. 7,7 |
D. 1,8 |
Câu 4
Khi chạy chương trình :
Var St : String;
i,L : integer;
Begin
St:='ABCD' L := Length(St);
For i:= L Downto 1 do write (St[i]);
End.
Chương trình in ra :
A. DCAB |
B. 4321 |
C. DCBA |
D. ABCD |
Câu 5
hàm length(s) cho kết quả gì?
A. Số kí tự hiện có của xâu S; |
B. 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); |
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 6
Khi chạy chương trình:
Var S, i, j : Integer;
Begin
S := 0;
for i:= 1 to 3 do
for j:= 1 to 4 do S := S + 1 ;
End.
Giá trị sau cùng của S là :
A. 0 |
B. 4 |
C. 12 |
D. 3 |
Câu 7
Cho khai báo mảng sau:
Var P: array [1..50] of word;
Tham chiếu đến một phần tử của mảng P nào sau đây là SAI?
A. P[0] |
B. P[50] |
C. P[30] |
D. P[15] |
Câu 8
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 9
Cho khai báo sau :
Var Xau: string;
Phát biểu nào dưới đây là đúng ?
A. Cần phải khai báo kích thước của xâu sau đó; |
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âu lệnh sai vì thiếu độ dài tối đa của xâu; |
Câu 10
Cho biết câu lệnh sau sai ở đâu? IF DTB>5 then Write(‘Do’); Else Write(‘Truot’);
A. Đồng thời viết cả giá trị Đỗ, trượt |
B. Chưa biết giá trị của ĐTB |
C. Thừa dấu chấm phẩy (;) trước từ khóa Else |
D. Tất cả đều sai |
Câu 11
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 12
hàm Upcase(ch); cho kết quả là:
A. Biến ch thành chữ thường; |
B. Xâu ch toàn chữ hoa; |
C. Xâu ch toàn chữ thương; |
D. Chữ cái in hoa tương ứng với ch; |
Câu 13
Cho xâu s = ‘123456789’, sau khi thực hiện thủ tục delete(s,3,4) thì:
A. S = ‘’; |
B. S = ‘123789’; |
C. S = ‘1256789’; |
D. S = ‘12789’; |
Câu 14
Khi chạy chương trình :
Var
St : string;
i, L : integer;
Begin
St :='Hoc thay khong tay hoc ban’; L:=Length(St);
For i := 1 to L do
If (St[i] >= 'a') and (St[i] <= 'z') then
St[i]:= Upcase (St[i]);
Write (St);
End.
-Chương trình in ra :
A. HOC THAY KHONG TAY HOC BAN |
B. Hoc thay khong tay hoc ban |
C. hoc thay khong tay hoc ban |
D. Hoc Thay Khong Tay Hoc Ban |
Câu 15
Đ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 16
thủ tục Insert(S1,S2,n) thực hiện công việc gì?
A. Chèn thêm xâu S2 vào xâu S1 bắt đầu từ vị trí n của S1; |
B. Chèn thêm xâu S1 vào xâu S2 bắt đầu từ vị trí n của S1; |
C. Chèn thêm xâu S1 vào xâu S2 bắt đầu từ vị trí n của S2; |
D. Chèn thêm xâu S2 vào xâu S2 bắt đầu từ vị trí n của S1; |
Câu 17
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 tại vị trí cuối cùng trong xâu kí tự S; |
B. Xóa khoảng trắng đầu tiên 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 18
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 19
Cho St là biến chuỗi và St:=’AAABAAB’; Sau khi thực hiện hai lệnh:
While St[1]=’A’ do Delete(St,1,1);
Write(St);
Kết qủa in ra là:
A. BB |
B. BAAB |
C. AABAAB |
D. AAA |
Câu 20
Cho s1 = ‘010’; s2 = ‘1001010’ hàm pos(s1,s2) cho giá trị bằng:
A. 3; |
B. 4; |
C. 5; |
D. 0; |
Câu 21
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ự; |
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ự, gán biến xâu cho biến xâu và gán một kí tự cho biến xâu; |
Câu 22
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. ‘Mua thu Ha Noi’; |
B. ‘Ha Noi Mua thu’; |
C. ‘Ha Noi’; |
D. ‘Mua thu Ha Noi mua thu’; |
Câu 23
Cho khai báo:
Var A: Array[1..4] of Integer ;
i : Integer ;
Sau khi thực hiện các lệnh:
For i:=1 to 4 do A[i]:= i;
For i:=1 to 4 do A[i]:= A[i]+1;
thì mảng A có gía trị là :
A. A[1]=0, A[2]=1, A[3]=2, A[4]=3 |
B. A[1]=1, A[2]=2, A[3]=3, A[4]=4 |
C. A[1]=1, A[2]=1, A[3]=1, A[4]=1 |
D. A[1]=2, A[2]=3, A[3]=4, A[4]=5 |
Câu 24
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 25
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 là không xác định |
B. x=0; |
C. x=1 |
D. x= -1 |
Câu 26
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 Readln(A[1]); |
B. For i:= 1 to 200 do Readln(A[i]); |
C. For i:= 1 to 200 do Writeln(i); |
D. For i:= 1 to 200 do Writeln(A[i]); |
Câu 27
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. 11 |
B. 1 |
C. 10 |
D. 0 |
Câu 28
phần mở rộng của tập tin Pascal chứa tối đa bao nhiêu kí tự?
A. 16 |
B. 8 |
C. 32 |
D. 64 |
Câu 29
đ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 đ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; |
B. Xóa các dấu cách liền nhau cuối cùng trong xâu; |
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 30
Var A; string[20]; Xâu A có thể chứa?
A. 256 kí tự |
B. 255 kí tự |
C. Báo lỗi |
D. 20 kí tự |
Câu 31
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. Copy(st1,m,n); |
C. Upcase(ch); |
D. Pos(st1,st2); |
Câu 32
Cho s = ‘500 ki tu’, hàm Length(s) cho giá trị bằng:
A. 500 |
B. ‘5’ |
C. ‘500’ |
D. 9 |
Câu 33
Đoạn chương trình sau viết những gì ra màn hình?
m:=5 ; n: =3 ;
If m < n then Writeln ( m , ‘ x ’ , n , ‘ = ‘, m*n )
Else Writeln( m , ‘ + ’ , n , ‘ = ‘, m+n );
A. m + n = 8 |
B. m x m = 15 |
C. 5 + 3 = 8 |
D. 5 x 3 = 15 |
Câu 34
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ự ra màn hình theo thứ tự ngược |
B. In xâu ra màn hình |
C. In từng kí tự xâu ra màn hình |
D. In từng kí tự ra màn hình theo thứ tự ngược, trừ kí tự đầu tiên. |
Câu 35
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 36
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ị đầu – giá trị cuối + 1 |
C. Giá trị cuối – giá trị đầu + 1 |
D. Giá trị cuối + giá trị đầu + 1 |
Câu 37
Var A: array[1..10] of integer;
Chọn câu lệnh sai trong các câu lệnh sau:
A. A[2]:= 30; |
B. A[4]:=0; |
C. A[3]:=-5; |
D. A[1]:= 2.5; |
Câu 38
Đoạn chương trình: Max:=a; IF b>Max Then Max:=b. Hãy cho biết đoạn chương trình trên dùng để:
A. Tìm giá trị lớn nhất trong 2 số a và b |
B. Tìm giá trị lớn nhất trong 2 số a |
C. Tính giá trị b |
D. Tính giá trị a |
Câu 39
Khi chạy chương trình :
Var St : string;
i, L : integer;
Begin
St :='So Buu chinh Vien thong' L:=Length(St);
For i := 1 to L do
If (St[i] >= 'a') and (St[i] <= 'z') then
St[i]:= Upcase (St[i]);
Write (St);
Readln
End.
Chương trình in ra :
A. So Buu chinh Vien Thong |
B. So Buu Chinh Vien Thong |
C. so buu chinh vien thong |
D. SO BUU CHINH VIEN THONG |
Câu 40
S:= 'ABCDEG ' ;
Delete ( S ,2, 3); thu được kết quả :
A. S=‘AEG’ |
B. S=‘ABG’ |
C. S=‘ADEG’ |
D. S=‘ABEG’ |
Câu 41
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(S1,S2,vt); |
C. Insert(S2,S1,vt); |
D. Insert(S1,vt,S2); |
Câu 42
Xâu kí tự là?
A. Tập hợp các chữ cái và các chữ số trong bảng chữ cái tiếng Anh; |
B. Tập hợp các chữ cái trong bảng chữ cái tiếng Anh; |
C. Dãy các kí tự trong bảng mã ASCII; |
D. Mảng các kí tự; |
Câu 43
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=4 |
B. b=1 |
C. a=3 |
D. b=5 |
Câu 44
Xâu ‘ABBA’ NHỎ hơn xâu:
A. ‘ABABAB’ ; |
B. ‘ABA’; |
C. ‘ABABA’; |
D. ‘ABC’; |
Câu 45
Var a, b: array[1..10] of integer;
Tính tổng số phần tử trong đoạn khai báo trên?
A. 40 |
B. 10 |
C. 30 |
D. 20 |
Câu 46
Câu lệnh rẽ nhánh IF gồm có mấy dạng?
A. 4 |
B. 2 |
C. 1 |
D. 3 |
Câu 47
Tên nào đặt Sai quy định của Pascal:
A. Noi sinh; |
B. Ngaysinh; |
C. Giai_Ptrinh_Bac_2; |
D. Sv2000 ; |
Câu 48
Cho A = ‘abc’; B = ‘ABC’; Khi đó A + B cho kết quả nào?
A. ‘aAbBcC’; |
B. ‘abcABC’; |
C. ‘ABCcbc’; |
D. ‘AaBbCc’; |
Câu 49
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. TINHOC |
B. TINH1 |
C. HOC11 |
D. TIN11 |
Câu 50
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. Write(‘ Nhập A:’); Readln(A); |
B. For i:=1 to 4 do Write(‘ Nhập A[‘, i, ‘]:’); Readln(A[i]); |
C. For i:=1 to 4 do Readln(‘ Nhập A[‘, i, ‘]:’); |
D. For i:=1 to 4 do Begin Write(‘ Nhập A[‘, i, ‘]:’); Readln(A[i]); End; |
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. 5 |
B. 9 |
C. 6 |
D. 10 |
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 không nhận giá trị nào |
B. M = 19 |
C. M nhận cả hai giá trị trên |
D. M = 12 |
Số câu lệnh trong câu lệnh ghép là bao nhiêu?
A. 1 |
B. 2 |
C. >=1 |
D. >=2 |
Câu 11
Cho biết câu lệnh sau sai ở đâu? IF DTB>5 then Write(‘Do’); Else Write(‘Truot’);
A. Đồng thời viết cả giá trị Đỗ, trượt |
B. Chưa biết giá trị của ĐTB |
C. Thừa dấu chấm phẩy (;) trước từ khóa Else |
D. Tất cả đều sai |
phần mở rộng của tập tin Pascal chứa tối đa bao nhiêu kí tự?
A. 8 |
B. 16 |
C. 32 |
D. 64 |
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. 11 |
B. 0 |
C. 10 |
D. 1 |
Cho khai báo sau :
Var Xau: string;
Phát biểu nào dưới đây là đúng ?
A. Xâu có độ dài lớn nhất là 255; |
B. Câu lệnh sai vì thiếu độ dài tối đa của xâu; |
C. Xâu có độ dài lớn nhất là 0; |
D. Cần phải khai báo kích thước của xâu sau đó; |
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. 10 |
B. 11 |
C. 1 2 3 4 5 6 7 8 9 10 |
D. 0 0 0 0 0 |
Hãy điền vào chỗ (…).
S:= 'Le Loi Dong Ha' ; Delete ( S ,…, ...); để thu được kết quả S= 'Dong Ha'
A. 1,8 |
B. 7,7 |
C. 1,9 |
D. 1,7 |
Khi chạy chương trình:
Var S, i, j : Integer;
Begin
S := 0;
for i:= 1 to 3 do
for j:= 1 to 4 do S := S + 1 ;
End.
Giá trị sau cùng của S là :
A. 12 |
B. 3 |
C. 0 |
D. 4 |
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 2 |
B. Thực hiện câu lệnh 1 trước rồi đến câu lệnh 2 |
C. Câu lệnh 1 |
D. Thực hiện câu lệnh 2 trước rồi đến câu lệnh 1 |
Cho ST:= 'Ngay 1 thang 11‘;
C:=Pos('1',ST) -> C=…
A. C=14 và 15 |
B. C=5 |
C. C=6 và 14 |
D. C=6 |
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=26 |
B. k=11 |
C. k=23 |
D. k=13 |
Cho khai báo mảng sau:
Var P: array [1..50] of word;
Tham chiếu đến một phần tử của mảng P nào sau đây là SAI?
A. P[30] |
B. P[15] |
C. P[0] |
D. P[50] |
Đ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+ A[i];
A. In ra màn hình mảng A; |
B. Đếm số phần tử của mảng A; |
C. Tính tổng các phần tử của mảng một chiều A; |
D. Không thực hiện việc nào trong 3 việc trên; |
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. 5 lần |
B. 3 lần |
C. 9 lần |
D. 12 lần |
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’ |
Khi chạy chương trình :
Var St : String;
i,L : integer;
Begin
St:='ABCD' L := Length(St);
For i:= L Downto 1 do write (St[i]);
End.
Chương trình in ra :
A. 4321 |
B. DCBA |
C. ABCD |
D. DCAB |
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(S1,S2,vt); |
B. Insert(vt,S1,S2); |
C. Insert(S1,vt,S2); |
D. Insert(S2,S1,vt); |
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. ‘Mua thu Ha Noi mua thu’; |
B. ‘Ha Noi Mua thu’; |
C. ‘Mua thu Ha Noi’; |
D. ‘Ha Noi’; |
Đ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. Đếm các giá trị từ 1 đến n; |
B. In ra màn hình các giá trị từ 1 đến n; |
C. Không thực hiện việc nào trong 3 việc trên; |
D. Tính tổng các giá trị từ 1 đến n; |
Cho s = ‘500 ki tu’, hàm Length(s) cho giá trị bằng:
A. 500 |
B. 9 |
C. ‘500’ |
D. ‘5’ |
đ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 đi 1 trong 2 dấu cách đầu tiên 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 hai dấu cách liên tiếp nhau đầu tiên trong xâu; |
D. Xóa các dấu cách liền nhau cuối cùng trong xâu; |
Cần lắm một sự giúp đỡ, viết chương trình pascal...
1. Nhập dãy số nguyên A1...An (Kiểu mảng) (N<= 100)
2. Viết hàm tính boi5( x: integer): boolean, tìm bội của 5 nếu đúng thì viết ra TRUE.
3. Tính tổng dãy số đã nhập là bội của 5.
4. Gọi lại các chương trình con.
Câu 4-NB. Cách viết nào sau đây đưa ra màn hình giá trị các phần tử của mảng A?
A. Write(A[i]); B. Write(A{i}); C. Write(A(i)); D. Write(A[‘i’]);
Câu 1: Phát biểu nào dưới đây về kiểu mảng một chiều là phù hợp?
A. Là một tập hợp các số nguyên
B. Độ dài tối đa của mảng là 255
C. Là một dãy hữu hạn các phần tử cùng kiểu
D. Mảng không thể chứa kí tự
Số chính phương được định nghĩa là bình phương của một số. Hãy viết chương trình tính tổng các số chính phương có trong một dãy (a1, a2, ..., am, với m là một số nguyên dương trong khoảng từ 1 đến 107 ).
Yêu cầu:
Dữ liệu vào là file: CP.INP
+ Dòng thứ nhất: Ghi số m (m trong khoảng từ 1 đến 107)
+ Dòng thứ hai ghi m phần tử trong dãy.
Dữ liệu ra là file: CP.OUT
+ Ghi tổng các số chính phương có trong dãy
+ Nếu không có số chính phương trong dãy thì ghi số 0.
Ví dụ:
CP.INP | CP.OUT | CP.INP | CP.OUT |
5 2 4 5 7 25 |
29
|
4 2 3 1 7 |
0
|
Lưu bài làm vào file CP.PAS
viết chuong trinh thực hiện các công việc:
-khai báo mảng mot chieu co 20 phần tử.
-tạo các giá trị ngẫu nhiên từ 0-99 cho các phần tử trong mảng.
-nhập một số k bất kỳ từ bàn phím.
-xuất giá trị của các phần tủ trong mảng.
-chương trình xất ra màn hình vị trí của phần tử có giá trị bằng k nếu có.