Tải bản đầy đủ (.doc) (9 trang)

Đề cương ôn tập học kỳ II HOT bình thường

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (124.39 KB, 9 trang )

ĐỀ CƯƠNG ÔN TẬP HỌC KỲ 2
MÔN: TIN HỌC 8 (Năm học 2010 – 2011)
I. PHẦN TRẮC NGHIỆM.
Câu 1: Phát biểu nào sau đây là đúng ?
A. Cấu trúc lặp được sử dụng để chỉ thò cho máy tính thực hiện lặp lại một vài hoạt động
nào đó cho đến khi một điều kiện nào đó được thoả mãn.
B. Chỉ ngôn ngữ lập trình Pascal mới có các câu lệnh lặp để thể hiện cấu trúc lặp.
C. Ngôn ngữ Pascal thể hiện cấu trúc lặp với số lần lặp cho trước bằng câu lệnh while…do
D. Ngôn ngữ Pascal thể hiện cấu trúc lặp với số lần lặp chưa biết trước bằng câu lệnh
For…do
Câu 2: Lệnh lặp nào sau đây là đúng?
A. For <biến đếm>= <giá trò đầu> to <giá trò cuôí> do <câu lệnh>;
B. For <biến đếm>:= <giá trò đầu> to <giá trò cuôí> do <câu lệnh>;
C. For <biến đếm>:= <giá trò cuôí> 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 3: Câu lệnh lặp while…do có dạng đúng là:
A. While <điều kiện> do; <câu lệnh>; B. While <điều kiện> <câu
lệnh> do;
C. While <câu lệnh> do <điều kiện>; D. While <điều kiện> do <câu
lệnh>;
Câu 4: Để tính tổng S=1+2+3+ 4+ 5 + … + n; em chọn đoạn lệnh:
A. s:=0; i:=0;
While i<=n do
S:=S + 1;
B. s:=0; i:=0;
While i<=n do
If (I mod 2)= 1 Then S:=S + i;
C. s:=0; i:=0;
While i<=n do
begin
S:=S + i;


I:=i+1;
End;
D. s:=0; i:=0;
While i<=n do
begin
if (i mod2)=1 Then S:=S + i;
Else i:=i+1;
End;
Câu 5: Chọn cách khai báo biến mảng đúng:
A. Var a: array[1…100] of integer; B. Var a: array[1 n] of integer;
C. Var a: array[1 50] of integer; D. Var a: array[1 24.5] of
integer;
Câu 6: Cho S và i là biến nguyên. Khi chạy đoạn chương trình:
s:=0; i:=1
while i<=5 do begin i:=i+1; s := s+i; end;
writeln(s);
Kết quả in lên màn hình là của s là :
A. 6 B. 9 C. 14 D. 20
Câu 7: Trong vòng lặp For <biến đếm>:=<giá trò đầu> to <giá trò cuối> do <câu lệnh>
củaPascal, trong mỗi vòng lặp, biến đếm thay đổi như thế nào
A. +1 B. -1
C. Một giá trò bất kỳ D. Một giá trò khác không
Câu 8: Câu lệnh lặp while…do có dạng đúng là:
A. x:=10; While x:=10 do x:=x+5; B. x:=10; While x:=10 do
x=x+5;
C. x:=10; While x=10 do x=x+5; D. x:=10; While x=10 do
x:=x+5;
Câu 9: 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 to 10 do
writeln(‘A’);

C. For i:=1.5 to 10.5 do writeln(‘A’); D. For i= 1 to 10 do
writeln(‘A’);
Câu 10: Cho S và i là biến nguyên. Khi chạy đoạn chương trình:
S:=0;
For i:=1 to 5 do s:=s+1;
Writeln(s);
Kết quả in lên màn hình của s là :
A. 11 B. 15 C. 10
D. 5
Câu 11: Lần lượt thực hiện câu lệnh for i:= 1 to 3.5 do writeln(i:3:1); sẽ viết ra màn hình?
A. Thứ tự của biến đếm, chiếm 3 chỗ và lấy 1 chữ số sau phần thập phân B. Viết số 1 rồi
viết số 3.5
C. Chỉ viết số 3.5 mà thôi D. Không thực hiện được vì giá trò của biến đếm có kiểu thứ
tự là Real
Câu 12: Tìm hiểu đoạn lệnh sau và cho biết với đoạn lệnh đó chương trình thực hiện bao
nhiêu vòng lặp
S:=0; n:=0;
While S< =10 do
Begin
n:=n+1;
s:=s+n;
end;
A. 4 lần B. 6 lần C. 5 lần D. 10
Câu 13 : Câu lệnh nào sau đây lặp vô hạn lần
A. s:=5; i:=0;
While i<=s do s:=s + 1;
B. s:=5; i:=1;
While i<=s do i:=i + 1;
C. s:=5; i:=1;
While i> s do i:=i + 1;

D. s:=0; i:=0;
While i<=n do
if (i mod2)=1 then S:=S + I else i:=i+1;
Câu 14: Để tính tổng S=1 + 2 +3 +4 … + n; em chọn đoạn lệnh:
A. for i:=1 to n do
if ( i mod 2)=0 then S:=S + i;
B. for i:=1 to n do
if ( i mod 2)=1 then S:=S + i;
C. for i:=1 to n do
S:= S + i ;
D. for i:=1 to n do
if ( i mod 2)<>0 then S:=S + i;
Câu 15: Để tính tổng S=2 + 4 + 6 … + n; em chọn đoạn lệnh:
A. For i:=1 to n do
if ( i mod 2)=0 then S:=S + i;
B. For i:=1 to n do
S:= S + i ;
C. For i:=1 to n do
if ( i mod 2)=1 then S:=S + i;
D. for i:=1 to n do
if ( i mod 2)<>0 then S:=S + i;
Câu 16: Để tính tổng S=1/2+1/4 + 1/6 + … +1/ n; em chọn đoạn lệnh:
A. for i:=1 to n do
if ( i mod 2)=0 then S:=S + 1/i;
B. for i:=1 to n do
if ( i mod 2) < > 0 then S:=S + i;
C. for i:=1 to n do
if ( i mod 2)=0 then S:=S – 1/i
else S:= S + 1/i;
D. for i:=1 to n do

if ( i mod 2)=0 then S:=S +1/ i else S:=S-1/i;
Câu 17: Để đếm có bao nhiêu số lẻ nhỏ hơn hay bằng n ; em chọn đoạn lệnh:
A. for i:=1 to n do
if ( I mod 2)< >0 then S:=S + 1;
B. for i:=1 to n do
if ( I mod 2) =0 then S:=S + 1;
C. for i:=1 to n do
if ( I mod 2)=0 then S:=S + I ;
D. for i:=1 to n do
if ( I mod 2)=0 then S:=S + I;
Câu 18: Với ngôn ngữ lập trình Passcal câu lệnh lặp for i:=1 to 10 do x:=x+1; thì biến đếm i
phải được khai báo là kiểu dữ liệu
A. Integer; B. Real;
C. String D. Tất cả các kiểu trên đều được
Câu 19: Sau khi thực hiện đoạn chương trình j:= 0; for i:= 1 to 3 do j:=j+2; thì giá trò in ra màn
hình là?
A. 4 B. 6 C. 8 D. 10
Câu 20: Đoạn lệnh sau đây So:=1; While so<10 do writeln(so); So:=so+1; Sẽ cho kết quả gì?
A. In ra các số từ 1 đến 9 B. In ra các số từ 1 đến 10
C. Không phương án nào đúng D. In vô hạn các số 1, mỗi số trên một dòng
Câu 21: Tìm hiểu đoạn lệnh sau và cho biết với đoạn lệnh đó chương trình thực hiện bao
nhiêu vòng lặp
S:=0; n:=0;
While S< =10 do n:=n+1; s:=s+n;
A. 9 lần B. 10 lần C. 11 lần D. Vô hạn lần
Câu 22: Hãy tìm hiểu đoạn chương trình sau đây. Sau khi đoạn chương trình này được thực
hiện, giá trò của x bằng bao nhiêu?
X:=0; Tong:=0;
While tong<=20 do
Begin

Writeln(tong); Tong:=tong+1;
End.
X:=tong;
A. 20 B. 21 C. Không xác đònh D. 0
Câu 23: 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> : array [<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 24: 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 25: Trong phần mềm Finger Break Out mức chơi Advanced là mức chơi:
A. Bắt đầu B. Bình thường C. Trung bình D. Nâng
cao
Câu 26: Trong phần mềm Sun Times để biết thời gian giữa trưa, ta chọn mục nào
A. Sunset B. Sunrise C. Day lengh D.
Midday
Câu 27: Để cố đònh vò trí và thời gian quan sát ta vào:
A. Option \ Maps \ Show Sky Clour B. Option \ Maps \ Anchor
Time To
C. Option \ Maps \ Hover Update D. Option \ Maps \ Currenttly
Sunset
Câu 28: Để xem chi tiết thời gian mặt trời mọc, lặn trong suốt 365 ngày của một năm của một
đòa điểm, vò trí trên trái đất, ta vào
A. View \ Today’s Sun Times B. View \ Sunrise / Sunset for
the year
C. View \ Currenttly Sunset / Sunrise D. View \ Sunset / Sunrise for
the year
Câu 29: Phần mở rộng của tệp hình trong phần mềm Geogebra là gì:

A. bgg B. gsb C. ggb D. Gbb
Câu 30: Trong phần mềm Geogebra, công cụ tạo trung điểm đoạn thẳng là :
A. B. C. D.
Câu 31: Phần mềm nào sau đây xem được hiện tượng nhật thực và nguyệt thực?
A. Finger Break Out B. Sun Times.
C. Sun Times và Yenka D. Câu B và C.
Câu 32: Phần mềm Finger Break Out dùng để làm gì?
A. Xem thông tin thời gian ngày và đêm B. Xem thông tin nhật thực,
nguyệt thực.
C. Luyện gõ bàn phím nhanh, chính xác D. Không có đáp án đúng
Câu 33 : Phần mềm học vẽ hình là :
A. Sun Times B. Toolkit Math C. Geogebra D.Finger
Breakout
Câu 34: Ghép nội dung ở cột A sao cho phù hợp ở cột B
Cột A Cột B Trả lời
1. Fi nger Bre ck out là pm
2. Quan sát toàn cảnh thế giới
3. Geogebra là phần mềm
4. Tạo hình không gian
a. Phần mềm Sun ti mes
b. Vẽ biểu đồ toán học
c. Phần m ềm Yen ka
d. Vẽ hình h ọc đơn giản
e. Luyện gõ phím nhanh băn g 10 ngón tay
1

2

3


4

Câu 35: Điền X vào các ô sao cho phù hợp và giải thích vì sao
Câu Đúng Sai Giải thích
a) for i=1 to 10 do writeln('A');
b) var X: Array[5 10] Of Real;
c) X:=10; while X<30 do X: = X+5;
d) if x>5 then a:=b; else m := n;
Câu 36 : Nhận xét nội dung và đánh dấu “X” vào cột ĐÚNG hoặc SAI.
Nội dung Đún
g
Sai
1. Không nên thay đổi giá trò của biến đếm trong câu lệnh lặp For … do, ví dụ câu lệnh lặp sau
đây là không nên sử dụng For i:=1 to n do i:=i+2;
2. Trong câu lệnh lặp for biến đếm:=giá trò đầu to giá trò cuối do câu lệnh;
Nếu giá trò đầu < giá trò cuối thì chương trình dòch sẽ báo lỗi để ta chỉnh sữa lại
3. Câu lệnh lặp For… do rất thuận tiện và hữu ích trong việc tránh phải viết lặp đi lặp lại nhiều
lần một câu lệnh nào đó. Chẳng hạn để in ra các số nguyên hơn kém nhau 1 đơn vò từ 1 đến 15
ta chỉ viết 1 câu lệnh sau For i:=1 to 15 do writeln(i:3:1);
4. Mọi câu lệnh lặp While…do đều có thể thay thế một cách thích hợp bởi câu lệnh For do
5. Câu lệnh sau do trong câu lệnh lặp while … do có thể không được thực hiện lần nào nếu ngay
từ đầu điều kiện điều khiển vòng lặp có giá trò “sai”
II. PHẦN T Ự LUẬN:
Câu 1: Viết đoạn chương trình tính tổng các số từ 10 đến 100 (sử dụng For do
và While … do).
Câu 2: Viết chương trình nhập vào điểm toán và ngữ văn của các bạn, gồm n bạn
nhập từ bàn phím, sau đó in ra điểm trung bình mỗi bạn theo công thức (điểm trung
bình = (điểm toán + điểm ngữ văn)/2)
Câu 3 : Viết chương trình tính trung bình cộng các số của dãy số gồm n số nhập từ
bàn phím?

Câu 4 : Viết chương trình tính tổng:
1 1 1 1
1
2 3 4
S
n
= + + + + +

Trong đó n là số nguyên nhập từ bàn phím
Câu 5: Viết chương trình thực hiện các công việc sau:
a. Cho phép nhập vào 1 dãy số gồm n số (với n>1 và nhập từ bàn phím)
b. In ra màn hình số lớn nhất.
c. In ra màn hình những số lớn hơn 5 và không chia hết cho 2.
Câu 6: Vẽ hình: (Sử dụng phần mềm Geogebra)
a). Trình bày các bước vẽ hình tròn nội tiệp tam giác ABC (
ΔABC
cho trước)
b). Trình bày các bước vè hình vuông cạnh 4 Cm.
Chúc các em thành công!
GVBM

Nguyễn Văn Phong
HƯỚNG DẪN
Câu 1: Viết đoạn chương trình tính tổng các số từ 10 đến 100 (sử dụng For do và While
… do).
* Sử dụng For … Do
Var s, i : integer;
Begin
s:=0;
For i:=10 to 100 do

s:=s+i;
Writeln(‘Tổng cần tìm là ‘, s);
Readln;
End.
* Sử dụng While … DO
Var s, i : integer;
Begin
s:=0; i:=10;
While i<=100 do
Begin
s:=s+i;
i:=i+1;
end;
Writeln(‘Tổng cần tìm là:’,s);
Readln;
End.
Câu 2: Viết chương trình nhập vào điểm toán và ngữ văn của các bạn, gồm n bạn nhập
từ bàn phím, sau đó in ra điểm trung bình mỗi bạn theo công thức (điểm trung bình =
(điểm toán + điểm ngữ văn)/2)
Program bai2;
Uses crt;
Var DT, DV:array[1 100] of real;
i, n: integer; TB:real;
Begin
Write(‘Nhập số bạn trong lớp, n=’);
Readln(n);
Writeln(‘Nhập điểm Toán và Văn ‘);
For i:=1 to n do
Begin
Write(‘DT[‘, i,’]=’);

Readln(DT[i]);
Write(‘DV[‘, i,’]=’);
Readln(DV[i]);
End;
Writeln(‘ĐIỂM TB CỦA CÁC BẠN LÀ’);
For i:= 1 to n do
Begin
TB:=(DT[i]+DV[i])/2;
Writeln(‘Bạn sô’,i,’là’,TB:3:2);
End;
Readln;
END.
{
}
Câu 3 : Viết chương trình tính trung bình cộng các số của dãy số gồm n số nhập từ bàn
phím?
Program bai3;
Uses crt;
Var A : array[1 100] of integer ;
i, n, t: integer; tb: real;
Begin
Write(‘Nhập số phần tử của dãy n = ‘);
Readln(n);
Writeln(‘Nhập các giá trò phần tử ‘);
For i:= 1 to n do
Begin
Write(‘A[‘, i,’]=’);
Readln(A[i]);
End;
t:=0;

For i:=1 to n do
t:= t + A[i];
tb:=t/n;
Write(‘Trung bình các số của dãy số là: ‘, tb);
Readln;
End.
{ }
Câu 4: Viết chương trình tính tổng:
1 1 1 1
1
2 3 4
S
n
= + + + + +

Trong đó n là số nguyên nhập từ bàn phím
Giải:
Program Tong_Nghich_Dao;
Uses crt;
Var S: real;
n, i: integer;
Begin
Clrscr;
Write(‘Nhap so n = ‘); Readln(n);
S:= 0;
For i:= 1 to n do S: = S + 1/i;
Writeln(‘Tong can tim la: ‘, S:6:2);
Readln;
End.
{

}
Câu 5: Một số ngôn ngữ lập trình, ví dụ Pascal, không có sẵn hàm tính lũy thừa. Hãy mô
tả thuật toán và sử dụng câu lệnh lặp với số lần xác đònh trước để viết chương trình
Pascal tính lũy thừa bậc n của số nguyên X.
Giải:
Program bai5;
Var n,i,x: integer; a: longint;
Begin
Write('Nhap x='); readln(x);
Write('Nhap n='); readln(n);
A:=1;
For i:=1 to n do A:=A*X;
Writeln(x,' mu ',n,' bang ',A);
End.
Câu 31:
Câu Đúng Sai Giải thích
a) for i=1 to 10 do writeln('A');
x
Thiếu dấu : sau biến i
b) var X: Array[5 10] Of Real;
x
c) X:=10; while X<30 do X: = X+5;
x
d) if x>5 then a:=b; else m := n;
x
Thừa dấu ; trước else

×