ĐỀ 1 Câu 1: Cho x, y là các biến kiểu ký tự, S là biến kiểu chuỗi lệnh nào đúng: a) S:=x+y; b) Readln(S:=x+y); c) x+y:=S; d) Write(x,y,S:5:1); Câu 2: Cho x, y là các biến kiểu nguyên, lệnh nào là sai: a) Writeln(x,’5’); b) Writeln(‘x=’,x); c) Writeln(x:5); d) Writeln(x,y:5:2); Câu 3; Cho x là biến kiểu Byte, sau khi thực hiện hai lệnh: X:=7; Writeln(x:2:0); Kết quả in trên màn hình là: a) 7.0 b) 7 c) 7.0000000000E+01 d) Báo lỗi Câu 4: Lệnh sau in ra màn hình bao nhiêu kí tự ‘*’ For I:=1 to 10 do; If I mod 2 = 0 then write(‘*’); a) 5 b) 9 c) 10 d) 1 Câu 5: Tìm giá trị của S sau đoạn chương trình: S:=5; For I:= 1 to 10 do If I mod 2 0 then S:= S+i ; Write(S); a) 55 b) 25 c) 30 d) 35 Câu 6: Hãy cho biết kết quả a, b sau khi thực hiện các lệnh: c:=0; a:=7; b:=5; c:=a; a:=b; b:=c; Write(b, ’ , ‘ , a); a) 7,5 b) 5,7 c) 5,5 d) 7,7 Câu 7: Hãy cho biết kết quả in ra màn hình của đoạn chương trình Var X : integer; Function T( N: integer): integer; Var I,s : integer; Begin S:=0; For i:=1 to N do if i mod 2 0 then S:=S+i; T:=S; End; Begin X:=5; write (T(X)); End. a) 5 b) 10 c) 15 d) 9 Câu 8: Lệnh sau in ra màn hình bao nhiêu ký tự ‘*’ For I:=1 to 10 do if ( I div 2) mod 2 0 then write (‘*’); a) 5 b) 10 c) 1 d) 3 Câu 9: Cho biết kết quả trên màn hình khi chạy chương trình sau, Var s:string; i:integer; Begin S:='Nhat nhat co lai hy'; For i:=1 to length(s) do delete(s,pos(#32#32,s),1); Writeln(s); Readln; End. a) Nhat nhat co lai hy b) Nhat nhat co lai hy c) Nhat Nhat Co Lai Hy d) NHAT NHAT CO LAI HY Câu 10: Cho Với a:=5; b:=7; c:= 8; d:=6; S kiểu Boolean kết quả của biểu thức sau: S:= ((a>b) or (not(c=c) ; a) True b) False c) Không có câu đúng Câu 11: Cho khai báo biến và khai báo đầu của thủ tục TT: Var x,y: Integer; St: String; Procedure TT(Var a:Integer; Var b:String); Begin A:=a+1; b:=a+2; End; - Lệnh nào đúng: a) TT(St,x); b) TT(St,10); c) TT(x,St); d) y:=TT(St,x); Câu 12: Cho a là biến nguyên a:=3 và khai báo thủ tục: Procedure PA (Var x: Integer); Begin x:= x+2; End; Sau khi gọi thủ tục PA(a); thì giá trị của biến a là: a) 2 b) 0 c) 3 d) 5 Câu 13: Cho mảng B như sau : B[1]:=2; B[2]:=4; B[3]:=6; B[4]:=8; For I:=1 to 3 do B[i]:= B[i+1]; For I:=1 to 4 do Write (B[i] ,' ' ); Kết quả sau cùng của các B[i] là: a) 4 6 8 8 b) 4 6 8 2 c) 8 6 4 2 d) 8 2 4 6 Câu 14: Cho mảng B như sau B[1]:=6; B[2]:=3; B[3]:=9; B[4]:=1; For I:=1 to 3 do For j:=1 to i do If B[i]>b[j] then Begin Temp:= B[i];B[i]:=B[j]; B[j]:=Temp; End; For i:= 4 downto 1 do Write (B[i],','); Kết quả là: a) 9,6,3,1, b) 1,3,6,9, c) 3,6,9,1, d) 6,9,3,1, Câu 15: Cho mảng A như sau : A[1]:=1; A[2]:=2; A[3]:=3; A[4]:=4; For I:=1 to 3 do A[i]:= A[i+1]; Kết quả sau cùng của các A[2] là: a) 1 b) 2 c) 3 d) 4 Câu 16: Hãy cho biết kết quả của S sau chương trình : Var S: String; I: byte; Begin S:='Co lai do oi'; repeat i:=pos(#32#32, S); if i > 0 then delete(s,i,1); Until i=0; Write (S);readln; end. a) Co lai do oi b) Co lai do oi c) CO LAI DO OI d) Co Lai Do Oi Câu 17: Hãy cho biết kết quả in ra màn hình của đoạn chương trình S:=0; N:=5; I:=1; While N > I Do Begin if I mod 2 0 then S:=S+i; I:=I+1; end; Write (s); a) 9 b) 8 c) 10 d) 4 Câu 18: Để tính giai thừa của N, câu nào cho kết quả đúng: a) S:=1; For i:=1 to N do S:= S*i; b) S:=1; For i:=1 to N do S:= S+i; c) S:=0; For i:=1 to N do S:= S+1/i; d) S:=1; For i:=1 to N do S:= S*N; Câu 19: Khi chạy đoạn chương trình sau, cho kết quả nào đúng? Var S:string; i,n : byte; Begin S:='ABCDE'; I:=1; N:=3; Delete(S, i, n); Write(s); Readln; End. a) DE b) ABC c) D d) ABCDE Câu 20: Để tính tổng của dãy số nguyên từ 1 đến N, câu nào cho kết quả đúng: a) S:=0; For i:=1 to N do S:=s*i; b) S:=0; For i:=1 to N do S:= S + i; c) S:=0; For i:= N Downto N do S:=SQR(i); d) S:=0; S:=S+1; For i:=1 to N do S:=s*SQRT(i); Câu 21: Hãy cho biết kết quả in ra màn hình của đoạn chương trình a:=10; b:=25; I:=1; Repeat a:= a + 5; b:= b - 2; I:= I + 3; Until a > b; Write(I); Readln; a) 7 b) 11 c) 9 d) 10 Câu 22: Hãy cho biết kết quả in ra màn hình của đoạn chương trình: Var x,y: integer; Procedure TS (m: integer; n: integer); Begin m:= m+1; n:=n+m; End; Begin X:=5; Y:=10; TS(X,Y); Write (X,’,’,Y); End. a) 5,10 b) 10,5 c) 6,10 d) 6,16 Câu 23 : Cho hàm GT được xây dựng như sau Var N:integer; Function GT (x: integer): Real; Var M, i : integer; Begin M:=1; i:=0; For i:= X Downto 1 do M:=M*i; GT:=M; End; Begin N:=5; Write (GT(n):10:1); Readln; End. a) 100 b) 120 c) 120.0 d) 5 Câu 24: Sau khi thực hiện chương trình sau: Var St: String; i: integer; Begin St :='CCABCC'; i:=3; While St[i] = 'A' do Delete(St,i,1); Write (St);readln; End. Kết quả in ra màn hình là: a)ABCC b) ABCD c) CCBCC d) CABCC Câu 25: Cho X,Y là hai biến nguyên và khai báo thủ tục: Procedure Doicho (A: Integer; B: Integer); Var Z: Integer; Begin Z := A; A := B; B := Z ; End; - Sau khi thực hiện các lệnh: x:=7; y:=3; Doicho(x,y); Write(x, ’ ,’ ,y); thì giá trị của x, y là: a) 7, 7 b) 3,7 c) 3, 3 d) 7,3 ****************************cõdôcõdô&ôdõcôdõc********************** ĐỀ 2 Câu 1: Cho x,y,z là các biến kiểu ký tự, lệnh nào là đúng: a) z:=x+y; b) Readln( x; y ; z); c) x+y:=z; d) Write(x,y,z); Câu 2: Cho x,y là các biến kiểu nguyên, lệnh nào là sai: a) Writeln(x,5); b) Writeln(‘x=’,x); c) Writeln(x:5:2); d) Writeln(x,y); Câu 3; Cho x là biến kiểu nguyên, sau khi thực hiện hai lệnh: X:=15; Writeln(x); Kết quả in trên màn hình là: a) 15 b) 15.00 c) +1.5000000000E+01 d) 1.5000000000E+01 Câu 4: Lệnh sau in ra màn hình bao nhiêu kí tự ‘*’ For I:=1 to 9 do If I mod 2 = 0 then write(‘*’); a) 2 b) 3 c) 5 d) 4 Câu 5: Giá trị của S sau đoạn chương trình: S:=5; For I:= 2 to 10 do; If I mod 2 = 0 then S:= S+i ; a) 55 b) 15 c) 60 d) 25 Câu 6: Hãy cho biết kết quả x,y sau khi thực hiện các lệnh z:=0;x:=2; y:=4; z:=x; x:=y; y:=z; Write(x,’ , ‘ , y); a) 4,4 b) 4,2 c) 2,4 d) 2,2 Câu 7: Hãy cho biết kết quả in ra màn hình của đoạn chương trình Var n : integer; Function T( m: integer): integer; Var I, s : integer; Begin S:=0; For I:=1 to m do S:=S+I ; T:=S; End; Begin N:=5; write (T(n)); Readln; End. a) 5 b) 10 c) 25 d) 15 Câu 8: Lệnh sau in ra màn hình bao nhiêu ký tự ‘+’ For I:=1 to 10 do if I mod 2 0 then write (‘+’); a) 5 b) 10 c) 1 d) 9 Câu 9: câu lệnh sau có mấy lỗi sai: CASE lop OF 1..5: Write ( mau giao’); 1..12 Write ‘trung hoc ); END; a) 1 b) 4 c) 5 d) 3 Câu 10: Khi chạy chương trình: Var St: String; i,L:integer; Begin St:='Dot den dau hoc lau cung gioi'; 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) Dot den dau hoc lau cung gioI b) Dot den dau hoc lau cung gioi c) DOT DEN DAU HOC LAU CUNG GIOI d) Dot Den Dau Hoc Lau Cung Gioi Câu 11: 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[3]); Readln; End. - Chương trình in ra: a)DCAB b)AAAA c)4321 d)CCCC Câu 12: Cho St là biến chuỗi và St :=’CCABCC’; Sau khi thực hiện lệnh: While St[1] = ‘C’ do Delete(St,1,1);Write (St); Kết quả in ra màn hình là: a)ABCC b) AB c) ABCA d) AACB Câu 13: Cho khai báo biến và khai báo đầu của thủ tục TT: Var a,b: Integer; St: String; Procedure TT(Var m:Integer; n:String); - Lệnh nào đúng: a) TT(St,a); b) TT(St,10); c) TT(a,St); d) b:=TT(St,a); Câu 14: Kết quả in ra màn hình: x:=10; if x<=10 then x:=x-5; Write(x); a) 10 b) 15 c) 20 d) 5 Câu 15: Khi chạy chương trình: Var x,y:Real; Function F(x,y:Real):real; Begin F:=x; if x<y then F:=y; End; BEGIN x:=10; y:=15; Write (F(x,y):0:0); END. Kết quả in ra: a) 10 b) 15 c) 0 d) F(x,y) Câu 16: Cho a là biến nguyên a:=3 ; khai báo thủ tục: Procedure TT( x: Integer); Begin x:=x+2; End; Sau khi gọi thủ tục TT(a); thì Giá trị của biến a là: a) 2 b) 5 c) 3 d) 0 Câu 17: Cho x,y là hai biến nguyên và khai báo thủ tục: Procedure Doicho ( a: Integer; var b: Integer); Var z: Integer; Begin z:=a; a:=b; b:=z ; End; - Sau khi thực hiện các lệnh: x:=5; y:=4; Doicho(x,y); Write(x,’ , ‘, y); thì giá trị của x, y là: a) 5, 5 b) 4,5 c) 4,4 d) 4,5 Câu 18: Lệnh nào sau đây in ra màn hình số nhỏ nhất giữaA và B: a) If A>B then Readln (A) elsse Realn (B); b) If A<B then Readln (A) elsse Realn (B); c) If A>B then write (B) else write (A); d) If A>B then write (A) elsse write (B); Câu 19: Cho N là biến kiểu nguyên, chọn câu đúng cú pháp: a) If N<10 then write (‘Nho hon 10’); else write (‘Lon hon 10’); b) If N<10 then write (‘Nho hon 10’) else then write (‘Lon hon 10’); c) If N20 then write (‘N>20’); d) If N<10 then write (‘Nho hon 10’) else write (‘Lon hon 10’); Câu 20: Kiểm tra nếu ba số a,b,c đều lớn hơn 1 thì in số 1, chọn lệnh nào: a) if (a>1) or (c>1) or (b>1) then write (1); b) if a>1 and b>1 and c>1 then write (1); c) if (a>1) and (b>1) and (c>1) then write (1); d) if a,b, c >1 then write (1); Câu 21: Cho i là biến nguyên, sau khi thực hiện các lệnh: I:= 2; Case i of 1: I:=i+ i div 2; 2: I:=i+ i div 2; 3: I:=i+ i div 2; End; Giá trị sau cùng của i là: a) 2 b) 3 c) 4 d)5 Câu 22: Lệnh Write ( 11 div 2:3) in ra màn hình: a) 5 b) 5.0 c) 5.50E+00 d) 5.50E +01 Câu 23: Cho S, i và N>0 là các biến nguyên. Để tính S:=N!, chọn câu nào: a) S:=1; For i:=1 to N do S:=S*N; b) S:=0; For i:=1 to N do S:=S*N; c) S:=1; For i:=1 to N do S:=S*i; d) S:=1; For i:=1 to N do S:=S+i; Câu 24: Hãy cho biết kết quả in ra màn hình của đoạn chương trình: Var x,y: integer; Procedure TS( a:integer; Var b: integer); Begin A:=a+1; b:=b+a; End; Begin X:=5; y:=10; TS(x,y); write (x,',',y); readln; End. a) 5,16 b) 10,5 c) 6,16 d) 5,10 Câu 25: Hãy cho biết kết quả in ra màn hình của đoạn chương trình x:=10; y:=25; I:=1; Repeat x:=x+5; y:=y-2; I:=I+ (I mod 2); Until x >= y; Write(I); a) 7 b) 2 c) 9 d) 8 ****************************cõdôcõdô&ôdõcôdõc********************** ĐỀ 3 Câu 1: Cho x,y,z là các biến kiểu nguyên, lệnh nào là đúng: a) x:=y/z; b) Readln (x,y,z); c) x+y:=z; d) Writeln(x+y,z:0:2); Câu 2: Cho x,y là các biến kiểu nguyên, lệnh nào là sai: a) Writeln(x,5); b) Writeln(‘x=’,x); c) Writeln(x:5:2); d) Writeln(x,y); Câu 3; Cho x là biến kiểu thực, sau khi thực hiện hai lệnh: X:=15; Writeln(x); Kết quả in trên màn hình là: a) 15 b) 15.00 c) +1.5000000000E+01 d) 1.5000000000E+01 Câu 4: Lệnh sau in ra màn hình bao nhiêu kí tự ‘*’ For I:=1 to 9 do If I mod 20 then write(‘*’); a) 5 b) 1 c) 3 d) 9 Câu 5: Giá trị của S sau đoạn chương trình: S:=0; For I:=1 to 10 do If I mod 3 = 0 then S:= S+I; a) 50 b) 55 c) 40 d) 18 Câu 6: Hãy cho biết kết quả x,y sau khi thực hiện các lệnh: x:=5; y:=10; x:=x+y; y:=x+y; x:=x+y; Write(x,’ , ‘ , y); a) 15,25 b) 40,25 c) 25,40 d) 5,10 Câu 7: Hãy cho biết kết quả in ra màn hình của đoạn chương trình Var X : integer; Function T( N: integer): integer; Var I,s : integer; Begin S:=1; For i:=1 to N do S:=S*i; T:=S; End; Begin X:=5; write (T(X)); End. a) 5 b) 110 c) 120 d) 25 Câu 8: Cho a,b,i là biến nguyên, kết quả của đoạn chương trình sau ? a:=10; b:=25; I:=1; repeat a:=a +3;b:=b -1; i:= i+2; Until a>=b; Write(I); a)10 b)11 c) 8 d) 9 Câu 9: Cho đoạn chương trình sau: Var a, b, c : Integer; {dòng 1} Begin { dòng 2} a:=10; { dòng 3} b:=5; { dòng 4} c:=a/b * 5; { dòng 5} AND. { dòng 6} Chương trình sai ở dòng: a) 5 và 6 b) 3 c) 4 d) 6 Câu 10: Lệnh Write ( 9 div 2:3) in ra màn hình: a) 4.000 b) 4 c) 4.5E+00 d) 4.0E +01 Câu 11: Lệnh sau in ra màn hình bao nhiêu ký tự ‘*’ For I:=1 to 10 do if I mod 30 then ; Write (‘*’) ; a)11 b) 10 c) 1 d) 9 Câu 12: câu lệnh sau có mấy lỗi sai: CASE lop OF 1..5: Write ‘mau giao’) 6..12 Wirte ( ‘trung hoc ); END a) 6 b) 2 c) 3 d)5 Câu 13: Cho biến S kiểu thực và gán S:=12.41; Để in lên màn hình như sau: S:=12.41; Chọn lệnh nào: a) Writeln (S); b) Writeln (S:5); c) Writeln (‘S=’, S:5:2); d) Writeln (‘S=S:5:2’); Câu 14: Cho S = 12 + 22 + ....+1002. Nhóm lệnh nào tính sai Giá trị của S: a) S:=0; FOR i:=1 TO 100 DO S:=S+i*i; b) S:=0; FOR i:=1 TO 100 DO S:=S+SQR(i); c) S:=0; FOR i:=100 DOWN to 1 DO S:=S+i*i; d) S:=1; FOR i:=1 TO 100 DO S:=S+i*i; Câu 15: Hãy cho biết kết quả in ra màn hình của đoạn chương trình: Var x,y: integer; Procedure TS( Var x:integer; Var x: integer); Begin X := X+1; Y := Y+X; End; Begin X:=5; y:=10; TS(X,Y); Writeln (X,’,’,Y); Readln; End. a) 5,16 b) 10,5 c) 6,10 d) 6,16 Câu 16: 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; Write(S);Readln; End. Giá trị sau cùng của S là: a) 50 b) 12 c) 24 d) 4 Câu 17: Cho chuỗi S:=’aa bbb cccc’; I:=pos(#32,S); S:=Copy(s,i+1,length(s)-i)+copy (s,i,i-1); Hãy cho biết kết quả của S sau đoạn chương trình trên: a) bbb aa cccc b) bbb cccc b c) bbb cccc ac d) aa bbb cccc Câu 18: Hãy cho biết kết quả in ra màn hình sau khi thực hiện các lệnh x:=10; y:=5; x:=x+y; y:=x-y; x:=x-y; Write (x,’,’,y); a) 5,10 b) 10,10 c) 5,5 d) 10,5 Câu 19: Cho N, i là biến nguyên, sau khi thực hiện các lệnh: N:= 2; i :=8; Case N of 1: N:= N + i + 1; 2: N:= N + i + 2; 3: N:= N + i + 3; End; Giá trị sau cùng của i là: a) 10 b) 11 c) 14 d) 12 Câu 20: Cho S và i là biến nguyên. Khi chạy đoạn chương trình: S:=1; for i:=1 to 10 do; S:=S+i; Writeln(s): Kết quả in trên màn hình là: a)11 b) 55 c) 100 d)10 Câu 21: 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; Write(S);Readln; End. Giá trị sau cùng của S là: a) 0 b) 12 c) 3 d) 24 Câu 22 : Hãy cho biết kết quả in ra màn hình sau khi thực hiện lệnh: S:=0; n:=5; I:=1; While n>=i Do Begin if I mod 2 0 then s:=s+i; I:=I+1; end; a) 9 b) 7 c) 10 d) 8 Câu 23: Cho mảng B như sau B[1]:=1; B[2]:=3; B[3]:=2; B[4]:=6; For I:=1 to 3 do For j:=1 to i do If B[i]>b[j] then Begin Temp:= B[i];B[i]:=B[j]; B[j]:=Temp; End; For i:= 4 downto 1 do Write (B[i],','); Kết quả là: a) 6,2,1 ,3 b) 6,1,2,3 c) 3,6,9,1 d) 6,3,2,1 Câu 24: cho a:=5; b:=6; c:=7; d:=8; S là biến kiểu Boolean S:=(((a>b) or Not ( c > d)) and (a<d)); Write (S); Kết quả : a) True b) False c) Không có câu đúng Câu 25: cho a:=5; b:=6; c:=7; d:=8; S là biến kiểu Boolean S:=(((a>b) Xor Not ( c < d)) and (a<d)); Write (S); a) True b) False c) Không có câu đúng ****************************cõdôcõdô&ôdõcôdõc********************** ĐỀ 4 Câu 1: Cho a,b,c là các biến kiểu nguyên, lệnh nào là đúng: a) Readln (a,b,c); b) a:=b/c; c) a+b:=c; d) Writeln(a+b,c:0:2); Câu 2: Cho a,b là các biến kiểu nguyên, lệnh nào là sai: a) Writeln(a,9); b) Writeln(a:9:2); c) Writeln(‘a=’,a); d) Writeln(a,b); Câu 3; Cho a là biến Word, sau khi thực hiện hai lệnh: A:=20; Writeln(a:10); Kết quả in trên màn hình là: a) 20 b) 20.00 c) +2.0000000000E+01 d) 2.0000000000E+01 Câu 4: Lệnh sau in ra màn hình bao nhiêu kí tự ‘*’ For I:=1 to 9 do If (I mod 2) = 0 then write(‘*’); a) 5 b) 1 c) 3 d) 4 Câu 5: Giá trị của S sau đoạn chương trình: S:=0; For I:=1 to 10 do If I mod 3 = 0 then S:= S+I; a) 18 b) 55 c) 40 d) 25 Câu 6: Hãy cho biết kết quả a,b sau khi thực hiện các lệnh: a:=5; b:=10; a:=a+b; b:=a+b; a:=a+b; Write(a,’ , ‘ , b); a) 15,25 b) 40,25 c) 5,10 d) 25,40 Câu 7: Hãy cho biết kết quả in ra màn hình của đoạn chương trình Var A : integer; Function GT( N: integer): integer; Var I : integer; S:Real; Begin S:=1; For i:=1 to N do S:=S*i; T:=S; End; Begin A:=5; write (T(A):10:0); End. a) 5 b) 10 c) 25.0 d) 120.0 Câu 8: Cho a,b, i là biến nguyên, kết quả của đoạn chương trình sau ? A :=10; b :=25; I:=1; repeat a :=a +3; b :=b -1; i :=i+2; Until a>=b; Write(I); a) 9 b)11 c) 8 d) 19 Câu 9: Cho đoạn chương trình sau: Var I, j, k :Byte; {dòng 1} Begin { dòng 2} J:=10; { dòng 3} k:=5; { dòng 4} I:=j/k +10 ; { dòng 5} END. { dòng 6} Chương trình sai ở dòng: a) 5 và 6 b) 3 c) 4 d) 5 Câu 10: Lệnh Write ( 6 div 2 :3 ) in ra màn hình: a) 3.000 b) 3 c) 3.0E+00 d) 3.0E +01 Câu 11: Lệnh sau in ra màn hình bao nhiêu ký tự ‘*’ For I:=1 to 10 do if I mod 30 then ; Write (‘*’) ; a)11 b) 10 c) 1 d) 9 Câu 12: câu lệnh sau có mấy lỗi sai: CASE lop OF 1..5: Write ‘mau giao’) 12..18 Write ( ‘trung hoc PT’ ); END a) 2 b) 4 c) 5 d) 6 Câu 13: Cho biến A kiểu thực và gán A:=12.41; Để in lên màn hình như sau: A:=12.41; Chọn lệnh nào: a) Writeln (‘A=’, A:5:2); b) Writeln (A:5); c) Writeln (A); d) Writeln (‘A=A:5:2’); Câu 14: Cho S = 12 + 22 + ....+1002. Nhóm lệnh nào tính sai Giá trị của S: a) S:=0; FOR i:=1 TO 100 DO S:=S+i*i; b) S:=1; FOR i:=1 TO 100 DO S:=S+i*i; c) S:=0; FOR i:=1 TO 100 DO S:=S+SQR(i); d) S:=0; FOR i:=100 DOWN to 1 DO S:=S+i*i; Câu 15: Hãy cho biết kết quả in ra màn hình của đoạn chương trình: Var a,b: integer; Procedure TS( Var a:integer; Var b: integer); Begin A:= A+1; B:= B+A; End; Begin A:=5; b:=10; TS(a,b); write (a,’,’,b); Readln; End. a) 6,16 b) 10,5 c) 6,10 d) 5,16 Câu 16: Khi chạy chương trình : Var ST, i, j :integer; Begin S:=0; For i:=1 to 4 do For j:=1 to 3 do ST:=ST+1; Write(ST);Readln; End. Giá trị sau cùng của ST là: a) 8 b) 4 c) 24 d) 12 Câu 17: Cho chuỗi ST:=’aa bbb cccc’; I:=pos(#32,S); S:=Copy(ST,i+1,length(ST)-i)+copy (ST,i,i-1); Hãy cho biết kết quả của ST sau đoạn chương trình trên: a) bbb aa cccc b) bbb cccc ac c) bbb cccc b d) aa bbb cccc Câu 18: Hãy cho biết kết quả in ra màn hình sau khi thực hiện các lệnh a:=10; b:=5; a:=a+b; b:=a-b; a:=a-b; write (a,’,’,b); a) 10,15 b) 10,10 c) 5,10 d)10,5 Câu 19: Cho a, b là biến nguyên, sau khi thực hiện các lệnh: a:= 3; b :=8; Case a of 1: a:= a + b + 1; 2: a:= a + b + 2; 3: a:= a + b + 3; end; Giá trị sau cùng của i là: a) 14 b) 12 c) 16 d) 10 Câu 20: Cho ST và m là biến nguyên. Khi chạy đoạn chương trình: ST:=1; for m:=1 to 10 do; ST:=ST + m; Writeln(ST): Kết quả in trên màn hình là: a)11 b) 55 c) 100 d)10 Câu 21: 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; Write(S);Readln; End. Giá trị sau cùng của S là: a) 14 b) 12 c) 4 d) 24 Câu 22 : Hãy cho biết kết quả in ra màn hình sau khi thực hiện lệnh: S:=0; n:=5; I:=1; While n>=i Do Begin if I mod 2 0 then s := s+i; I:= I+1; end; a) 5 b) 7 c) 10 d) 9 Câu 23: Cho mảng A như sau A[1]:=1; A[2]:=3; A[3]:=2; A[4]:=6; For I:=1 to 3 do For j:=1 to i do If A[i]> A[j] then Begin Temp:= A[i]; A[i]:=A[j];A[j]:=Temp; End; For i:= 4 downto 1 do Write (B[i],','); Kết quả là: a) 6,1,2 ,3 b) 6,1,3,3 c) 3,6,9,1 d) 6,3,2,1 Câu 24: cho a:=5; b:=6; c:=7; d:=8; S là biến kiểu Boolean S:=(((a>b) or Not ( c > d)) and (a<d)); Write (S); Kết quả : a) True b) False c) Không có câu đúng Câu 25: cho a:=5; b:=6; c:=7; d:=8; S là biến kiểu Boolean; thực hiện các lệnh S:=(((a>b) Xor Not ( c < d)) then (a<d)); Write (S); Kết quả S là: a) True b) False c) Không có câu đúng
Tài liệu đính kèm: