ĐỀ KIỂM TRA LÝ THUYẾT HỌC KÌ II

Trường THCS Võ Trường Toản Họ và tên: ………………………. Lớp:……

Môn: TIN HỌC LỚP 8 Thời gian: 45 phút Năm học: 2021 – 2022

Điểm

Nhận xét của Thầy (Cô) giáo

I. Trắc nghiệm: (5đ) Chọn đáp án đúng và điền vào bảng sau: (mỗi câu đúng 0.5 điểm)

Câu 1 Câu 2 Câu 3 Câu 4 Câu 5 Câu 6 Câu 7 Câu 8 Câu 9 Câu 10

Câu 1:

Cấu trúc của vòng lặp với số lần biết trước là : A. For := < giá trị đầu> to do ; B. For := < giá trị cuối> to do ; C. For = < giá trị cuối> downto do ; D. For := < giá trị đầu> downto do ; Câu 2: Trong Pascal, câu lệnh nào sau đây được viết đúng?

A. for i:= 4 to 1 do writeln(‘A’); C. for i:= 1 to 10 writeln(‘A’); B. for i:= 1 to 10 do writeln(‘A’); D. for i to 10 do writeln(‘A’); Câu 3: Trong câu lệnh lặp: For i := 1 to 10 do j:= j + 2; write( j );

Khi kết thúc câu lệnh lặp trên, câu lệnh được lặp 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 4: Hoạt động nào sau đây lặp với số lần lặp chưa biết trước?

B. Một tuần đi nhà sách 1 lần D. Ngày đánh răng 2 lần Câu 5:

A. Ngày tắm 2 lần C. Học bài cho đến khi thuộc bài Cấu trúc của vòng lặp WHILE .. DO có dạng: A. While <điều kiện1> do < điều kiện2>; B. While <điều kiện> do ; C. While do <điều kiện>; D. While do ;

Câu 6. Câu lệnh nào sau đây đúng?

A. X= 10; While X:=10 do X:=X+5; C. X= 10; While X=10 do X:=X+5; B. X:= 10; While X:=10 do X=X+5; D. X:= 10; While X:=10 do X:=X+5;

Câu 7. Khi thực hiện đoạn chương trình sau:

S:=0; i:=0;

While (i<5) do begin S:=S+1; i:=i+1; end; Hãy cho biết giá trị của biến S bằng bao nhiêu? B. 9 A. 11 C. 8 D. 10

Câu 8: Trong Pascal, cách khai báo mảng đúng là:

A. Var : Array[.. ] of ; B. Var : Array[: ] of ; C. Var : Array[.. ] : ; D. Var : Array[, ] of ;

Câu 9. Trong câu lệnh khai báo biến mảng, phát biểu nào sau đây đúng:

chỉ số cuối.

A. Chỉ số đầu và chỉ số cuối là 2 số nguyên. C. Kiểu dữ liệu có thể là integer hoặc real. B. Chỉ số đầu (cid:0) D. Cả ba ý trên.

Câu 10: Câu lệnh nào là câu lệnh nhập dữ liệu cho phần tử thứ 10 của biến mảng A? A. Readln(A[10]); B. Readln(A[k]); C. Readln(A[i]); D. Readln(A10);

B. TỰ LUẬN: (5đ) Câu 1: (1 điểm) Cho đoạn chương trình, hãy tính số lần lặp của câu lệnh sau: For i:= 3 to 25 do Writeln(A);

...................................................................................................................................................... ...................................................................................................................................................... Câu 2: (1 điểm) Các khai báo sau đây đúng hay sai? Nếu sai gạch chân chỗ sai và sửa lại cho đúng? a) For i:= 10 to 1 do write(A); ...................................................................................................................................................... ...................................................................................................................................................... b) Var A: array (1…100) of Integer; ...................................................................................................................................................... ...................................................................................................................................................... Câu 3: (0.5 điểm) Nêu quá trình hoạt động của câu lệnh lặp For ..do ? ...................................................................................................................................................... ...................................................................................................................................................... ...................................................................................................................................................... ...................................................................................................................................................... Câu 4: (1.5 điểm) Viết chương trình nhập, xuất mảng A có n phần tử? ...................................................................................................................................................... ...................................................................................................................................................... ...................................................................................................................................................... ...................................................................................................................................................... ...................................................................................................................................................... ...................................................................................................................................................... ...................................................................................................................................................... ...................................................................................................................................................... ...................................................................................................................................................... ...................................................................................................................................................... ...................................................................................................................................................... ...................................................................................................................................................... Câu 5:(1.5 điểm) Viết đoạn chương trình tìm Max của mảng A? ...................................................................................................................................................... ...................................................................................................................................................... ...................................................................................................................................................... ...................................................................................................................................................... ĐÁP ÁN

I. Trắc nghiệm (5đ) Mỗi câu đúng cho 0.5đ

Câu

1

2

3

4

5

6

7

8

9

10

Đáp án

A

B

A

C

B

D

D

A

D

A

II. Tự luận (5đ)

Câu 1: (1 điểm) Cho đoạn chương trình, hãy tính số lần lặp của câu lệnh sau:

For i:= 3 to 25 do Writeln(A); Công thức tính số lần lặp: Số lần lặp = Giá trị cuối – Giá trị đầu + 1 Vậy: Số lần lặp= 25 - 3 + 1= 23

Câu 2: (1 điểm) Các khai báo sau đây đúng hay sai? Nếu sai gạch chân chỗ sai và sửa lại cho đúng? a) For i:= 10 to 1 do write(A); Sửa: For i:= 1 to 10 do write(A); b) Var A: array (1…100) of integer; Sửa: Var A: array[1..100] of integer; Câu 3: (1 điểm) Nêu quá trình hoạt động của câu lệnh lặp For ..do ? Ban đầu biến đếm nhận giá trị đầu. Sau mỗi lần lặp, biến đếm tự động tăng lên 1 đơn vị

và câu lệnh lặp lại tới khi biến đếm bằng giá trị cuối thì kết thúc vòng lặp. Câu 4: (1.5 điểm) Viết chương trình nhập, xuất mảng A có n phần tử? Program Nhap_xuat_mang; Uses crt; Var A: array[1..100] of integer; i, n:integer; Begin

Write(‘Nhap do dai day so A’); Readln(n); Writeln(‘Nhap mang A’); For i:= 1 to n do Begin

Write(‘A[‘, i , ‘]=’); Readln(A[i]); End;

Writeln(‘Day so vua nhap la:’); For i:=1 to n do Write(A[i]);

Readln; End. Câu 5:(0.5 điểm) Viết đoạn chương trình tìm Max của mảng A?

Max:=A[1]; For i:=2 to n do

If Max