Để giúp các bạn học sinh củng cố lại phần kiến thức đã học, biết cấu trúc ra đề kiểm tra như thế nào và xem bản thân mình mất bao nhiêu thời gian để hoàn thành đề kiểm tra này. Mời các bạn cùng tham khảo Bộ đề kiểm tra 1 tiết HK2 môn Tin học lớp 8 có đáp án dưới đây để có thêm tài liệu ôn kiểm tra.
Trang 1BỘ ĐỀ KIỂM TRA 1 TIẾT HK2
MÔN TIN HỌC LỚP 8
CÓ ĐÁP ÁN
Trang 2MỤC LỤC
1 Đề kiểm tra 1 tiết HK2 môn Tin học lớp 8 có đáp án – Đề số 1
2 Đề kiểm tra 1 tiết HK2 môn Tin học lớp 8 có đáp án – Đề số 2
3 Đề kiểm tra 1 tiết HK2 môn Tin học lớp 8 có đáp án – Đề số 3
4 Đề kiểm tra 1 tiết HK2 môn Tin học lớp 8 có đáp án – Đề số 4
5 Đề kiểm tra 1 tiết HK2 môn Tin học lớp 8 có đáp án – Đề số 5
Trang 3ĐỀ SỐ 1
PHÒNG GD&ĐT ………
TRƯỜNG THCS …………
(Đề thi có 02 trang)
ĐỀ KIỂM TRA GIỮA KÌ 2 NĂM 2020 - 2021
MÔN TIN HỌC – Khối lớp 8
Thời gian làm bài : 45 phút
(không kể thời gian phát đề)
11.A
Câu
1.B
Câu 8.A Câu 10.A
Trang 4Đề bài:
A PHẦN TRẮC NGHIỆM: (6 điểm) Khoanh tròn vào đáp án đúng:
Câu 1: Câu lệnh viết đúng cú pháp là:
A While <điều kiện> to <câu lệnh>; B While <điều kiện> do <câu lệnh>;
C While <điều kiện> to <câu lệnh1> do; D While <điều kiện>; do <câu
lệnh>;
Câu 2: Cú pháp của câu lệnh lặp for … do … là ?
A If (điều kiện) then (câu lệnh);
B Var n, i:interger;
C Phải kết hợp cả a, b và c
D For <biến đếm>:=<giá trị đầu> to <giá trị cuối> do <câu lệnh>;
Câu 3: Hoạt động nào sau đây có thể tính toán được số lần làm việc:
A Múc từng gáo nước đến đầy bể B Đi lên tầng, đến tầng 10 thì dừng
C Học cho tới khi thuộc bài D Nhặt từng cọng rau cho tới khi xong
Câu 4: Vòng lặp while do là vòng lặp:
A Biết trước số lần lặp B Biết trước số lần lặp nhưng giới hạn là <=100
C Chưa biết trước số lần lặp D Biết trước số lần lặp nhưng giới hạn là >=10
Câu 5: Trong ngôn ngữ Pascal, đoạn chương trình sau đưa ra màn hình kết quả gì?
For i:=1 to 10 do write (i,’ ‘);
A 1 2 3 4 5 6 7 8 9 10 B 10 9 8 7 6 5 4 3 2 1
C Đưa ra 10 dấu cách D Không đưa ra kết quả gì
Câu 6: Bạn An ăn sang mỗi ngày?
A Lặp với số lần biết trước B Lặp với số lần chưa biết trước
C Không có hoạt động lặp D Đáp án khác
Câu 7: Các câu lệnh Pascal nào sau đây 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’);
Câu 8: Câu lệnh Pascal : While (4*5>=20) do Writeln (4*5); sẽ :
Trang 5A In ra vô hạn các số 1, mỗi số trên một dòng; B Không phương án nào đúng
Câu 2: Đoạn chương trình (2đ)
Write(‘ Nhap vao so cau hoi:’); Readln(n);
S:=0;
Trang 6For i:=1 to n do S:=S+2*i
Em hãy chạy chương trình và kiểm tra kết quả với những bộ thử sau:
Trang 7Câu 2: Đoạn chương trình (2đ)
Trang 8ĐỀ SỐ 2
MA TRẬN ĐỀ THI Tên chủ đề
(Nội dung,
chương)
Nhận biết (Cấp độ 1)
Thông hiểu (Cấp độ 2)
Vận dụng Cấp độ thấp
(Cấp độ 3)
Cấp độ cao (Cấp độ 4) Bài 7:Câu
Số điểm:1
Số câu: C6, C9, C14
Số điểm:1
Số câu:C7, C10, C13;
Tỉ lệ: 20%
Trang 9C In ra vô hạn các số 1, mỗi số trên một dòng D Cả a, b, c đều sai
Câu 3: Số vòng lặp trong câu lệnh:
For (Biến đếm):=(Giá trị đầu) to (Giá trị cuối) do (câu lệnh); được xác định:
A Giá trị đầu = Giá trị cuối + 1
B Giá trị đầu = Biến đếm + 1
C Giá trị cuối = Giá trị đầu + 1
D Giá trị cuối = Biến đếm + 1
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
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
Trang 10Câu 9: Bạn Ngọc muốn in ra màn hình 5 chữ B và 5 chữ C trên màn hìnhbằng đoạn
B Phải đưa Writeln(‘B’); writeln(‘C’) vào trong cặp từ khóa Begin và End;
C Phải đổi Writeln thành Write
D Phải đặt Writeln(‘B’); writeln(‘C’); trên hai dòng riêng biệt
Câu 10: Việc đầu tiên câu lệnh While 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: Kết quả của < điều kiện> trong câu lệnh While Do có giá trị gì?
A Là 1 số nguyên
B Là 1 số thực
C Đúng hoặc sai
D Là 1 dãy kí tự
Câu 12: Câu lệnh sau từ khóa Do trong câu lệnh While sẻ được thực hiện bao nhiêu lần?
A 0 lần B 1 lần C 2 lần D Tùy thuộc bài toán
Câu 13: Lựa chọn đáp án Đ ( Đúng) hoặc S ( Sai) Mỗi đáp án đúng được 0.25 điểm
Đ S
a Trong nhiều trường hợp, việc thực hiện câu lệnh lặp while do tốn ít
thời gian hơn so với câu lệnh lặp for do
b Câu lệnh sau do trong lệnh lặp while do có thể không được thực hiện
một lần nào nếu ngay từ đầu, <điều kiện> điều khiển vòng lặp có giá trị
sai
c Trong vòng lặp While Do <câu lệnh> chỉ là câu lệnh đơn giản
d Trong vòng lặp While Do < điều kiện> thông thường là phép so
sánh
Câu 14 Hãy xác định đúng sai cho các phát biểu dưới đây:
Đ S
a Để 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
b 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;
c Mọi NNLT đều có các cách để chỉ thị cho máy tính thực hiện cáu trúc
Trang 11với một câu lệnh Đó là câu lệnh lặp
d Câu lệnh lặp sẻ thực hiện câu lệnh nhiều lần, mỗi lần là hai vòng
Câu 15 Đối với từng đoạn chương trình Pascal sau đây, hãy cho biết lệnh writeln in ra
màn hình giá trị của j, k là bao nhiêu? (1.5 điểm)
Câu 16 Đối với từng đoạn chương trình Pascal sau đây, hãy cho biết lệnh writeln in ra
màn hình giá trị của i , j, k là bao nhiêu? (1.5 điểm)
Câu 17: Giả sử abc (0≤ a,b,c ≤ 9) là số Armstrong (a,b,c thỏa mãn 100a + 10b+c = a3+
b3+c3) Hãy hoàn thành chương trình sau ( 2 điểm ):
Trang 13Thời gian làm bài : 45 phút
(không kể thời gian phát đề)
Họ và tên học sinh : Lớp : 8A1
I PHẦN TRẮC NGHIỆM: (5,0 điểm) (HS trả lời bằng cách khoanh tròn vào đáp án đúng.)
Câu 1 (0,5 điểm) Để tìm giá trị lớn nhất của 2 số a, b thì ta viết:
A Max:=a;If b>Max then Max:=b;
B Max:=b;If a>Max then Max:=a;
C If (a>b) then Max:=a;If (b>a) then Max:=b;
D Cả 3 câu đều đúng
Câu 2 (0,5 điểm) Lệnh nào dưới đây viết đúng về câu lệnh gán :
A x : 15 B x := 15 C x =: 15 D x = 15
Câu 3 (0,5 điểm) Tên nào sau đây là do người lập trình đặt:
Câu 4 (0,5 điểm) Câu nào sau đây đúng khi nói về biến:
A Tên biến có độ dài tùy ý
B Biến có giá trị không đổi trong suốt quá trình thực hiện chương trình
C Có một số biến có sẵn trong chương trình, không cần khai báo
D Biến là đại lượng do người lập trình đặt
Câu 5 (0,5 điểm) Chương trình pascal sau sẽ in ra màn hình nội dung gì?
A 1 câu “Day la lan lap thu i”;
B 10 câu Day la lan lap thu i” với i theo thứ tự từ 1->10;
C 1 câu “Day la lan lap thu ‘, i”;
D 10 “Day la lan lap thu ‘, i”;
Câu 6 (0,5 điểm) Câu lệnh nào sau đây là khai báo hằng:
A Const n : 20; B Const n 20; C Const n := 20; D Const n = 20;
Câu 7 (0,5 điểm) Chương trình sau cho kết quả là gi ?
Trang 14Program vd;
Var
a, b,: real; x,: integer ;
Begin
readln(a, b); If a>b then x:=a else x:=b; Write(x);
Readln;
End
A chương trình không thực hiện được do lỗi khai báo kiểu dữ liệu
B đảo giá trị của 2 biến a, b cho nhau
C xuất ra màn hình số nhỏ nhất trong 2 số a, b đã nhập
D xuất ra màn hình số lớn nhất trong 2 số a, b đã nhập
Câu 8 (0,5 điểm) Hãy đọc đoạn chương trình sau:
If a >= b then s:=(a+b)*sqrt(a - b) else s:= a*b; Nhập a = 5, b = 1 thì kết quả s bằng:
Câu 9 (0,5 điểm) Từ nào sau đây không phải tên chuẩn?
Câu 10 (0,5 điểm) Để thực hiện phép tính tổng của hai số nguyên a và b ta thực hiện như sau :
A Tong:a+b; B Tong(a+b); C Tong=a+b; D Tong:=a+b;
II PHẦN TỰ LUẬN: (5,0 điểm)
Câu 1: (2,0 điểm) Viết cú pháp của câu lệnh lặp với số lần biết trước và giải thích
Câu 2: (1,5 điểm) Viết chương trình tính tổng của dãy số 1, 2, …., 120
Câu 3: (1,0 điểm) Viết chương trình nhập vào 1 số N In ra màn hình bảng cửu chương tương ứng với số
N đó
Câu 4: (0,5 điểm) Mô tả thuật toán vẽ 1 hình vuông
Bài làm:
Trang 15
Trang 16
A Phần trắc nghiệm: (2,0 điểm) Hãy chọn một đáp án đúng nhất
Câu 1 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 2 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?
Câu 5 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?
Câu 6 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ị?
Câu 7 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 chỉ số cuối
C Kiểu dữ liệu có thể là integer hoặc real D Cả ba ý trên
Câu 8 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?
ĐỀ CHÍNH THỨC
Trang 17B Phần tự luận: (8.0 điểm)
Câu 1 (2 điểm) Viết chương trình tính tổng 10 số tự nhiên đầu tiên
Câu 2 (2 điểm) Viết chương trình tính tổng các số tự nhiên đầu tiên cho đến khi tổng đó bằng 100 thì
dừng lại
Câu 3 (4 điểm) Viết chương trình nhập điểm kiểm tra học kỳ môn tin cho N học sinh và in ra
màn hình Với N và điểm kiểm tra được nhập từ bàn phím (sử dụng biến mảng)
C Thực hành
Câu 1 (2 điểm) Viết chương trình tính tổng 10 số tự nhiên đầu tiên
Câu 2 (2 điểm) Viết chương trình tính tổng các số tự nhiên đầu tiên cho đến khi tổng đó bằng 100 thì
dừng lại
Câu 3 (3 điểm) Viết chương trình nhập điểm kiểm tra học kỳ môn tin cho N học sinh và in ra
màn hình Với N và điểm kiểm tra được nhập từ bàn phím (sử dụng biến mảng)
Câu 4 (3 điểm) Viết chương trình tìm phần tử nhỏ nhất và lớn nhất của dãy n số nhập vào từ
bàn phím
Trang 18
PHÒNG GD - ĐT TRƯỜNG THCS ĐÁP ÁN A Phần trắc nghiệm: (2 điểm – mỗi câu đúng 0,25 điểm) Câu 1 2 3 4 5 6 7 8 Đáp án B C C A D B D A B Phần tự luận: (8 điểm) CÂU ĐÁP ÁN ĐIỂM Câu 1 Var s,i:integer; begin S:= 0; For i:= 1 to 10 do s:=s+1; Writeln (‘tong cua 10 so tu nhien dau tien la:’,s); Readln End 1 1 Câu 2 Var s,n:integer; Begin S:=0; n:=1; While (s<=100) do Begin S:=s+n; n:=n+1;
End;
Writen(‘tong cac so tu nhien dau tien:’,s);
Readln End
1
1
Trang 19Câu 3
Var n, i: integer;
Diem: array[1 50] of real;
Begin Write(‘Nhap so luong hoc sinh N = ‘); Readln(n);
Writeln(‘Nhap diem cho tung hoc sinh’);
For i := 1 to n do Begin
Write(‘Diem HS ‘,i,’ = ‘);
readln(Diem[i]);
End;
For i : = 1 to n do Writeln(‘Diem cua HS ‘,i, ‘ = ‘,diem[i]);
For i:= 1 to 10 do s:=s+1;
Writeln (‘tong cua 10 so tu nhien dau tien la:’,s);
Readln End
While (s<=100) do Begin
S:=s+n; n:=n+1;
End;
Writen(‘tong cac so tu nhien dau tien:’,s);
Readln End
Writeln(‘Nhap diem cho tung hoc sinh’);
1
Trang 20For i := 1 to n do Begin
Write(‘Diem HS ‘,i,’ = ‘);
readln(Diem[i]);
End;
For i : = 1 to n do Writeln(‘Diem cua HS ‘,i, ‘ = ‘,diem[i]);
Var n,i: integer;
S,ptmax, ptmin: real;
A: array [1 100] of real;
Begin Write (‘nhap so phan tu cua day:’); readln(n);
Writeln (‘hay nhap’,n,’ phan tu cua day:’);
For i:=1 to n do readln(a[i]);
Ptmax:=a[i]; ptmin:=a[i];
For i:=2 to n do Begin
If a[i] > ptmax then ptmax:=a[i];
If a[i] < ptmin then ptmin:=a[i];
End;
Writeln (‘phan tu max cua day la: ‘,ptmax:0:2);
Writeln(‘phan tu min cua day la: ‘,ptmin:0:2);
Readln End
1
1
1
Trang 21TRƯỜNG TRUNG HỌC CƠ SỞ
.………
ĐỀ KIỂM TRA 1 TIẾT HỌC KÌ II
NĂM HỌC 2019-2020 Môn: TIN HỌC, Lớp 8
Đề chính thức Thời gian:45 phút (không kể phát đề)
Họ và tên:
Lớp: / ; Phòng KT:
Số báo danh: ; Số tờ:
Giám thị Giám khảo
Điểm bằng số
TN=
TL=
Điểm tổng bằng chữ Lời phê
I PHẦN TRẮC NGHIỆM KHÁCH QUAN: (3,0 điểm)
Thí sinh chọn chữ cái đứng trước kết quả mà em cho là đúng và ghi vào phần bài làm dưới đây
Câu 1 Pascal sử dụng câu lệnh nào sau đây để lặp với số lần lặp biết trước ?
A if then B if then else C for do D while do
Câu 2 Cú pháp đầy đủ của câu lệnh While … do là:
A While <câu lệnh> do <điều kiện>;
B While <điều kiện>; <câu lệnh>;
C While <điều kiện> to <câu lênh> do;
D While <điều kiện> do <câu lệnh>;
Câu 3 Trong Pascal, câu lệnh khai báo biến mảng nào sau đây đúng?
A var a : array[10 1] of integer;
B var b : array(1 100) of real;
C var c : array[1 15] of integer;
D var d : array[-2 -5] of real;
Trang 22Câu 4 Sau khi thực hiện đoạn chương trình sau:
S:=0; For i:=1 to 5 do S:=S+i;
Giá trị của biến S bằng bao nhiêu?
A 20 B 15 C 10 D 0 Câu 5 Sau khi thực hiện chương trình dưới đây, giá trị của biến j bằng bao nhiêu?
j:= 1;
for i:= 0 to 10 do j:= j+1;
II PHẦN TỰ LUẬN: (8.0 điểm)
Câu 1.( 2 điểm) Nêu cú pháp và hoạt động của câu lệnh chưa biết trước số lần lặp Câu 2.( 2 điểm) Viết các câu lệnh theo yêu cầu:
Trang 23HƯỚNG DẪN CHẤM
I PHẦN TRẮC NGHIỆM (3.0 điểm)
II PHẦN TỰ LUẬN (7.0 điểm)
điểm
1 -Cú pháp của câu lệnh lặp While do là :
While <điều kiện> do <câu lệnh>;
- Cách thực hiện lệnh của câu lệnh lặp While do :
Bước 1: Kiểm tra <điều kiện>
Bước 2: Nếu <điều kiện> đúng, máy sẽ thực hiện <câu lệnh> và quay lại
bước 1 Nếu <điều kiện> sai, <câu lệnh> sẽ bị bỏ qua và việc thực hiện
lệnh lặp kết thúc
1,0
0,5 0,5
For i:=2 to 10 do If min>A[i] Then min:=A[i];
Writeln('Phan tu nho nhat cua mang: ',min);
Readln End
GV trừ -0.25 cho mỗi lỗi nhỏ, Hs viết đúng chương trình theo cách khác vẫn cho điểm tối đa
0,5
0,5
0,5 0,5 0,5 0,5