Không cần phải xác định kiểu dữ liệu Câu 28: Có thể dùng câu lệnh While – do thay cho câu lệnh For – do được không.. Không thể thay thế B.[r]
Trang 1HƯỚNG DẪN ÔN TẬP HỌC KÌ II
TIN HỌC LỚP 8 I/ TRẮC NGHIỆM
Câu 1: Lệnh lặp nào sau đây là đúng?
A For <biến đếm>= <giá trị đầu> to <giá trị cuối> do <câu lệnh>;
B For <biến đếm>:= <giá trị đầu> to <giá trị cuối> do <câu lệnh>;
C For <biến đếm>:= <giá trị cuối> to <giá trị đầu> do <câu lệnh>;
D For <biến đếm>: <giá trị đầu> to <câu lệnh> do <giá trị cuối>;
Câu 2: Vòng lặp While <Điều kiện> do <Câu lệnh>; là vòng lặp:
A Chưa biết trước số lần lặp B Biết trước số lần lặp
C Biết trước số lần lặp nhưng giới hạn là <=100 D Biết trước số lần lặp nhưng giới hạn là >=100
Câu 3: Sau khi thực hiện đoạn chương trình sau, giá trị của biến S bằng bao nhiêu:
s:=1; for i:=1 to 5 do s := s*i;
Câu 4: Phần thân chương trình bắt đầu bằng từ khóa:
Câu 5: Cú pháp khai báo biến mảng trong Pascal là:
A var <Tên mảng> ; array [<chỉ số đầu> <chỉ số cuối>] of <kiểu dữ liệu >;
B var <Tên mảng> : aray [<chỉ số đầu>…<chỉ số cuối>] of <kiểu dữ liệu >;
C var <Tên mảng> : array [<chỉ số đầu> <chỉ số cuối>] of <kiểu dữ liệu >;
D var <Tên mảng> : array [<chỉ số đầu>…<chỉ số cuối>] for <kiểu dữ liệu >;
Câu 6: Câu lệnh pascal nào sau đây là hợp lệ?
A For i:=100 to 1 do writeln(‘A’); B For i:=1.5 to 10.5 do writeln(‘A’);
C For i= 1 to 10 do writeln(‘A’); D For i:= 1 to 10 do writeln(‘A’);
Câu 7: Chọn khai báo hợp lệ:
A Var a,b: array[1 n] of real; C Var a,b: array[1 : n] of Integer;
B Var a,b: array[1 100] of real; D Var a,b: array[1 … 100] of real;
Câu 8: Trong lệnh lặp for…do của Pascal, trong mỗi vòng lặp, biến đếm thay đổi như thế nào?
A +1 B +1 hoặc -1 C Một giá trị bất kì D Một giá trị khác 0
Câu 9: Cú pháp của câu lệnh While…do là:
A While <điều kiện> to <câu lệnh>; B While <điều kiện> to <câu lệnh1> do <câu lệnh 2>;
C While <điều kiện> do <câu lệnh>; D While <điều kiện>; do <câu lệnh>;
Câu 10: Sau khi thực hiện đoạn chương trình sau: Giá trị của biến S bằng bao nhiêu?
S:=0; For i:=1 to 5 do S:=S+i;
Câu 11: Việc đầu tiên mà câu lệnh While do cần thực hiện là gì?
A Thực hiện < câu lệnh > sau từ khóa Do B Kiểm tra giá trị của < điều kiện >
C Thực hiện câu lệnh sau từ khóa Then D Kiểm tra < câu lệnh >
Câu 12: Pascal sử dụng câu lệnh lặp nào sau đây để lặp với số lần chưa biết trước?
Câu 13: Em được học vẽ hình với phần mềm nào?
Câu 14: Câu lệnh gotoXY(a,b) có tác dụng gì?
A Đưa con trỏ về hàng a cột b B Đưa con trỏ về cột a hàng b
C Cho biết thứ tự của hàng con trỏ đang đứng D Đưa con trỏ về cuối dòng
Câu 15: Biến a được nhận các giá trị là 0 ; -1 ; 1; 2,3 Ta có thể khai báo a thuộc kiểu dữ liệu nào?
Câu 16: Cấu trúc chung hợp lý của một chương trình Pascal là:
Trang 2A Begin -> Program -> End B Program -> End -> Begin.
C End -> Program -> Begin D Program -> Begin -> End
Câu 17: Cho các câu lệnh sau hay chỉ ra câu lệnh đúng:
A for i:=1 to 10; do x:=x+1 B for i:=1 to 10 do x:=x+1
C for i:=10 to 1 do x:=x+1 D for i:= 1 to 10 for j:=1 to 10 do x:=x+1
Câu 18 Trong câu lệnh lặp For i:=1 to 10 do begin end; câu lệnh ghép được thực hiện bao nhiêu lần?
A Không lần nào B 1 lần C 2 lần D 10 lần
Câu 19 Đoạn lệnh sau đây: so:=1; while so<10 do writeln(so); so:=so+1; sẽ cho kết quả là gì?
A In ra các số từ 1 đến 9 B In ra các số từ 1 đến 10
C In ra vô hạn các số 1, mỗi số trên một dòng D Cả a, b, c đều sai
Câu 20: Hãy cho biết kết quả của b trong đoạn chương trình sau đây.
a:=10; b:=5;
while a>=10 do begin b:=b+a; a:=a-1; end;
Câu 21: Trong Pascal, câu lệnh Writeln(16 div 3) sẽ in lên màn hình kết quả là bao nhiêu?
A Kết quả là 5 B Kết quả là 1 C Kết quả là 16 D Kết quả là 3
Câu 22: Câu lệnh điều kiện dạng đầy đủ là:
A If <điều kiện> then < câu lệnh>; B If <điều kiện> then <câu lệnh 1> Else <câu lệnh 2>;
C If <điều kiện> then < câu lệnh>; D If <điều kiện> then < câu lệnh 1>,<câu lệnh 2>;
Câu 23: Chọn phép toán sai trong các phép toán viết bằng ngôn ngữ lập trình Pascal dưới đây:
A x≥(m+5)/(2∗a)x≥(m+5)/(2∗a) B x>=(m+5)/(2∗a)x>=(m+5)/(2∗a)
C x>=(m+5)/2∗ax>=(m+5)/2∗a D Tất cả các phép toán trên
Câu 24: If Then Else là:
A Vòng lặp xác định B Vòng lặp không xác định
Câu 25: Bốn bạn A,B,C,D đưa ra kết quả phép chia hai số nguyên 14 và 5 Hãy chọn kết quả đúng:
A 14/5=2; 14 div 5=2; 14 mod 5=4; B 14/5=2.8; 14 div 5=2; 14 mod 5=4;
C 14/5=2.8; 14 div 5=4; 14 mod 5=2 D 14/5=3; 14 div 5=2; 14 mod 5=4
Câu 26: Trong Pascal, khai báo nào sau đây là đúng?
A Var begin : integer; B Var tamgiac = real;
C Const bankinh : 2; D Const Pi = 3.14;
Câu 27: Kiểu dữ liệu của biến đếm trong lệnh lặp For – to - do:
A Cùng kiểu với giá trị đầu và giá trị cuối B Chỉ cần khác kiểu với giá trị đầu
C Cùng kiểu với các biến trong câu lệnh D Không cần phải xác định kiểu dữ liệu
Câu 28: Có thể dùng câu lệnh While – do thay cho câu lệnh For – do được không?
A Không thể thay thế B Chỉ thay thế được khi vòng lặp đó chưa biết trước số lần lặp
C Luôn thay thế được D Tỉ lệ thay thế được là 50%
Câu 29: Trong vòng lặp While – do, câu lệnh được thực hiện khi:
A Điều kiện còn đúng B Điều kiện sai
C Điều kiện không xác định D Không cần điều kiện
Câu 30: Tính tống S = 1 + 2 + 3 + … + n + … cho đến khi S>1000 Điều kiện nào sau đây cho vòng lặp while – do là đúng:
A While S>=1000do B While S < =1000do
C While S < 1000 do D While S > 1000 do
Trang 3II/ BÀI TẬP TỰ LUẬN:
Câu 1: Điền X vào các ô sao cho phù hợp và giải thích vì sao?
a) for i=1 to 10 do writeln('A');
b) var X: Array[5…10] Of Char;
c) X:=10; while X=10 do X := X+5;
d) if x>5 then a:=b; else m := n;
Câu 2: Đánh dấu [x] vào ô đúng hoặc sai tương ứng trong các câu lệnh Pascal trong chương trình tính
tổng 10 số tự nhiên đầu tiên, nếu sai sửa lại?
Program Chuong trinh
Var i,s : real;
Const n:=10;
Begin
Wile i <=n do;
Begin
S:=s+i
i =i+1
End.
Writeln(s)
Readln
End;
Câu 3 : Viết chương trình tính tổng: S = 1+2+3+…+n Trong đó n là số nguyên nhập từ bàn phím Câu 4 : Viết chương trình tính tich 30 số nguyên đầu tiên
Câu 5 : Viết chương trình nhập vào 1 mảng gồm n phần tử (n nhập vào từ bàn phím) Tính tổng các phần tử của mảng?
Câu 6 : Viết chương trình nhập 1 số nguyên N từ bàn phím Kiểm tra N có phải là số nguyên tố hay không?
Câu 7: Viết chương trình tính xn
Trang 4Hướng dẫn giải bài tập Tự Luận Câu 3 : Viết chương trình tính tổng:
S = 1+2+3+…+n Trong đó n là số nguyên nhập
từ bàn phím.
Program BT1;
Var n, i, S: Integer;
Begin
Write(' Nhap n : '); Readln(n) ;
S:=0;
For i := 1 to n do
S := S + i ;
Writeln (' Tong la: ', S) ;
Readln ;
End
Câu 4 : Viết chương trình tính tích 30 số nguyên đầu tiên
Program BT2;
Var n, T: Integer;
Begin Write(' Nhap n : '); Readln(n) ; T:=1; n:=0;
While n<=30 do Begin
T := T*n;
n:=n+1;
End;
Writeln (' Tich la: ',T) ; Readln ;
End
Câu 5 : Viết chương trình nhập vào 1 mảng gồm
n phần tử (n nhập vào từ bàn phím) Tính tổng
các phần tử của mảng?
Program BT3;
Var n, i: Integer;
a : array [1 100] of integer;
Begin
Write(' Nhap so phan tu cua mang: ');
Readln(n) ;
For i := 1 to n do
Begin
Write(‘phan tu thu ‘,i,’ la:’);
Readln(a[i]);
End;
S:=0;
For i := 1 to n do S:=S+a[i];
Write(‘Tong la:’,S);
Readln ;
End.
Câu 6: Viết chương trình nhập 1 số nguyên N từ bàn phím Kiểm tra N có phải là số nguyên tố hay không?
Program BT4;
Var n, i: Integer;
Begin Write(' Nhap N : '); Readln(N) ;
If n<= 1 then writeln(n,’ khong phai là so nguyen to’) else
Begin i:=2;
while (n mod i<>0) do i:=i+1;
If i=n then writeln(n,’la so nguyen to’) else writeln(n,’ khong la so nguyen to’); end;
Readln ; End
Program BT5;
Var i, n : Integer ;
x, ketqua: Real ;
Begin
Write (' Cho so x : ') ; Readln(x) ;
Write (' Cho so mu n : ') ; Readln(n) ;
i := 1 ;
ketqua:= 1 ;
While i <= n Do
Begin
ketqua:= ketqua * x ;
i:= i+1 ;
End ;
Writeln(' a mu n bang : ', ketqua ) ;
Readln ;
End
Câu 8: Viết chương trình tính giai thừa n!
Program BT6;
Var i, n : Integer ; Giaithua: longint;
Begin Write(' Nhap n : '); Readln(n) ; giaithua := 1 ;
For i := 1 to n do giaithua:=giaithua*i;
Write(n,’! = ‘, giaithua);
Readln ; End.