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

Đề thi đáp án ma trận đề thi và đề cương môn tin học 8 học kì 2

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 (89.85 KB, 11 trang )

Trường THCS Lâm Kiết
Lớp 8A:......................
Họ và Tên...........................................
Điểm
Lý thuyết Thực hành

Điểm (Tổng)

Thứ ....... Ngày ...... tháng 04 năm 2018
KIỂM TRA HỌC KÌ II (2017-2018)
Môn: Tin Học 8 (Thời gian: 45 phút)
Nhận xét của giáo viên

ĐỀ LÝ THUYẾT (5đ)
I/ Trắc nghiệm (3.5đ): Hãy chọn đáp án đúng nhất
Câu 1: Dưới đây là một đoạn chương trình Pascal
For i := 0 to 10 do
Begin
………………………
End;
Sau khi thực hiện đoạn chương trình trên, giá trị của i là bao nhiêu?
A. 0
B. 10
C. 11
D. Không xác định
Câu 2: Cú pháp khai báo biến mảng trong Pascal là:
A. var <Tên mảng> ; array [<chỉ số đầu>..<chỉ số cuối>] of <kiểu dữ liệu >;
B. var <Tên mảng> : array [<chỉ số đầu>…<chỉ số cuối>] of <kiểu dữ liệu >;
C. var <Tên mảng> : array [<chỉ số đầu> .. <chỉ số cuối>] of <kiểu dữ liệu >;
D. var <Tên mảng> : String[<chỉ số đầu>…<chỉ số cuối>] for <kiểu dữ liệu >;
Câu 3: Em được học vẽ hình với phần mềm nào?


A. Pascal;
B. Geogebra;
C. Mario;
D. Finger Break out;
Câu 4: Các hoạt động nào dưới đây lặp với số lần chưa biết trước:
A. Ngày đánh răng hai lần
B. Mỗi ngày đi học một - ba lần
C. Học bài lịch sử 3 lần một bài.
D. Gọi điện cho tới khi có người nhấc máy
Câu 5: Để tính tổng S=2 + 4 + 6 … + n; em chọn đoạn lệnh:
A. For i:=1 to n do
B. For i:=1 to n do
if ( i mod 2)=0 then S:=S + i;
S:= S + i;
C. c. For i:=1 to n do
D. for i:=1 to n do
if ( i mod 2)=1 then S:=S + i;
if ( i mod 2)<>0 then S:=S + i;
Câu 6: Khi nào thì câu lệnh For…to…do kết thúc?
A. Khi biến đếm lớn hơn giá trị cuối
B. Khi biến đếm nhỏ hơn giá trị cuối
C. Khi biến đếm bằng giá trị cuối
D. Khi biến đếm lớn hơn giá trị đầu
Câu 7: Trong cấu trúc câu lệnh While <điều kiện> do <câu lệnh>. Câu lệnh sau từ khoá do
chỉ được lặp khi :
A. Điều kiện có kết quả là Sai
B. Điều kiện có kết quả là đúng
C. Luôn luôn được thực hiện
D. Câu lệnh được thực hiện trước 1 lần rồi kiểm tra kết quả của điều kiện.



Câu 8: Lệnh lặp nào sau đây là đúng?
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ị đầu> to <giá trị cuối> do <câu lệnh>;
C. For <biến đếm>:= <giá trị cuối> to <giá trị đầu> do <câu lệnh>;
D. For <biến đếm>: <giá trị đầu> to <câu lệnh> do <giá trị cuối>;
Câu 9: Khi viết câu lệnh lặp for...to ...do:
A. Giá trị đầu bằng giá trị cuối
B. Giá trị cuối phải lớn hơn giá trị đầu
C. Giá trị đầu lớn hơn giá trị cuối
D. Kiểu dữ liệu nào cũng được.
Câu 10: Với câu lệnh for (biến đếm):= (giá trị đầu) to (giá trị cuối) do (câu lệnh);
Khi thực hiện, nếu biến điếm nhận giá trị là 1 sau mỗi vòng lặp biến đếm tăng thêm bao
nhiêu đơn vị?
A. Một đơn vị
B. hai đơn vị
C. ba đơn vị
D. bốn đơn vị
Câu 11: Với ngôn ngữ lập trình Pascal 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 gì?
A. Interger;
B. real;
C. string
D. Tất cả các kiểu trên đều được
Câu 12: Từ một câu lệnh lặp For … to … do… cho trước ta có thể viết lại câu lệnh đó bằng
câu lệnh lặp While … do….
A. Đúng
B. Sai
Câu 13: Cấu trúc lệnh lặp với số lần chưa biết trước là:
A. while <điều kiện > do <câu lệnh>;

B. while <điều kiện > to <câu lệnh>;
C. while <điều kiện > for <câu lệnh>;
D. do <câu lệnh> while <điều kiện > :
Câu 14: Câu lệnh pascal nào sau đây là 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’);
II/ Tự luận (1.5đ)
1) Thế nào là dữ liệu kiểu mảng? (0.5đ)
2) Cú pháp khai báo mảng trong pascal? Giải thích các giá trị? (1đ)
BÀI LÀM
………………………………………………………………………………………………………………
………………………………………………………………………………………………………………
………………………………………………………………………………………………………………
………………………………………………………………………………………………………………
………………………………………………………………………………………………………………
………………………………………………………………………………………………………………
………………………………………………………………………………………………………………
………………………………………………………………………………………………………………
………………………………………………………………………………………………………………
………………………………………………………………………………………………………………
………………………………………………………………………………………………………………
………………………………………………………………………………………………………………
………………………………………………………………………………………………………………
………………………………………………………………………………………………………………


TRƯỜNG THCS LÂM KIẾT


KIỂM TRA HỌC KÌ II (2017-2018)

HỌ TÊN: ………………………

MÔN: TIN HỌC 8 (THỰC HÀNH)

LỚP:………………

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

ĐỀ I

ĐỀ 1: Viết chương trình tính tổng của n số tự nhiên đầu tiên (n là số tự nhiên được nhập từ bàn phím)
Chạy chương trình
Nhập số n: 4
Tổng của 4 số tự nhiên đầu tiên là: 10
Lưu D:\LOP8A…\TÊN HS_THI01
TRƯỜNG THCS LÂM KIẾT

KIỂM TRA HỌC KÌ II (2017-2018)

HỌ TÊN: ………………………

MÔN: TIN HỌC 8 (THỰC HÀNH)

LỚP:………………

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

ĐỀ II


ĐỀ 2: Viết chương trình tính trung bình n số thực x1, x2, x3… xn (Số n và x1, x2, x3… xn được nhập
từ
bàn phím)
Chạy chương trình
Nhập số n: 3
Nhập số thứ 1: 4
Nhập số thứ 2: 6
Nhập số thứ 3: 8
Trung bình của 3 số là: 6
Lưu D:\LOP8A…\TÊN HS_THI02

TRƯỜNG THCS LÂM KIẾT

KIỂM TRA HỌC KÌ II (2017-2018)

HỌ TÊN: ………………………

MÔN: TIN HỌC 8 (THỰC HÀNH)

LỚP:………………

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

ĐỀ III

ĐỀ 3: Viết chương trình nhận biết một số tự nhiên n được nhập từ bàn phím có phải là số nguyên tố
hay không?
Chạy chương trình
Nhập số n: 7

7 là số nguyên tố
Nhập số n: 8
8 không phải là số nguyên tố
Lưu D:\LOP8A…\TÊN HS_THI03


ĐÁP ÁN – BIỂU ĐIỂM
Lý thuyết (5đ)



Phần 1: Trắc nghiệm 3.5 đ (Mỗi đáp án đúng được 0.25đ)
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

B

C

B

D

A

C

B

B


B

A

Câu 11 Câu 12 Câu 13 Câu 14

A

A

A

D

Phần 2: Tự luận (1.5 đ)
Câu hỏi

Điểm

1) Khi khai báo một biến có kiểu dữ liệu là kiểu mảng, biến đó được gọi là biến mảng.

0.5 đ

2)Tên mảng: array[<chỉ số đầu>..<chỉ số cuối>] of <kiểu dữ liệu>;

0.5 đ

Trong đó: Chỉ số đầu, chỉ số cuối là 2 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


0.5 đ

 Thực hành (5đ)

Câu hỏi
1) Khởi động và lưu đúng tên yêu cầu
2) Đặt được tên chương trình và dùng thư viện xoá màn hình
3) Khai báo đúng
4) Begin..End.
5) Nhập và xuất được N.
6) Dùng đúng cấu trúc For..do ( hoặc While ...do)
7) Chạy được chương trình
Chạy đúng kết quả chương trình

Điểm
0.5đ
0.5đ
1.0đ
0.5đ
0.5đ
1.0đ
0.5đ
0.5đ


MA TRẬN TIN HỌC 8 (2017-2018)
Nhận biết
Thông hiểu

cấp độ

TN

TL

Chủ đề
Chủ đề 1: Bài
- Biết cấu trúc For..do
7. Câu lệnh lặp

Số câu
Số điểm,
Tỉ lệ %
Chủ đề 2: Bài
8. Lặp với số
lần không biết
trước
Số câu
Số điểm
Tỉ lệ %
Chủ đề 3:
Bài 9. Làm việc
với dãy số
Số câu
Số điểm
Tỉ lệ %
Chủ đề 4:
Phần mềm học
tập
Số câu
Số điểm

Tỉ lệ %
Tổng số câu
Tổng điểm
Tỉ lệ %

1
0.25đ
2.5%
- Biết cấu trúc câu lệnh
lặp.
- Biết cấu trúc While..do
2
0.5đ
5%
- Biết nhận dạng cú pháp
khai báo mảng và câu
lệnh gán trong Pascal
1
1
0.25đ

2.5%
- Biết sử dụng các lệnh
trong phần mềm
GeoGebra
1
0.25đ
2.5%
6
2.25đ

22.5%

TN

Vận dụ
Vận dụng
TN
TH

LT

- Hiểu được nếu biến đếm
nhận giá trị là 1 sau mỗi vòng
lặp biến đếm tăng thêm 1 đơn
vị.
- Hiểu được đoạn code chạy
của chương trình Pascal ngắn.
4

10%

- Nhận dạng cấu trúc lặp
không hợp lệ.
- Vận dụng chạy chương
trình bằng tay để đưa ra kết
quả.
- Vận dụng kiến thức đã học
để tính tổng, tích,..
3
1

0.75đ

7.5%
50%
- Các hoạt động lặp với số
lần chưa biết trước
1
0.25đ
2.5%

- Hiểu được khái niệm biến
mảng, kiểu dữ liệu mảng.
1
0.5đ
5%

5
1.5đ
15%

5

60%


ĐỀ CƯƠNG ÔN TẬP THI HỌC KÌ II
MÔN: TIN HỌC 8 (2017-2018)
PHẦN 1: TRẮC NGHIỆM
Câu 1: Các hoạt động nào dưới đây lặp với số lần chưa biết trước:
A. Ngày đánh răng hai lần

B. Mỗi ngày đi học một - ba lần
C. Học bài lịch sử 3 lần một bài.
D. Gọi điện cho tới khi có người nhấc máy
Câu 2: Lệnh lặp nào sau đây là đúng?
E. For <biến đếm>= <giá trị đầu> to <giá trị cuối> do <câu lệnh>;
F. For <biến đếm>:= <giá trị đầu> to <giá trị cuối> do <câu lệnh>;
G. For <biến đếm>:= <giá trị cuối> to <giá trị đầu> do <câu lệnh>;
H. For <biến đếm>: <giá trị đầu> to <câu lệnh> do <giá trị cuối>;
Câu 3: Cú pháp khai báo biến mảng trong Pascal là:
E. var <Tên mảng> ; array [<chỉ số đầu>..<chỉ số cuối>] of <kiểu dữ liệu >;
F. var <Tên mảng> : array [<chỉ số đầu>…<chỉ số cuối>] of <kiểu dữ liệu >;
G. var <Tên mảng> : array [<chỉ số đầu> .. <chỉ số cuối>] of <kiểu dữ liệu >;
H. var <Tên mảng> : String[<chỉ số đầu>…<chỉ số cuối>] for <kiểu dữ liệu >;
Câu 4: Cấu trúc lệnh lặp với số lần chưa biết trước là:
E. while <điều kiện > do <câu lệnh>;
F. while <điều kiện > to <câu lệnh>;
G. while <điều kiện > for <câu lệnh>;
H. do <câu lệnh> while <điều kiện > :
Câu 5: Em được học vẽ hình với phần mềm nào?
A. Pascal;
B. Geogebra;
C. Mario;
D. Finger Break out;
Câu 6: Vòng lặp while ..do là vòng lặp:
A. Biết trước số lần lặp
B. Chưa biết trước số lần lặp
C. Biết trước số lần lặp nhưng giới hạn là <=100
D. Biết trước số lần lặp nhưng giới hạn là >=100
Câu 7: Khi nào thì câu lệnh For…to…do kết thúc?
A. Khi biến đếm lớn hơn giá trị cuối

B. Khi biến đếm nhỏ hơn giá trị cuối
C. Khi biến đếm bằng giá trị cuối
D. Khi biến đếm lớn hơn giá trị đầu
Câu 8: Khi viết câu lệnh lặp for...to ...do:
A. Giá trị đầu bằng giá trị cuối
B. Giá trị cuối phải lớn hơn giá trị đầu
C. Giá trị đầu lớn hơn giá trị cuối
D. Kiểu dữ liệu nào cũng được.
Câu 9: Với ngôn ngữ lập trình Pascal 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 gì?
A. Interger;
B. real;
C. string
D. Tất cả các kiểu trên đều được
Câu 10: Trong cấu trúc câu lệnh While <điều kiện> do <câu lệnh>. Câu lệnh sau từ khoá do
chỉ được lặp khi :
A. Điều kiện có kết quả là Sai
B. Điều kiện có kết quả là đúng


C. Luôn luôn được thực hiện
D. Câu lệnh được thực hiện trước 1 lần rồi kiểm tra kết quả của điều kiện.
Câu 11: Câu lệnh pascal nào sau đây là 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 12: Trong Pascal, các khai báo biến mảng sau đây cách nào đúng?
A. Var X: Array [10,13] of integer;
B. Var X: Array [1 .. 10] of integer;

C. Var X: Array [1, 10] of integer;
D. Var X: Array [1.5 .. 10] of real;
Câu 13: Với câu lệnh for (biến đếm):= (giá trị đầu) to (giá trị cuối) do (câu lệnh);
Khi thực hiện, nếu biến điếm nhận giá trị là 1 sau mỗi vòng lặp biến đếm tăng thêm bao
nhiêu đơn vị?
A. Một đơn vị
B. hai đơn vị
C. ba đơn vị
D. bốn đơn vị
Câu 14: Từ một câu lệnh lặp For … to … do… cho trước ta có thể viết lại câu lệnh đó bằng
câu lệnh lặp While … do….
A. Đúng
B. Sai
Câu 15: Dưới đây là một đoạn chương trình Pascal:
For i := 0 to 10 do
Begin
………………………
End;
Sau khi thực hiện đoạn chương trình trên, giá trị của i là bao nhiêu?
A. 0
B. 10
C. 11
D. Không xác định
Câu 16: Để tính tổng S=2 + 4 + 6 … + n; em chọn đoạn lệnh:
E. For i:=1 to n do
F. For i:=1 to n do
if ( i mod 2)=0 then S:=S + i;
S:= S + i;
G. c. For i:=1 to n do
H. for i:=1 to n do

if ( i mod 2)=1 then S:=S + i;
if ( i mod 2)<>0 then S:=S + i;
PHẦN II: TỰ LUẬN
1) Cú pháp câu lệnh lặp có dạng như thế nào? Giải thích từng giá trị?
2) Cú pháp lặp với số lần chưa biết trước có dạng như thế nào? Trình bày các bước thực
hiện?
3) Thế nào là dữ liệu kiểu mảng? là biến mảng?
4) Cú pháp khai báo mảng trong pascal? Giải thích các giá trị?

PHẦN III: THỰC HÀNH
1)
Viết chương trình tính tổng của n số tự nhiên đầu tiên, với n là số tự nhiên được
nhập từ bàn phím?
2)
Viết chương trình tính tích N số tự nhiên đầu tiên N!=1.2.3…N


3)
Viết chương trình tính trung bình n số thực x 1, x2, x3,…, xn. (n và x1, x2, x3,…, xn.
được nhập từ bàn phím)
4)
Viết chương trình nhận biết một số tự nhiên n được nhập vào từ bàn phím có
phải là 1 số nguyên tố hay không?
5)
Viết chương trình nhập vào n số nguyên và in ra màn hình số lớn nhất và nhỏ
nhất?







×