Đề thi Tin học 8 Học kì 2 có đáp án (4 đề)

Đề thi Tin học 8 Học kì 2 có đáp án (4 đề)

Bộ đề tổng hợp Đề thi Tin học 8 Học kì 2 có đáp án (4 đề), cực sát đề chính thức. Hi vọng bộ đề thi này sẽ giúp bạn ôn luyện & đạt điểm cao trong các bài thi Tin học 8.

Quảng cáo

Phòng Giáo dục và Đào tạo .....

Đề thi Học kì 2

Năm học 2022 - 2023

Bài thi môn: Tin học lớp 8

Thời gian làm bài: phút

(Đề thi số 1)

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

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..100) of real;

B. Var A : array[1..100] of real;

C. Var A := array[1..100] of real;

D. Var A = array[1..100] of real;

Câu 2: Cho đoạn chương trình Pascal sau đây:

tong:= 0;

While tong<= 10 do

tong:=tong+1;

Quảng cáo

Sau khi đoạn chương trình trên được thực hiện, giá trị của tổng bằng bao nhiêu:

A. 9     B. 10     C. 11    D. 12

Câu 3: Sau khi đoạn chương trình sau được thực hiện, giá trị của biến S bằng bao nhiêu:

S:= 0;

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

A. 10     B. 12     C. 20     D. 15

Câu 4: cho đoạn chương trình sau:

i:=1; tong:=0;

While i <= 5 do

Begin

tong:= tong + i;

i:= i + 1;

End;

Sau đoạn chương trình trên em hãy cho biết biến “tong” có giá trị bằng bao nhiêu?

A.1     B.5     C.10     D.15

Quảng cáo

Câu 5: Trong Pascal, câu lệnh nào sau đây được viết đúng?

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

B. for i := 1.5 to 5.5 do writeln(‘A’);

C. for i := 1 to 100 do writeln(‘A’);

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

Câu 6: Trong câu lệnh lặp: for n:= 1 to 10 do begin ... end;

Câu lệnh ghép được thực hiện bao nhiêu lần?

A. 10 lần;     B. 5 lần;     C. Không lần nào;     D. 1 lần.

Câu 7: Khi giải thích các thành phần trong câu lệnh lặp, phát biểu nào sau đây đúng?

A. For, to, do là các từ khóa, biến đếm là biến kiểu số nguyên hoặc số thực.

B. Giá trị đầu và giá trị cuối là các giá trị nguyên hoặc giá trị thực.

C. Câu lệnh lặp sẽ thực hiện câu lệnh nhiều lần, mỗi lần là một vòng lặp. Số lần lặp là biết trước và bằng giá trị cuối – giá trị đầu + 1.

D. Cả ba ý trên.

Câu 8: Khai báo biến mảng: A : array[1..7] of real;. Sử dụng câu lệnh For i:= 1 to 5 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ị?

A. 4;    B. 5;     C. 6;    D. 7.

Quảng cáo

Câu 9: 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ố nguyên;

B. Chỉ số đầu nhỏ hơn chỉ số cuối;

C. Kiểu dữ liệu có thể là integer hoặc real;

D. Cả ba ý trên;

Câu 10: Giả sử biến mảng A có 5 phần tử và giá trị của các phần tử lần lượt là 1, 4, 7, 2, 6. Khi thực hiện câu lệnh sau:

tb:= 0;

For i:= 1 to 5 do tb := tb + A[i];

Giá trị của biến tb là bao nhiêu?

A. 20;    B. 18;     C. 21;     D. 22;

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

Viết chương trình sử dụng biến mảng để nhập từ bàn phím các phần tử của một dãy số nguyên. Độ dài của dãy cũng được nhập từ bàn phím.

In ra màn hình tổng các giá trị là số lẻ.

Đáp án & Thang điểm

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

Câu

1

2

3

4

5

6

7

8

9

10

Đáp án

B

C

D

D

C

A

C

B

D

A

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

Đề thi Học kì 2 Tin học 8 có đáp án (Đề 1) Đề thi Học kì 2 Tin học 8 có đáp án (Đề 1)

Phòng Giáo dục và Đào tạo .....

Đề thi Học kì 2

Năm học 2022 - 2023

Bài thi môn: Tin học lớp 8

Thời gian làm bài: phút

(Đề thi số 2)

Đề thi Tin học 8 Học kì 2 có đáp án (4 đề)

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

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: Cho đoạn chương trình Pascal sau đây:

tong:= 20;

While tong>= 10 do

tong:=tong - 1;

Sau khi đoạn chương trình trên được thực hiện, giá trị của tổng bằng bao nhiêu:

A. 19     B. 9     C. 21     D. 10

Câu 3: Sau khi đoạn chương trình sau được thực hiện, giá trị của biến S bằng bao nhiêu:

S:= 0;

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

A. 5     B. 10     C. 15     D. 20

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

n:= 1; T:= 50;

While n>20 do

begin

n:=n+5;

T:=T - n

end;

Hãy cho biết giá trị của biến T bằng bao nhiêu?

A. 14     B. 17     C. 16     D. 50

Câu 5: Khai báo biến mảng: A : array[1..7] of real ; . Sử dụng câu lệnh For i := 1 to 5 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ị?

A. 4    B. 5     C. 6     D. 7

Câu 6: Giả sử biến mảng A có 5 phần tử và giá trị của các phần tử lần lượt là 1, 4, 7, 2, 6. Khi thực hiện câu lệnh sau: tb := 0; For i := 1 to 5 do tb := tb + A[i]; Giá trị của biến tb là bao nhiêu?

A. 20    B. 18     C. 21     D. 22

Câu 7: Em hiểu câu lệnh lặp theo nghĩa nào dưới đây?

A. Một lệnh thay cho nhiều lệnh.

B. Các câu lệnh được viết lặp đi lặp lại nhiều lần.

C. Vì câu lệnh đã có tên là lệnh lặp.

D. Cả a, b, c đều sai.

Câu 8: Cho đoạn chương trình sau:

n:=1;

While n<10 do

Begin

n:=n+1;

Writeln(‘ xin chao’);

end;

Khi thực hiện chương trình câu “ xin chao” được viết ra màn hình mấy lần?

A. 0     B.10     C. 9     D. Vòng lặp vô tận.

Câu 9: Cách viết câu lệnh lặp với số lần biết trước như sau:

A. For <biến đếm> = <giá trị đầu> to <giá trị cuối> do <câu lệnh>;

B. For <biến đếm>: = <gía 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ị cuối> to <giá trị đầu> do <câu lệnh>

Câu 10: Cho đoạn chương trình: j := 0; k := 2;

For i := 1 to 5 do j := j + 2; k := k + j;

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

A. 12;     B. 22;     C. 32;     D. 42.

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

Viết chương trình sử dụng biến mảng để nhập từ bàn phím các phần tử của một dãy số nguyên. Độ dài của dãy cũng được nhập từ bàn phím.

In ra màn hình tổng các giá trị là số chẵn.

Đáp án & Thang điểm

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

Câu

1

2

3

4

5

6

7

8

9

10

Đáp án

D

B

A

D

B

A

B

C

C

A

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

Nội dung trả lời Điểm

Program Tong_Chan;

uses crt;

var i, n, Tong: integer;

A : array[1..100] of integer;

0.5

0.5

Begin

clrscr;

writeln(‘Nhap do dai cua day so, N=’);

readln(n);

0.5

writeln(‘Nhap cac phan tu cua day so:’);

For i:=1 to n do

0.5

Begin

write(‘a[‘,i,’]=’);

readln(a[i]);

End;

0.5

Tong:=0;

For i:=1 to n do

if a[i] mod 2 = 0 then

Tong:= Tong+a[i];

0.5

0.5

0.5

0.5

writeln(‘Tong cac gia tri chan la:’,Tong);

readln

End.

0.5

Phòng Giáo dục và Đào tạo .....

Đề thi Học kì 2

Năm học 2022 - 2023

Bài thi môn: Tin học lớp 8

Thời gian làm bài: phút

(Đề thi số 3)

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

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..100] of integer

B. Var A:=array[1..100] of integer;

C. Var A: array[1..100] of integer;

D. Var A: array(1..100) of integer;

Câu 2: Cho đoạn chương trình Pascal sau đây:

tong:= 0;

While tong < 10 do

tong:=tong+1;

Sau khi đoạn chương trình trên được thực hiện, giá trị của tổng bằng bao nhiêu:

A. 9     B. 10     C. 11     D. 12

Câu 3: Sau khi đoạn chương trình sau được thực hiện, giá trị của biến S bằng bao nhiêu:

S:= 10;

for i:= 1 to 2 do S:= S - i;

A. 5     B. 10     C. 15     D. 7

Câu 4: 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 Câu 5: 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 write( j ); được thực hiện bao nhiêu lần?

A. 10 lần     B. 1 lần    C. 5 lần     D. Không thực hiện.

Câu 6: Cho đoạn chương trình: J:= 0; For i:= 1 to 5 do J:= J + i; 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?

A. 12     B. 22     C. 15     D. 42.

Câu 7: Trong Pascal, câu lệnh nào sau đây là đúng?

A. S:=1;

B. S:=2; While S<10 do write(S);

C. n:=2 while n<5 do write(‘A’);

D. Cả A và B.

Câu 8: Cho đoạn chương trình:

J:= 0;

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

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?

A. 2     B. 3    C. 4    D. 5

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

n:=1; T:=14;

While n>20 do

begin

n:=n+5;

T:=T – n;

end;

Hãy cho biết giá trị của biến T bằng bao nhiêu?

A. 14     B. 15    C. 16     D. 17

Câu 10: Giả sử biến mảng A có 5 phần tử và giá trị của các phần tử lần lượt là 1, 4, 7, 2, 6. Khi thực hiện câu lệnh sau:

tb:= 0;

For i:= 1 to 5 do tb := tb + A[i];

Giá trị của biến tb là bao nhiêu?

A. 20;     B. 18;     C. 21;     D. 22;

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

Viết chương trình sử dụng biến mảng để nhập từ bàn phím các phần tử của một dãy số nguyên. Độ dài của dãy cũng được nhập từ bàn phím.

In ra màn hình có bao nhiêu giá trị là số lẻ.

Đáp án & Thang điểm

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

B

D

C

B

C

D

D

A

A

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

Nội dung trả lời Điểm

Program Dem_Le;

uses crt;

var i, n, Dem: integer;

A : array[1..100] of integer;

0.5

0.5

Begin

clrscr;

writeln(‘Nhap do dai cua day so, N=’);

readln(n);

0.5

writeln(‘Nhap cac phan tu cua day so:’);

For i:=1 to n do

0.5

Begin

write(‘a[‘,i,’]=’);

readln(a[i]);

End;

0.5

Begin

write(‘a[‘,i,’]=’);

readln(a[i]);

End;

Dem:=0;

For i:=1 to n do

if a[i] mod 2 = 1 then

Dem:= Dem+1;

0.5

0.5

0.5

0.5

writeln(‘Co ’,Dem,’ so le’);

readln

End.

0.5

Phòng Giáo dục và Đào tạo .....

Đề thi Học kì 2

Năm học 2022 - 2023

Bài thi môn: Tin học lớp 8

Thời gian làm bài: phút

(Đề thi số 4)

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

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..100] of integer;

B. Var A:array(1..100) of integer;

C. Var A:= array[1..100] of integer;

D. Var A: array[1..100] of integer

Câu 2: Cho đoạn chương trình Pascal sau đây:

tong:= 20;

While tong > 10 do

tong:=tong-1;

Sau khi đoạn chương trình trên được thực hiện, giá trị của tổng bằng bao nhiêu:

A. 9     B. 10     C. 11     D. 12

Câu 3: Sau khi đoạn chương trình sau được thực hiện, giá trị của biến S bằng bao nhiêu:

S:= 10;

for i:= 1 to 5 do S:= S - 1;

A. 7     B. 10     C. 15     D. 5

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

n:=1; T:=17;

While n>20 do

begin

n:=n+5;

T:=T - n

end;

Hãy cho biết giá trị của biến T bằng bao nhiêu?

A. 14     B. 15     C. 16     D. 17

Câu 5: Khai báo biến mảng: A : array[1..7] of real;. Sử dụng câu lệnh For i:= 1 to 5 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ị?

A. 4     B. 5     C. 6     D. 7

Câu 6: 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ố nguyên.

B. Chỉ số đầu nhỏ hơn chỉ số cuối.

C. Kiểu dữ liệu có thể là integer hoặc real.

D. Cả ba ý trên.

Câu 7: Giả sử biến mảng A có 5 phần tử và giá trị của các phần tử lần lượt là 1, 4, 7, 2, 6. Khi thực hiện câu lệnh sau: tb:= 0; For i:= 1 to 5 do tb := tb + A[i]; Giá trị của biến tb là bao nhiêu?

A. 20     B. 18     C. 21     D. 22

Câu 8: Cho biết giá trị của biến x và y sau khi thực hiện đoạn chương trình sau: (1 điểm)

X:= 0; Y:= 3;

For i:= 1 to 4 do

X:= X + Y;

A. 11     B. 12     C. 13     D. 14

Câu 9: Em hiểu câu lệnh lặp theo nghĩa nào dưới đây?

A. Một lệnh thay cho nhiều lệnh.

B. Vì câu lệnh đã có tên là lệnh lặp.

C. Các câu lệnh được viết lặp đi lặp lại nhiều lần.

D. Cả a, b, c đều sai.

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

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

Viết chương trình sử dụng biến mảng để nhập từ bàn phím các phần tử của một dãy số nguyên. Độ dài của dãy cũng được nhập từ bàn phím.

In ra màn hình có bao nhiêu giá trị là số chẵn.

Đáp án & Thang điểm

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

Câu

1

2

3

4

5

6

7

8

9

10

Đáp án

A

B

D

D

B

D

A

B

C

C

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

Nội dung trả lời Điểm

Program Dem_Chan;

uses crt;

var i, n, Dem: integer;

A : array[1..100] of integer;

0.5

0.5

Begin

clrscr;

writeln(‘Nhap do dai cua day so, N=’);

readln(n);

0.5

writeln(‘Nhap cac phan tu cua day so:’);

For i:=1 to n do

0.5

Begin

write(‘a[‘,i,’]=’);

readln(a[i]);

End;

0.5

Dem:=0;

For i:=1 to n do

if a[i] mod 2 = 0 then

Dem:= Dem+1;

0.5

0.5

0.5

0.5

writeln(‘Co ’,Dem,’ so chan’);

readln

End.

0.5

Xem thêm các đề thi Tin học lớp 8 năm học 2022 - 2023 chọn lọc, có đáp án hay khác:

Ngân hàng trắc nghiệm lớp 8 tại khoahoc.vietjack.com

CHỈ TỪ 250K 1 BỘ TÀI LIỆU GIÁO ÁN, ĐỀ THI, KHÓA HỌC BẤT KÌ, VIETJACK HỖ TRỢ DỊCH COVID

Bộ giáo án, đề thi, bài giảng powerpoint, khóa học dành cho các thầy cô và học sinh lớp 8, đẩy đủ các bộ sách cánh diều, kết nối tri thức, chân trời sáng tạo tại https://tailieugiaovien.com.vn/ . Hỗ trợ zalo VietJack Official

Đã có app VietJack trên điện thoại, giải bài tập SGK, SBT Soạn văn, Văn mẫu, Thi online, Bài giảng....miễn phí. Tải ngay ứng dụng trên Android và iOS.

Nhóm học tập facebook miễn phí cho teen 2k8: fb.com/groups/hoctap2k8/

Theo dõi chúng tôi miễn phí trên mạng xã hội facebook và youtube:

Bộ đề thi các môn học lớp 8 năm học 2022 - 2023 Học kì 1, Học kì 2 của chúng tôi được biên soạn và sưu tầm từ đề thi khối lớp 8 của các trường THCS trên cả nước.

Nếu thấy hay, hãy động viên và chia sẻ nhé! Các bình luận không phù hợp với nội quy bình luận trang web sẽ bị cấm bình luận vĩnh viễn.