TRƯỜNG THCS XUÂN TÂN
ĐỀ KIỂM TRA HKII NĂM HỌC 2008-2009
MÔN : Tin Lớp : 8
Thời gian : 45 phút ( Không kể giao đề )
Điểm Nhận xét của Thầy ( Cô )
Phần 1 (2 điểm): Trắc nghiệm
I/ Chọn câu trả lời đúng nhất
Câu 1: Vòng lặp while ..do 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 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ị cuôí> to <giá trị đầu> do <câu lệnh>;
C. For <biến đếm>: <giá trị đầu> to <câu lệnh> do <giá trị cuối>;
D. For <biến đếm>:= <giá trị đầu> to <giá trị cuôí> do <câu lệnh>;
Câu 3: Phát biểu nào sau đây là đúng ?
A. 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
B. 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.
C. 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.
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 …to … do
Câu 4: 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’);
II/ Ghép nối : (1đ) Hãy ghép mỗi mục ở cột A với một mục ở cột B để có phát biểu đúng
Cột A Cột B
a/ Người lập trình
b/ Để soạn một tài liệu
c/ Hệ điều hành
d/ Chương trình
f/ Để trình bày thông tin dưới
dạng bảng và tính toán với
những con số
1/ người ta sử dụng chương trình bảng tính
2/ là người viết chương trình cho máy tính
3/ là tập hợp các lệnh để máy tính thực hiện một nhiệm vụ nhất
định.
4/ ta có thể dùng chương trình soạn thảo văn bản
Phần 2 (8 điểm): Tự luận
Câu 1 (2 điểm): Viết thuật toán tính tổng sau:
)1(
1
....
4.3
1
3.2
1
2.1
1
+
++++=
nn
S
Câu 2 (3điểm) : Viết chương trình sử dụng lệnh lặp while…do để tính trung bình cộng của n số
thực : a
1
,a
2
,a
3
,…,a
n
. (Các số n và a
1
,a
2
,a
3
,…,a
n
được nhập từ bàn phím).
Câu 3 (3điểm) Hãy sắp xếp lại đọan chương trình sau cho đúng
var S, n : integer;
S:=0; n:=1;
Begin
begin
while S<=1000 do
n:=n+1;
S:=S+n;
end;
writeln('So n nho nhat de tong > 1000 la ',n);
readln
end.
writeln('Tong dau tien > 1000 la ',S);
Hết
ĐÁP ÁN THII HKII
TIN HỌC LỚP 8 :
Phần 1 (2 điểm): Trắc nghiệm ( Mỗi ý đúng được 0,25đ )
I/ Chọn câu trả lời đúng nhất
Câu 1: Vòng lặp while ..do là vòng lặp:
A. Chưa biết trước số lần lặp
Câu 2: Lệnh lặp nào sau đây là đúng ?
D. For <biến đếm>:= <giá trị đầu> to <giá trị cuôí> do <câu lệnh>;
Câu 3: Phát biểu nào sau đây là đúng ?
B. 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.
Câu 4: Câu lệnh pascal nào sau đây là hợp lệ?
D. For i:= 1 to 10 do writeln(‘A’);
II/ Ghép nối : (1đ)
Hãy ghép mỗi mục ở cột A với một mục ở cột B để có phát biểu đúng
a nối với 2 b nối với 4 d nối với 3 f nối với 1
Phần 2 (8 điểm): Tự luận
Câu 1 (2 điểm):
Thuật toán tính tổng A =
)1(
1
....
4.3
1
3.2
1
2.1
1
+
++++=
nn
S
Bước 1. Gán A ← 0, i ← 1. 0, 5đ
Bước 2. A ←
1
( 1)i i +
. 0,25đ
Bước 3. i ← i + 1. 0,25đ
Bước 4. Nếu i ≤ n, quay lại bước 2. 0,5đ
Bước 5. Ghi kết quả A và kết thúc thuật toán. 0,5đ
Câu 2 (3điểm) : Viết chương trình sử dụng lệnh lặp while…do để tính trung bình cộng của n số
thực : a
1
,a
2
,a
3
,…,a
n
. (Các số n và a
1
,a
2
,a
3
,…,a
n
được nhập từ bàn phím).
Program Tinh_Trung_binh;
uses crt;
Var 0,5đ
n, dem: Integer;
a, TB: real;
begin
clrscr;
dem:=0 ; TB:=0 ; 1đ
write('Nhap so cac so can tinh n = '); readln(n);
while dem<n do
begin
dem:=dem+1;
write('Nhap so thu ',dem,'= '); readln(a); 1đ
TB:=TB+a;
end;
TB:=TB/n;
writeln('Trung binh cua ',n,' so la = ',TB:10:3);
writeln('Nhan Enter de thoat ...'); 0,5đ
readln
end.
Câu 3 (3điểm) Hãy sắp xếp lại đọan chương trình sau cho đúng
var S, n : integer;
Begin
S:=0; n:=1; 1đ
while S<=1000 do
begin 1đ
n:=n+1;
S:=S+n;
end;
writeln('So n nho nhat de tong > 1000 la ',n);
writeln('Tong dau tien > 1000 la ',S); 1đ
readln
end.