If ; then else ; Câu 6: Trong ngơn ngữ lập trình Pascal, phát biểu nào sau đây là đúng với câu lệnh rẽ nhánh If…then…?. Nếu sau then muốn thực hiện nhiều câu lệnh thì các lệnh phải đặt
Trang 1PHỊNG GD&ĐT CHÂU THÀNH
Trường THCS BIÊN GIỚI
CỘNG HỊA XÃ HỘI CHỦ NGHĨA VIỆT NAM
Độc lập – Tự do – Hạnh phúc
ĐỀ THI KHẢO SÁT CHẤT LƯỢNG GIỮA HKII
Mơn thi: TIN ; LỚP: 8
Thời gian: 45 phút (khơng kể thời gian phát đề)
MA TRẬN ĐỀ
Nhận biết Thông hiểu Vận dụng
Các cấp độ tư duy
Câu lệnh điều kiện
2 0.5đ
2 0.5đ
4 1đ
Câu lệnh lặp
3 0.75đ
2 3.5đ
3 0.75đ
8 5đ
Lặp với số lần chưa biết trước
1 0.25đ
1 0.25đ
1 1.5đ
1 2đ
4 4đ
5đ
7
3đ
1
2đ
16 10đ NỘI DUNG ĐỀ
I / Trắc nghiệm(3 đ)
Khoanh tròn chữ cái đầu câu trả lời mà em cho là đúng nhất
Câu 1: Sau khi thực hiện chương trình sau, giá trị của biến j bằng bao nhiêu?
j := 0;
For i := 1 to 5 do j := j + 2;
A 0 B 2 C 5 D 10
Câu 2: Câu lệnh nào hợp lệ trong các câu lệnh pascal sau?
A for i := 10 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 3: Trong đoạn chương trình sau, có mấy câu lệnh được lặp lại?
S := 0; dem := 0; n := 10;
While dem > n do
Begin
dem := dem +1;
Write(‘ Nhap so X’,dem,’=’);Readln(X);
Trang 2S := S + X ; end;
Câu 4: Câu lệnh nào hợp lệ trong các câu lệnh pascal sau?
A X:= 10; While X := 10 do X:= X + 5;
B X:= 10; While X = 10 do X = X + 5;
C X:= 10; While X = 10 do X:= X + 5;
D X:= 10 While X = 10 do X:= X + 5;
Câu 5: Trong ngơn ngữ lập trình Pascal câu lệnh nào sau đây là đúng:
A If <điều kiện> then <câu lệnh 1> else <câu lệnh 2>
B If <điều kiện> then <câu lệnh 1>; else <câu lệnh 2>;
C If <điều kiện> then <câu lệnh 1> else <câu lệnh 2>;
D If <điều kiện> ; then <câu lệnh 1> else <câu lệnh 2>;
Câu 6: Trong ngơn ngữ lập trình Pascal, phát biểu nào sau đây là đúng với câu lệnh rẽ
nhánh If…then…?
A Nếu sau then muốn thực hiện nhiều câu lệnh thì các lệnh phải đặt giữa hai dấu ngoặc
đơn
B Nếu sau then muốn thực hiện nhiều câu lệnh thì các lệnh phải đặt giữa Begin và End
C Nếu sau then muốn thực hiện nhiều câu lệnh thì các lệnh phải đặt giữa Begin và
End;
D Nếu sau then muốn thực hiện nhiều câu lệnh thì các lệnh phải đặt giữa Begin và End.
Câu 7: Trong ngơn ngữ lập trình Pascal câu lệnh nào sau đây là đúng:
A If a=5 then a:=d+1; else a:=d+2;
B If a=5 then a:=d+1else a:=d+2;
C If a=5 then a=d+1; else a=d+2;
D If a=5 then a:=d+1else a:=d+2
Câu 8: Trong ngơn ngữ Pascal, muốn kiểm tra đồng thời cả ba giá trị của A, B, C cĩ cùng lớn hơn 0 hay khơng ta viết câu lệnh If thế nào cho đúng nhất?
A If A, B, C > 0 then…
B IF (A>0) and (B>0) and (C>0) then…
C IF A>0 and B>0 and c>0 then…
D IF (A>0) or (B>0) or (c>0) then…
Câu 9: Trong ngơn ngữ Pascal, về mặt cú pháp câu lệnh nào sau đây đúng với cấu trúc lặp For cĩ một lệnh con?
A For i:=1 to 100 do a:=a-1; B For i:=1 to 100 do; a:=a-1;
C For i:=1 to 100 do a:=a-1 D For i:=1; to 100 do a:=a-1;
Câu 10: Trong lệnh lặp For…to…do của Pascal, trong mỗi vịng lặp biến đếm thay đổi như thế nào?
Câu 11: 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?)
Câu 12: Trong ngơn ngữ Pascal, đoạn chương trình sau đưa ra màn hình kết quả gì?
For i:=10 to 1 do write (i,’ ‘);
Trang 3A 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ì
II/ Tự luận (7 điểm)
Câu 13: (2đ) Hãy nêu tác dụng của câu lệnh lặp trong lập trình? Cho ví dụ về hoạt động
lặp trong cuộc sống mà em biết
Câu 14: (2đ) Hãy tìm hiểu thuật toán sau, máy tính sẽ thực hiện bao nhiêu vòng lặp? Khi
kết thúc giá trị của S bằng bao nhiêu?
Bước 1: S 10, X 0.5
Bước 2: Nếu S ≤ 5.5, chuyển sang bước 4
Bước 3: S S – X và quay lại bước 2
Bước 4: Thông báo S và kết thúc thuật toán
Câu 15:Em hãy vi ết chương trình tính tổng các số tự nhiên từ 100 đến 1000 ( Sử dụng vịng
l ặp xác định và vịng lặp khơng xác định)(3đ)
HƯỚNG DẪN CHẤM
A/ Trắc nghiệm(3 đ)
Đáp
án
đáp án đúng D Điểm 0,2
5 0,25 0,25 0,25 0,25 0,25 0,25 0,5 0,25 0,25 0,25 0,25
II/T ự luận (7 điểm)
13 Tác dụng của câu lệnh lặp trong lập trình là làm đơn giản và giảm
nhẹ công sức của người viết chương trình
Cho ví dụ về hoạt động lặp trong cuộc sống đúng
1đ
1đ
14 9 vòng lặp ,
1đ
15 Viết chương trình tính tổng các số tự nhiên từ 100 đến 1000
* Vịng lặp xác định:
Program tinh_tong;
Var i, S: Integer;
Begin For i:= 100 to 1000 do S:= S + i;
Wirteln(‘ tong cac so tu nhien tu 100 den 1000 la:’,S);
Readln;
End.
* Vịng lặp khơng xác định:
Program tinh_tong;
0.25đ
0.25đ 0.25đ 0.25đ 0.25đ 0.25đ
Trang 4Var i, S: Integer;
Begin i:= 100;
S:= 0;
While i > 1000 do S:= S + i;
i:= i + 1;
Writeln(‘ Tong cac so tu nhien tu 100 den 1000 la:’,S);
Readln;
End.
0.25ñ 0.25ñ 0.25ñ 0.25ñ 0.25ñ
0.25ñ