Bộ đề thi giữa học kì 2 môn Tin học lớp 8 năm 2023

Bộ đề thi giữa học kì 2 môn Tin học lớp 8 năm 2023 được biên tập bám sát chương trình SGK Tin học 8. Đề kiểm tra giữa kì 2 lớp 8 có đáp án chi tiết đi kèm. Chúc các bạn ôn thi giữa học kì 2 tốt và có kết quả học tập cao.

Đề thi giữa kì 2 Tin học 8 năm 2022 - 2023 - Đề 1

Ma trận đề thi Tin học 8 giữa kì 1

Cấp độ

Chủ đề

Nhận biết

Thông hiểu

Vận dụng

Cộng

Cấp độ thấp

Cấp độ cao

TNKQ

TL

TNKQ

TL

TNKQ

TL

TNKQ

TL

 

1. Câu lệnh lặp

- Nhận biết được khái niệm, cấu trúc, cú pháp câu lệnh lặp.

- Viết được cú pháp và nêu được hoạt động của câu lệnh lặp For..do.

- Hiểu được hoạt động của câu lệnh lặp.

- Sắp xếp được hoàn chỉnh chương trình tính tổng N số tự nhiên.

     

Số câu

Số điểm

Tỉ lệ %

4

1

10%

1

1

10%

4

1

10%

         

1

3

30%

2. Lặp với số lần chưa biết trước

Biết cấu trúc lặp với số lần chưa biết trước để chỉ dẫn cho máy tính thực hiện lặp đi lặp lại công việc đến khi một điều kiện được thỏa mãn

Hiểu được hoạt động của câu lệnh lặp với số lần chưa biết trước trong ngôn ngữ lập trình cụ thể.

- Vận dụng kiến thức đã học để viết hoàn chỉnh hoàn chỉnh chương trình từ thuật toán

   

Số câu

Số điểm

Tỉ lệ %

4

1

10%

 

4

1

10%

1

2

20%

     

1

3

30%

10

7

70%

Tổng số câu

Tổng số điểm

Tỉ lệ %

9

3

30%

9

4

40%

1

3

30%

19

10

100%

                     

Đề thi Giữa kì 2 Tin học lớp 8 năm 2022

A. TRẮC NGHIỆM: (4 điểm, mỗi câu được 0,25 điểm)

* Khoanh tròn vào chữ cái đứng trước kết quả em cho là đúng trong mỗi câu sau:

Câu 1: 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 nào?

A. Integer B. Real

C. String D. Tất cả các kiểu trên đều được

Câu 2: Hoạt động nào sau đây lặp với số lần lặp biết trước?

A. Giặt tới khi sạch

B. Học bài cho tới khi thuộc bài

C. Gọi điện tới khi có người nghe máy

D. Ngày đánh răng 2 lần

Câu 3: Vòng lặp While – do kết thúc khi nào

A. Khi một điều kiện cho trước được thỏa mãn

B. Khi đủ số vòng lặp

C. Khi tìm được Output

D. Tất cả các phương án

Câu 4: Trong câu lệnh lặp: For (<Biến đếm>):=(<Giá trị đầu>) to (<Giá trị cuối>) do (<câu lệnh>); Khi thực hiện ban đầu Biến đếm nhận giá trị = Giá trị đầu, sau mỗi vòng lặp biến đếm tăng thêm:

A. 1 đơn vị B. 2 đơn vị

C. 3 đơn vị D. 4 đơn vị

Câu 5: trong câu lệnh lặp với số lần xác định trước, <câu lệnh> được thực hiện bao nhiêu lần?

A. (<giá trị đầu> - <giá trị cuối>) lần.

B. (<giá trị cuối> - <giá trị đầu>) lần.

C. (<giá trị cuối> - <giá trị đầu> + 1) lần.

D. Khoảng 10 lần

Câu 6: Tìm giá trị S khi thực hiện đoạn chương trình sau đây

S:=0;

For i:=1 to 5 do S:= S+i;

A. S=0. B. S= 1.

C. S=10. D. S=15.

Câu 7: 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;

A. b=5. B. b=10.

C. b=15. D. B=20.

Câu 8: Lúc nào thì câu lệnh lặp While..Do sẽ dừng lại?

A. <Điều kiện> có giá trị đúng.

B. < Điều kiện> có giá trị sai.

C. Các câu lệnh bên trong < câu lệnh> đã thực hiện xong.

D. Tất cả phương án trên đều sai.

Câu 9: Chọn cú pháp câu lệnh lặp 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 10: 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 11: Cho biết câu lệnh sau Do thực hiện mấy lần trong đoạn chương trình sau:

i := 5;

While i>=1 do i := i – 1;

A. 1 lần B. 2 lần

C. 5 lần D. 6 lần

Câu 12: Hãy cho biết kết quả của đoạn chương trình dưới đây:

a:=10;While a < 11 do write (a);

A. Trên màn hình xuất hiện một số 10

B. Trên màn hình xuất hiện 10 chữ a

C. Trên màn hình xuất hiện một số 11

D. Chương trình bị lặp vô tận

Câu 13. Hãy xác định đúng sai cho các phát biểu dưới đây:

Để tính S là tổng của các bình phương của n số tự nhiên đầu tiên, đoạn chương trình Pascal sau đây tuy không hề bị lỗi cú pháp, nhưng lại không đạt được mục đích cần tính toán: S:=0; for a:=1 to n do; S:=S+a*a;

A. Đúng

B. Sai

Câu 14: 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;

A. Đúng

B. Sai

Câu 15: Mọi NNLT đều có các cách để chỉ thị cho máy tính thực hiện cấu trúc với một câu lệnh. Đó là:

A. câu lệnh rẽ nhánh

B. Cả A, B đều đúng

C. Câu lệnh lặp

D. Cả A, B đều sai

Câu 16: Trong nhiều trường hợp, thời gian việc thực hiện câu lệnh lặp while...do như thế nào so với câu lệnh lặp for...do?

A. Tốn nhiều thời gian hơn

B. Tốn ít thời gian hơn

C. Tốn thời gian bằng nhau

D. Tất cả đều sai

B. TỰ LUẬN (6.0 điểm)

Câu 17 (3.0đ): Em hãy cho biết thuật toán máy tính sẽ thực hiện bao nhiêu vòng lặp? Kết thúc giá trị của S bằng bao nhiêu? Viết chương trình bằng Pascal để mô tả thuật toán đó.

B1: S ! 0, n ! 2;

B2: Nếu S≥5, chuyển B4.

B3: S ! S + n và quay lại B2.

B4: Thông báo S và kết thúc thuật toán.

Câu 18 (1.0đ): Cho đoạn chương trình: j:= 2;

For i:= 1 to 4 do j:= j + 2;

Sau khi thực hiện đoạn chương trình trên, giá trị của biến j bằng bao nhiêu? Giải thích?

Câu 19: (2.0 đ) Cho chương trình

Program Tong;

Write(‘ Nhap n:’); Readln(n);

S:=0;

For i:=1 to n do S:=S+i;

Write(‘S=’,S);

Readln

End.

Em hãy chạy chương trình và kiểm tra kết quả với những bộ thử sau:

n

S

n= 4

S=……………

n=30

S=……….

n=50

S=……….

n=100

S=……….

Đáp án đề thi Tin học 8 năm 2022 - 2023

A. TRẮC NGHIỆM: (4 điểm, mỗi câu được 0,25 điểm)

Câu

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

Đáp án

A

D

A

A

C

D

C

B

A

B

C

A

A

A

C

B

B. TỰ LUẬN (6 điểm)

Câu

Đáp án

Điểm

17

(3đ)

- Số vòng lặp là 3, giá trị của S = 6;

- Chương trình mẫu

Program bai17;

Var s,n:integer;

Begin

S:=0; n:=2;

While s < 5 Do

S:= S + n;

Writeln(‘Gia tri cua s la’,s);

Readln;

End.

0,5

0,5

0,5

0,5

0,5

0,5

18

(1đ)

i:=1; 1<=4 đúng, thực hiện câu lệnh tức j:=2+2=4.

i:=2; 2<=4 đúng, thực hiện câu lệnh tức j:=4+2=6.

i:=3; 3<=4 đúng, thực hiện câu lệnh tức j:=6+2=8.

i:=4; 4=4 (bằng giá trị cuối) đúng, thực hiện câu lệnh tức j:=8+2=10.

Vậy sau khi thực hiện đoạn chương trình trên giá trị của biến j = 10.

0,25

0,25

0,25

0,25

19

(2đ)

n

S

n= 4

S=10

n=30

S=465

n=50

S=1275

n=100

S=5050

0,5

0,5

0,5

0,5

Đề thi Tin học 8 giữa kì 2 số 2

Ma trận đề thi giữa học kì 2 lớp 8 môn Tin học

Cấp độ

Tên

chủ đề

Nhận biết

Thông hiểu

Vận dụng

Cộng

Cấp độ thấp

Cấp độ cao

TNKQ

TL

TNKQ

TL

TNKQ

TL

TNKQ

TL

Câu lệnh lặp For..to..do

- Biết được cú pháp câu lệnh lặp và khai báo biến trong chương trình.

Viết được cú pháp và nêu được hoạt động của câu lệnh lặp For..do.

- Hiểu được hoạt động của câu lệnh lặp.

- Sắp xếp được hoàn chỉnh chương trình tính tổng N số tự nhiên.

 

 

 

 

 

Số câu

Số điểm

Tỷ lệ %

2

0,5

5%

1

2

20%

2

0,5

5%

1

3

30%

 

 

 

 

6

6

50%

Lặp với số lần chưa biết trước While..do

Biết cấu trúc lặp với số lần chưa biết trước để chỉ dẫn cho máy tính thực hiện lặp đi lặp lại công việc đến khi một điều kiện được thỏa mãn

Hiểu được hoạt động của câu lệnh lặp với số lần chưa biết trước trong ngôn ngữ lập trình cụ thể.

- Vận dụng kiến thức đã học để viết hoàn chỉnh hoàn chỉnh chương trình từ thuật toán

 

 

 

Số câu

Số điểm

Tỷ lệ %

2

0,5

5%

 

2

0,5

5%

 

 

1

3

40%

 

 

5

4

50%

T. số câu

T.điểm

Tỷ lệ %

4

1

10%

1

2

20%

4

1

10%

1

3

30%

 

1

3

30%

 

 

11

10

100%

Đề thi giữa học kì 2 môn Tin học lớp 8

A. Trắc nghiệm (2 điểm)

Khoanh tròn vào chữ cái đầu em cho là đúng

Câu 1: Trong ngôn ngữ lập trình Pascal, câu lệnh lặp với số lần chưa biết trước là:

A. If (Điều kiện) then (Câu lệnh);

B. Var i,n: Integer;

C. While (điều kiện) do (câu lệnh);

D. For (Biến đếm):=(Giá trị đầu) downto (Giá trị cuối) do (câu lệnh);

Câu 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); Khi thực hiện ban đầu Biến đếm nhận giá trị = Giá trị đầu, sau mỗi vòng lặp biến đếm tăng thêm:

A. 1 đơn vị

B. 2 đơn vị

C. 3 đơn vị

D. 4 đơn vị

Câu 3: Đâu là hoạt động lặp với số lần chưa biết trước?

A. Hàng ngày em đi học.

B. Một tuần trường em tổ chức chào cờ 1 lần.

C. Ngày em đánh răng ba lần

D. Em sẽ đến nhà bà ngoại chơi vào hôm cả bố và mẹ đi vắng.

Câu 4: Câu lệnh pascal nào sau đây là hợp lệ?

A. For i=1 to 10 do writeln(‘A’)

B. For i : = 1 to 10 do writeln(‘A’);

C. For i:=5 to 30 do; writeln(‘A’)

D. For i:= 10 to 1 do writeln(‘A’);

Câu 5: Trong các câu lệnh lặp Pascal sau đây, câu nào đúng

A. While i= 1 do T:=10;

B. While (n mod i <> 0) ; do i:= i+ 1 ;

C. While 1 = 1; do Writeln (‘Dung’);

D. While x<=y do; Writeln (‘y khong nho hon x’);

Câu 6: Sau khi thực hiện đoạn chương trình sau, giá trị của biến a bằng bao nhiêu? a:=0 ; for i:= 1 to 3 do a:= a+i;

A. 3

B. 4

C. 6

D. 2

Câu 7: 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 (nói cách khác, bao nhiêu vòng lặp được thực hiện?)

A. Không lần nào

B. 1 lần

C. 10 lần

D. 2 lần

Câu 8: Trong ngôn ngữ Pascal, đoạn chương trình sau thực hiện bao nhiêu vòng lặp?

S:=2; n:=0; While s<=10 do Begin n:=n+1; s:= s+ n end;

A. 3 lần

B. 4 lần

C. 5 lần

D. 6 lần

B. Tự luận (8 điểm)

Câu 1 (2đ): Em cho biết cú pháp câu lệnh lặp For...do và hoạt động của câu lệnh lặp

Câu 2: (3đ) Em hãy sắp xếp chương trình tính tổng N số tự nhiên sau cho phù hợp?

Var N, i: integer;

Write(‘Nhap so N=’); s:=0;

S: Longint; readln(n);

For i:=1 to n do

Begin

Program tinh_tong;

S:=s+i;

Writeln(‘Tong cua ‘, N, ‘ So tu nhien dau tien s=’, s);

End.

Readln

Câu 3:(3đ) Em hãy cho biết thuật toán máy tính sẽ thực hiện bao nhiêu vòng lặp? Kết thúc giá trị của S bằng bao nhiêu? Viết chương trình bằng Pascal để mô tả thuật toán đó.

B1: S ! 20, n! 1;

B2: Nếu S ≥ 5, chuyển B4.

B3: n ! N + 1, S ! S - n và quay lại B2.

B4: Thông báo S và kết thúc thuật toán.

Đáp án đề thi giữa kì 2 môn Tin học 8

I. Trắc nghiệm khách quan (2 điểm)

Câu 1 2 3 4 5 6 7 8
Đáp án C A D B A C C B
Điểm 0,25 0,25 0,25 0,25 0,25 0,25 0,25 0,25

2. Tự luận (8 điểm)

Câu hỏi

Đáp án

Điểm

Câu 1

- Cú pháp:

For <biến đếm>:=<Giá trị đầu> To <Giá trị cuối> Do <Câu lệnh>;

- Hoạt động:

B1: Biến đếm được gán bằng giá trị đầu.

B2: Nếu biến đếm <= giá trị cuối thì thực hiện câu lệnh sau đó tăng biến đếm lên một đơn vị và thực hiện tiếp. Nếu biến đếm > GTC thì thoát khỏi vòng lặp FOR.

 

1

 

 

1

 

 

Câu 2

Sắp xếp chương trình tính tổng

Program tinh_tong;

Var N, i: integer;

S: Longint;

Begin

Write(‘Nhap so N=’); readln(n);

s:=0;

For i:=1 to n do S:=s+i;

Writeln(‘Tong cua ‘, N, ‘ So tu nhien dau tien s=’, s);

Readln

End.

 

 

0,5

 

 

0,5

 

1

 

1

Câu 3

- Số vòng lặp là 5, giá trị của S = 0;

- Chương trình mẫu

Program bai3;

Var s,n:integer;

Begin

S:=20; n:=1;

While s < 5 Do

Begin

N:=n +1; S:= S - n;

End;

Writeln(‘Gia tri cua s la’,s);

Readln;

End.

Đề thi giữa học kì 2 lớp 8 môn Tin học - Đề 3

I. PHẦN TRẮC NGHIỆM (5 điểm)

Câu 1: 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 cho đến khi mệt

Câu 2: 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 3: Chương trình Pascal sau đây thực hiện hoạt động nào?

var i: integer;

begin

for i =1 to 101 do;

end.

A. Chương trình chạy biến i từ 1 đến 101.

B. Chương trình chạy biến i từ 1 đến 100.

C. Chương trình chạy biến i từ 1 đến 101 rồi không làm gì cả.

D. Kết quả khác.

Câu 4: Cho S và i là biến nguyên. Khi chạy đoạn chương trình:

s:=0;

for i:=1 to 3 do s := s+2*i;

writeln(s);

Kết quả in lên màn hình là:

A. 12

B. 10

C. 0

D. 6

Câu 5: 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+i;

Kết quả in lên màn hình là của s là :

A. 15

B. 16

C. 11

D. 22

Câu 6: Hãy đọc đoạn chương trình sau:

s:= 1;

for i:= 1 to 5 do s := s + 1;

Sau khi thực hiện xong, kết quả s bằng:

A. 10

B. 6

C. 7

D. 5

Câu 7: Sau khi thực hiện đoạn chương trình Pascal :

X:=3;

For i := 1 to 3 do x := x – 1;

X sẽ nhận được giá trị nào dưới đây?

A. 0;

B. 1 ;

C. -4 ;

D. – 1;

Câu 8: Đ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 9: Sau khi thực hiện đoạn chương trình sau, giá trị của biến k bằng bao nhiêu?

k: = 0;

For i:= 1 to 3 do k:= k + 3;

A. 9

B. 8

C. 5

D. 2

Câu 10: Hãy đọc đoạn chương trình sau:

s:=1;

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ẦN TỰ LUẬN (5 điểm)

Viết chương trình tính tổng các số tự nhiên trong phạm vi từ 1 đến 20.

Thông báo kết quả ra màn hình?

Đáp án

I. PHẦN TRẮC NGHIỆM (5 điểm)

Câu

1

2

3

4

5

6

7

8

9

10

Đáp án

C

A

D

A

A

B

A

D

A

D

II. PHẦN TỰ LUẬN (5 điểm)

Đề kiểm tra Giữa học kì 2 Tin học lớp 8 có đáp án (Đề 4) De Kiem Tra 45 Phut Tin Hoc 8 Hoc Ki 2 Lan 1 4

---------------------

Ngoài Bộ đề thi giữa học kì 2 môn Tin học lớp 8, mời các bạn học sinh tham khảo thêm các đề thi giữa học kì 2 lớp 8, đề thi học kì 2 lớp 8 các môn Văn 8, Anh lớp 8,... mà chúng tôi đã sưu tầm và chọn lọc. Với đề thi giữa học kì 2 lớp 8 này giúp các bạn rèn luyện thêm kỹ năng giải đề và làm bài tốt hơn. Chúc các bạn ôn thi tốt!

Đánh giá bài viết
7 21.279
1 Bình luận
Sắp xếp theo
  • Quỳnh Như Đặng
    Quỳnh Như Đặng

    GTC là gì vậy ạ??


    Thích Phản hồi 18:41 12/04
    • Mẫn Nghi Trần
      Mẫn Nghi Trần

      là giá trị cuối nha


      Thích Phản hồi 04:47 13/04
    • Ngoc Linh Tran
      Ngoc Linh Tran

      GTC là giá trị cuối 

      Thích Phản hồi 19:52 14/03

Đề thi giữa kì 2 lớp 8

Xem thêm