PHÒNG GD- ĐT TX ĐIỆN BÀN
TRƯỜNG THCS LÊ NGỌC GIÁ
ĐỀ CHÍNH THỨC
ĐỀ KIỂM TRA HỌC KÌ II
Môn: Tin học 8
Thời gian: 45 phút
Năm học: 2022- 2023
I. PHẦN TRẮC NGHIỆM ( 5.0 điểm): Chọn câu trả lời đúng nhất trong số các câu hỏi sau
đây:
Câu 1: Trong các cách khai báo biến mảng dưới đây, cách khai báo nào là đúng:
A. Var A: array[1..5.5] of integer; B. Var A:array(1..100) of integer;
C. Var A: array[1.5..100] of integer; D. Var A: array[1..100] of integer;
Câu 2: Xác định số vòng lặp cho bài toán: tính tổng các số nguyên từ 1 đến 88
A. 1 B. 100 C. 88 D. 98
Câu 3: Pascal sử dụng câu lệnh nào sau đây để lặp với số lần chưa biết trước?
A. For…do; B. While…do; C. If..then; D. If…then…else;
Câu 4: Trong câu lệnh khai báo biến mảng, phát biểu nào sau đây đúng:
A. Chỉ số đầu và chỉ số cuối là 2 số thực. B. Chỉ số đầu lớn hơn chỉ số cuối.
C. Kiểu dữ liệu có thể là integer hoặc real. D. Kiểu dữ liệu có thể là integer hoặc char.
Câu 5: Trong các câu lệnh lặp sau đây, câu lệnh nào được viết đúng
A. While S< 10 do S:= S+ 1; B. While S< 10 do S= S+ 1;
C. While S:=10 do S:= S+ 1; D. While S< 10 do S: S+ 1;
Câu 6: Trong Pascal, câu lệnh nào sau đây được viết đúng?
A. for i:= 4 to 1 do writeln(‘A’); B. for i= 1 to 10 writeln(‘A’);
C. for i:= 1 to 10 do writeln(‘A’); D. for i to 10 do writeln(‘A’);
Câu 7: Trong câu lệnh lặp: For i := 1 to 10 do j:= j + 2; write( j );
Khi kết thúc đoạn chương trình trên, câu lệnh write( j ); được thực hiện bao nhiêu lần?
A. 10 lần B. 5 lần C. 1 lần D. Không thực hiện.
Câu 8: Chọn cú pháp câu lệnh lặp với số lần biết trước là:
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ị cuối > to < giá trị đầu > do < câu lệnh >;
C. for < biến đếm > = < giá trị đầu > to < giá trị cuối >; do < câu lệnh >;
D. for < biến đếm > = < giá trị đầu > to < giá trị cuối > do < câu lệnh >;
Câu 9: Điều kiện trong câu lệnh lặp với số lần chưa biết trước thường là :
A. phép gán B. câu lệnh đơn C. câu lệnh ghép D. phép so sánh
Câu 10: Sau khi kết thúc đoạn chương trình sau, giá trị của biến S bằng bao nhiêu?
S:= 15;
for i:= 1 to 5 do S:= S - 1;
A. 7 B. 10 C. 15 D. 5
Câu 11: Trong câu lệnh khai báo biến mảng, giá trị đầu và giá trị cuối sẽ là:
A. chỉ số đầu và chỉ số cuối là 2 số nguyên và chỉ số đầu nhỏ hơn hoặc bằng chỉ số cuối.
B. chỉ số đầu và chỉ số cuối là 2 số nguyên và chỉ số đầu lớn hơn chỉ số cuối.
C. chỉ số đầu và chỉ số cuối là 2 số thực và chỉ số đầu nhỏ hơn hoặc bằng chỉ số cuối.
D. chỉ số đầu và chỉ số cuối là 2 số nguyên và chỉ số đầu bằng chỉ số cuối.
Câu 12: Trong câu lệnh lặp for…do, số vòng lặp là biết trước và bằng:
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 D. giá trị cuối – giá trị đầu
Câu 13: Hoạt động nào sau đây lặp với số lần biết trước:
A. Hôm nay, em viết thư cho bạn Lan B. Hôm nay, em ăn cơm sớm lúc 5 giờ
C. Em ăn cơm lúc 6 giờ chiều mỗi ngày D. Chạy quanh hồ đến khi nào mệt.
Câu 14: Hãy cho biết số lần lặp của câu lệnh for…do sau đây: for i:=1 to 3 do …
A. 6 lần B. 5 lần C. 4 lần D. 3 lần
Câu 15: Hãy đọc đoạn chương trình sau:
s:=0;
for i:= 1 to 5 do s:= s * i;
Sau khi thực hiện xong, kết quả s bằng:
A. 15 B. 0 C. Kết quả khác D. 120
II. PHÂCN TỰ LUẬN (5.0 điêHm)
Câu 1:a) Nêu cú pháp của biến mảng trong ngôn ngữ lập trình Pascal? (2.0 điểm)
b) Khai báo biến mảng: A : array[1..15] of real; Sử dụng câu lệnh For i:= 1 to 10 do
readln(A[i]); để gán giá trị cho các phần tử trong biến A từ bàn phím, ta sẽ nhập được bao nhiêu giá
trị? (1.0 điểm)
Câu 2: Viết chương trình nhập vào từ bàn phím số nguyên dương N, sử dụng câu lệnh điều kiện để
tính tổng các giá trị chia hết cho 3 và 5 trong phạm vi từ 1 đến N, sau đó in ra màn hình. (2.0 điểm)
------------------------
HƯỚNG DẪN ĐÁP ÁN VÀ BIỂU ĐIỂM
I. PHÂCN TRĂNC NGHIÊOM : (5.0 điêHm) 3 câu đúng 1.0đ
Câu 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
ĐaNp aNn D C B C A C C A D B A A D D B
II. PHÂCN TỰ LUẬN: (5.0 điêHm)
Câu 1
(3.0 điểm)
a) Cú pháp của biến mảng trong ngôn ngữ Pascal : (2.0 điểm)
Var <tên biến mảng> : array[<chỉ số đầu>..<chỉ số cuối>] of<kiểu dữ liệu>;
b) Ta có thể nhập được 10 giá trị của phần tử biến mảng. (1.0 điểm)
Câu 2
(2.0 điểm)
Program tinh_tong; (0.25 điểm)
Var N, i: integer; S: Longint; (0.25 điểm)
Begin (0.25 điểm)
Write(‘Nhap so N=’); readln(N); (0.25 điểm)
S:=0; (0.25 điểm)
For i:=1 to N do
If ( i mod 3= 0) and (i mod 5 = 0) then S:= S+ i; (0.25 điểm)
Writeln(‘Tong cua cac so tu nhien trong pham vi
tu 1 den N chia het cho 3 va 5 la :’, S); (0.25 điểm)
Readln ;
End. (0.25 điểm)
MA TRẬN KIỂM TRA HỌC KÌ II NĂM HỌC 2022-2023
Môn: TIN - LỚP 8
CâNp đôO
Chủ đề
Nhận
biết Thông
hiểu
Vận
dụng Cô)ng
CâNp đôO thâNp CâNp đôO cao
TNKQ TL TNKQ TL TNKQ TL TNKQ TL
1. Bài 7. Câu
lệnh lặp.
Biết cú pháp lặp
với số lần biết
trước. Biết công
thức tính số vòng
lặp.
Hiểu được cách
xác định số vòng
lặp của bài toán.
Hiểu được các câu
lệnh trong chương
trình. Kết quả sau
khi thực hiện dòng
lệnh.
Viết chương
trình để tính
tổng các số
chia hết cho 3
và 5 trong
phạm vi từ 1
đến N
Sôz câu 2 6 8
Sôz điê{m 0.67 2.0 2.67
2. Bài 8. Lặp
với số lần chưa
biết trước.
Biết sử dụng lệnh
lặp While…do để
lặp với số lần
chưa biết trước.
Biết các hoạt động
lặp với số lần
chưa biết trước.
Điều kiện trong
câu lệnh lặp với số
lần chưa biết trước
là gì?
Sôz câu 2 1 3
Sôz điê{m 0.67 0.33 1.0
3. Bài 9. Làm
việc với dãy số.
Biết được cú pháp
của khai báo biến
mảng và cho được
ví dụ.
Hiểu được cách
nhận biết chỉ số
đầu và chỉ số cuối
của cú pháp biến
mảng.
Biết được có
thể nhập được
bao nhiêu giá trị
của phần tử
biến mảng khi
có điều kiện cho
trước
2 1 2 1 1 7
Sôz điê{m 0.67 2.0 0.67 2.0 1.0 6.3
Tổng sôN
câu
6 1 9 1 1 18
Tổng sôN điêHm 4.0 3.0 2.0 1.0 10.0
------------------ HẾT ---------------
PHÒNG GD- ĐT TX ĐIỆN BÀN
TRƯỜNG THCS LÊ NGỌC GIÁ
BẢNG ĐẶC TẢ ĐỀ
KIỂM TRA HỌC KÌ II NĂM HỌC 2022- 2023
MÔN TIN HỌC- LỚP 8
PHẦN CÂU NÔOI DUNG
CANC
MƯNC
ĐÔO
ĐIÊHM
I.Phần trắc
nghiệm
(5.0 điểm)
Câu 1 Cách khai báo biến mảng NB 0.33
Câu 2 Xác định số vòng lặp cho bài toán: tính tổng các số nguyên
từ 1 đến 88
TH 0.33
Câu 3 Pascal sử dụng câu để lặp với số lần chưa biết trước NB 0.33
Câu 4 Trong câu lệnh khai báo biến mảng kiểu dữ liệu thể
integer hoặc real.
NB 0.33
Câu 5 Câu lệnh lặp với số lần chưa biết trước hợp lệ TH 0.33
Câu 6 Câu lệnh lặp với số lần biết trước hợp lệ TH 0.33
Câu 7 Trong câu lệnh lặp: For i := 1 to 10 do j:= j + 2; write( j );
được thực hiện bao nhiêu lần lặp?
TH 0.33
Câu 8 Cú pháp câu lệnh lặp với số lần biết trước NB 0.33
Câu 9 Điều kiện trong câu lệnh lặp với số lần chưa biết trước TH 0.33
Câu 10 Khi kết thúc đoạn chương trình giá tri của một biến S
trong đoạn đó được thực hiện bao nhiêu lần?
TH 0.33
Câu 11 Khai báo biến mảng, giá trị đầu và giá trị cuối như thế nào? TH 0.33
Câu 12 Công thức tính số vòng lặp NB 0.33
Câu 13 Hoạt động lặp với số lần chưa biết trước NB 0.33
Câu 14 Cho biết số vòng lặp với câu lệnh for…do đã cho TH 0.33
Câu 15 Vòng lặp While – do kết thúc khi nào? TH 0.33
II.Phần tự
luận
(5.0 điểm)
Câu 1 Cú pháp của biến mảng và cho ví dụ minh hoạ NB 2.0
Có thể nhập bao nhiêu giá trị của phần tử biến mảng khi có
điều kiện cho trước.
VDC 1.0
Câu 2 Viết chương trình Pascal để thực hiện theo yêu cầu VDT 2.0
------------------ HẾT ----------------