Tải bản đầy đủ (.doc) (9 trang)

Đề kiểm tra tin học 8 học kì 2 có ma trận năm học 20172018

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (181.3 KB, 9 trang )

Trường THCS Phượng Lâu
Ngày soạn: 15/4/2018
Ngày dạy
Lớp
8A
8B

Giáo án Tin học 8
Sĩ số

Tên HS vắng

KIỂM TRA HỌC KÌ II (Phần lý thuyết)

Tiết 63:
I. MỤC TIÊU BÀI HỌC :

Kiến thức : Kiểm tra kiến thức của học sinh về cấu trúc và cách sử dụng các câu lệnh điều
kiện, câu lệnh lặp, làm việc với dãy số trong chương trình Pascal...
Kĩ năng: Viết và sử dụng đúng, có hiệu quả câu lệnh lặp với số lần biết trước For...do, câu lệnh
lặp với số lần chưa biết trước While...do, khai báo và sử dụng biến mảng...
Thái độ: Giáo dục ý thức tự giác, nghiêm túc trong học tập và thi cử.
Năng lực hướng tới: Năng lực tự đánh giá bản thân
II. TÀI LIỆU VÀ PHƯƠNG TIỆN:

1. Chuẩn bị của GV: Đề kiểm tra, đáp án chấm, thang điểm.
2. Chuẩn bị của HS: Các kiến thức đã học, đồ dùng học tập.
III. TIẾN TRÌNH DẠY HỌC:

1. Giới thiệu bài học:
2. Dạy học bài mới: (45’)



MA TRẬN
THIẾT KẾ ĐỀ
KIỂM TRA
Mức độ

Nhận biết

Thông hiểu

Vận dụng
VDT

TN

TL

TN

TL

Nội dung
GV: Trần Văn Duy

82

TN

VDC
TL


TN

TL

Năm học 2017- 2018

Tống
số


Trường THCS Phượng Lâu

Giáo án Tin học 8

Bài 7: Câu
lệnh lặp

Biết cú pháp câu
lệnh lặp với số lần
chưa biết trước.

Sử dung được câu
lệnh lặp để áp
dụng tính một số
phép toán đơn
giản.

Số câu
Số điểm


3

1
0,75

1
3,0

0,25

Bài 8: Lặp với Biết và viết đúng
cú pháp câu lệnh
số lần chưa
lặp while…do
biết trước

Hiểu phép toán
chua lấy phần
nguyên, chia lấy
phần dư

Số câu
Số điểm

1

1
0,25


0,25

Biết cú pháp và các
thành phần có trong
biến mảng

Hiểu hoạt động
của các câu lệnh
khi kết hợp với
biến mảng

Số câu
Số điểm

1

2
0,25

5

1

4

4,0

5
2,0


3,5
Thực hiện được
việc khai báo
biến mảng. Viết
được các câu
lệnh nhập giá trị
và tính toán với
các biến mảng.

1
0.25

0,5

5

Sử dụng được
câu lệnh lặp với
số lần chưa biết
trước phù hợp
cho từng trường
hợp cụ thể

2
0,5

Bài 9: Làm
việc với dãy
số


Tổng số câu

Sử
dụng
câu
lệnh lặp
để viết
chương
trình

1

5
2,0

4

2

2,5
15

Tổng số điểm

1,25

1

2,75


5

Tỷ lệ

12,5%

10%

27,5%

50%

10

ĐỀ BÀI :
ĐỀ SỐ 1
A. Phần trắc nghiệm khách quan: Hãy khoanh tròn vào chữ cái trước phương án trả lời
đúng nhất.
Câu 1: Để tính tổng S=2 + 4 + 6 … + n; em chọn đoạn lệnh:
A. For i:=1 to n do If ( i mod 2)=0 then S:=S B. For i:=1 to n do If ( i mod 2)=1 then S:=S + i;
+ i;
C. For i:= 1 to n do S:= S + i ;
D. For i:=1 to n do If ( i mod 2)<>0 then S:=S
+ i;
Câu 2: 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
A. Integer;
B. Real;
C. String
D. Tất cả các kiểu trên đều được

Câu 3: Câu lệnh ghép là câu lệnh:
A. Từ 2 câu lệnh đơn trở lên
B. Chỉ có một câu lệnh đơn
C. Gồm 2 câu lệnh đơn ghép D. Từ 2 câu lệnh đơn trở lên và được đặt trong từ khoá Begin và
lại.
end;
GV: Trần Văn Duy

83

Năm học 2017- 2018


Trường THCS Phượng Lâu
Giáo án Tin học 8
Câu 4: Vòng lặp While <điều kiện> do <câu lệnh>; 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à >=100
Câu 5: Khi khai báo biến mảng, trong mọi ngôn ngữ lập trình ít nhất cần chỉ rõ:
A. Tên biến mảng và số lượng phần tử.
B. Tên biến mảng
C. Tên biến mảng, số lượng phần tử, kiểu dữ liệu chung của các phần D. Tất cả đều sai
tử.
Câu 6: Trong Pascal hàm WhereX cho biết:
A. Số thứ tự của cột đang có con trỏ
B. Số thứ tự của hàng đang có con trỏ
C. Toạ độ của con trỏ
D. Tất cả đều sai

Câu 7: Trong Pascal, để di chuyển con trỏ đến cột 15, hàng 15, ta dùng câu lệnh:
A. GotoXY(15);
B. GotoXY(15,15);
C. Goto(15);
D. Goto(15,15);
Câu 8: Cho đoạn chương trình sau : for i:=1 to 10 do Writeln(A[i]);
A. Nhập 10 phần tử cho mảng A
B. In ra màn hình 1 phần tử của mảng A
C. In ra màn hình 10 phần tử của mảng
D. Tất cả các câu đều sai
Câu 9: Cho khai báo:
Var A: array [1..5] of integer; Chọn lệnh đúng
A. A[1]:=4/2;
B. A(3) :=6;
C. A[2] :=6;
D. A =10;
Câu 10: : Khai báo nào sau đây là khai báo của biến mảng?
A. A: array [1..50] of integer;
B. A: array [1.5 ..50] of integer;
C. A: array [10..50] of integer;
D. Câu a và c đúng
Câu 11: Câu lệnh nào sau đây là câu lệnh nhập cho phần tử thứ 5 của biến mảng A?
A. Readln(A[5]);
B. Readln(A[i]);
C. Readln(A[a]);
D. Readln(A5);
Câu 12: Câu lệnh nào sau đây là câu lệnh xuất cho phần tử thứ i của biến mảng A?
A. Write(A[5]);
B. Write(A[i]);
C. Write(A[a]);

D. Write(Ai);
B. PHẦN TỰ LUẬN:
Câu 1: Viết cấu trúc câu lệnh khai báo biến mảng trong pascal ? Giải thích ý nghĩa câu lệnh ?
Cho VD?
Câu 2 : Trong các câu lệnh lặp Pascal sau đây, câu lệnh nào sai và sai ở đâu ?
a, While i :=1 do t :=10 ;
b, While a<=b ; do write(‘b khong nho hon a’) ;
c, while i=1 do write(‘Toi lap trinh gioi ’)
d, i :=1 ; while i<10 do sum :=sum+i ; i :=i+1 ;
e, i :=1 ; x :=5 ;
While iCâu 3: Em hãy viết chương trình tìm số nhỏ nhất trong N số được nhập vào từ bàn phím.
ĐỀ SỐ 2
A. Phần trắc nghiệm khách quan: Hãy khoanh tròn vào chữ cái trước phương án trả lời
đú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’);

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

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

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

Câu 2. Trong câu lệnh lặp: for n:= 1 to 6 do begin ... end;
GV: Trần Văn Duy

84

Năm học 2017- 2018



Trường THCS Phượng Lâu
Câu lệnh ghép được thực hiện bao nhiêu lần?

Giáo án Tin học 8

A. 7 lần;

C. 5 lần;

B. 6 lần;

D. Không lần nào;

Câu 3. Câu lệnh lặp For ...to ... do có:
A. Số lần lặp là vô hạn.

C. Số vòng lặp phải nhỏ hơn 100.

B. Số lần lặp biết trước.

D. Số vòng lặp không biết trước.

Câu 4. 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;
A. 12;

B. 13;


C. 11;

D. 14;

Câu 5. Trong Pascal, câu lệnh nào sau đây là đúng?
A. i:=0; S:=1; While S<10 do S=S+i; i=i+1;
B. i:=1; S:=0; while s<10 do begin S:=S+i; i:=i+1; end;
C. n:=2; while n<5; do write(‘A’);
D. Cả A và B đều đúng
Câu 6. Cú pháp đầy đủ của câu lệnh While … do là:
A. While <câu lệnh> do <điều kiện>;

C. While <điều kiện> to <câu lênh> do;

B. While <điều kiện>; <câu lệnh>;

D. While <điều kiện> do <câu lệnh>;

Câu 7. Hãy cho biết chương trình dưới đây sẽ thực hiện bao nhiêu vòng lặp khi thực hiện đoạn
chương trình ?
n:=10; T:=100;
While n>10 do n:=n+5; T:=T - n;
A. 0

B. 4

C. 6

D. 10


Câu 8. Đoạn lệnh dưới đây sẽ cho kết quả là gì?
so := 1;
While so <10 writeln(so); so := so + 1;
A. In ra các số từ 1 đến 10;

C. In ra vô hạn số 1 trên một cột;

B. Chương trình báo lỗi;

D. In ra vô hạn số 1 trên một dòng ;

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

C. var c : array[1..15] of integer;

B. var b : array(1..100) of real;

D. var d : array[-2..-5] of real;

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

B. 4;

C. 6;


D. 7;

Câu 11. Trong câu lệnh khai báo biến mảng, phát biểu nào sau đây đúng:
GV: Trần Văn Duy

85

Năm học 2017- 2018


Trường THCS Phượng Lâu
A. Chỉ số đầu > chỉ số cuối;

Giáo án Tin học 8

B. Chỉ số đầu �chỉ số cuối;
C. Kiểu dữ liệu chỉ có thể là real;
D. Cả ba ý trên đều đúng;

GV: Trần Văn Duy

86

Năm học 2017- 2018


Câu 12. 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 dưới đây giá trị của biến tb là bao nhiêu?
tb:= 0; For i:= 1 to 5 do tb := tb + A[i];
A. 19;


B. 18;

C. 21;

D. 20;
B. PHẦN TỰ LUẬN:
Câu 1: Viết cấu trúc câu lệnh khai báo biến mảng trong pascal ? Giải thích ý nghĩa
câu lệnh ? Cho VD?
Câu 2 : Trong các câu lệnh lặp Pascal sau đây, câu lệnh nào sai và sai ở đâu ?
a, While i :=1 do t :=10 ;
b, While a<=b ; do write(‘b khong nho hon a’) ;
c, while i=1 do write(‘Toi lap trinh gioi ’)
d, i :=1 ; while i<10 do sum :=sum+i ; i :=i+1 ;
e, i :=1 ; x :=5 ;
While iCâu 3: Em hãy viết chương trình tìm số nhỏ nhất trong N số được nhập vào từ bàn
phím.
ĐÁP ÁN CHẤM VÀ THANG ĐIỂM
A. Phần trắc nghiệm khách quan: (3.0 điểm - mỗi câu đúng 0,25 điểm)
ĐỀ1
Câu

1

2

3

4


5

6

7

8

9

10

11

12

Đáp án

A

A

D

C

C

A


B

C

C

D

A

B

1
C

2
B

3
B

4
A

5
B

6
D


7
A

8
B

9
C

10
A

11
B

12
D

ĐỀ 2

Câu
Đáp án

B. Phần tự luận: (7.0 điểm)
Câu 1: (1.5 điểm)
* Cách khai báo biến mảng trong Pascal:
var <tên mảng> : array [<chỉ sốđầu>...<chỉ số cuối>] of <kiểu dữ liệu>;
Trong đó: - Chỉ số đầu và chỉ số cuối là hai số nguyên thoả mãn chỉ số đầu  chỉ
số cuối.

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


Ví dụ:

Var Diem:array[1..50] of real;
Var DiemToan, Diemvan, DiemLi: array[1..50] of real;
Câu 2 : (2.5 điểm- Mỗi câu đúng 0.5 điểm):
a, Sai, thừa dấu hai chấm đầu tiên.
b, Thừa dấu chấm phẩy trước từ khoá do
c, Sai, thiếu dấu chấm phẩy sau câu lệnh
d, Sai, vòng lặp vô hạn do không có câu lệnh làm thay đổi biến i (lỗi ngữ nghĩa)
e, Sai, vòng lặp được thực hiện nhưng chỉ có giá trị cuối cùng của i được in ra (lỗi
ngữ nghĩa) ; Nếu muốn in ra các giá trị của i thì thiếu hai từ khoá begin và end để
gộp hai câu lệnh cuối thành câu lệnh ghép.
Câu 3: (3 điểm)
Program P_Min;
Var i, n, Min : integer;
A: array[1..100] of integer;
Begin
write('Hay nhap do dai cua day so, N = ');
readln(n);
writeln('Nhap cac phan tu cua day so:');
For i:=1 to n do
Begin
write('a[',i,']='); readln(a[i]);
End;
Min:=a[1];
for i:=2 to n do if Min>a[i] then Min:=a[i];
write('So nho nhat la Min = ',Min);

readln;
End.
3. Luyện tập củng cố:
4. Hoạt động tiếp nối:
5. Dự kiến kiểm tra đánh giá:


Ngày soạn: 15/4/2018
Ngày dạy
Lớp
8A
8B

Tiết 64:

Sĩ số

Tên HS vắng

KIỂM TRA HỌC KÌ II (Phần thực hành)

I. MỤC TIÊU BÀI HỌC :

Kiến thức : Kiểm tra kiến thức của học sinh về cấu trúc và cách sử dụng các câu
lệnh điều kiện, câu lệnh lặp, làm việc với dãy số trong chương trình Pascal...
Kĩ năng: Viết và sử dụng đúng, có hiệu quả câu lệnh lặp với số lần biết trước
For...do, câu lệnh lặp với số lần chưa biết trước While...do, khai báo và sử dụng
biến mảng...
Thái độ: Giáo dục ý thức tự giác, nghiêm túc trong học tập và thi cử.
Năng lực hướng tới: Năng lực tự đánh giá bản thân

II. TÀI LIỆU VÀ PHƯƠNG TIỆN:

1. Chuẩn bị của GV: Đề kiểm tra, đáp án chấm, thang điểm.
2. Chuẩn bị của HS: Các kiến thức đã học, đồ dùng học tập.
III. TIẾN TRÌNH DẠY HỌC:

1. Giới thiệu bài học:
2. Dạy học bài mới: (45’)
ĐỀ BÀI:
Câu 1: Viết chương trình Pacscal 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ố. Độ dài dãy số được nhập từ bàn phím. In ra màn hình số lớn nhất của dãy
số.
Câu 2. 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).

ĐÁP ÁN:
Câu 1:

Program sonlonnhat ;
Uses crt ;
Var i, n, max : Integer ;
A : array[1..200] of integer ;
Begin
Clrscr ;
Write(‘nhap n’) ; Readln(n) ;


For i :=1 to n do
Begin
Write(‘a(‘,i,’)=’) ; Readln(a[i]) ;

End ;
max :=a[1] ;
For i :=2 to n do
If a[i] < min then max :=a[i] ;
Writeln(‘So lon nhat la :’,max) ;
Readln ;
End.
Câu 2:
Program trung_binh;
Uses crt;
Var n, i: integer;
Diem: array[1..50] of real;
Begin
Clrscr;
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]);
Readln;

End.
3. Luyện tập củng cố:
4. Hoạt động tiếp nối:
5. Dự kiến kiểm tra đánh giá:
Duyệt của tổ chuyên môn
Ngày ........ tháng ....... năm 2018




×