Câu 7: Trong số các hoạt động sau đây, hoạt động nào sẽ được thực hiện lặp lại với số lần chưa biết trước.. Tính tổng của 20 số tự nhiên đầu tiên?[r]
Trang 1PHÒNG GD&ĐT TP HỘI AN
TRƯỜNG THCS HUỲNH THỊ LỰU KIỂM TRA HỌC KỲ II Năm học:2019-2020
Môn: Tin học 8 Thời gian: 45 phút
Họ tên : …… Lớp: Ngày kiểm tra
A LÝ THUYẾT(5điểm)
* Khoanh tròn vào một câu trả lời mà em cho là đúng nhất:
Câu 1: 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 2: 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?
Câu 3: Cú pháp của câu lệnh While…do?
A While <điều kiện> to <câu lệnh>; B While <câu lệnh> do <điều kiện> ;
C While <điều kiện> do <câu lệnh>; D While <điều kiện>; do <câu lệnh>; Câu 4: Vòng lặp While <Điều kiện> do <Câu lệnh>; là vòng lặp:
A Chưa biết trước số lần lặp B 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 5: Đoạn lệnh sau đây
so:=1;
While so<10 do writeln(so);
so:=so+1;
sẽ cho kết quả nào?
A In ra các số từ 1 đến 9 B In ra các số từ 1 đến 10.
C In ra vô hạn các số 1, mỗi số trên một dòng D In ra số 10.
Câu 6: Sau khi đoạn chương trình ở câu 5 được thực hiện, giá trị của biến “so” bằng bao nhiêu?
Câu 7: Trong số các hoạt động sau đây, hoạt động nào sẽ được thực hiện lặp lại với số lần chưa biết trước?
A Tính tổng của 20 số tự nhiên đầu tiên B Nhập 50 số nguyên từ bàn phím
C Học bài đến khi thuộc D Nam đi học ngày 2 buổi.
Câu 8: Trong các câu lệnh sau, câu lệnh nào đúng?
A while i:=1 do t:=10; B while a<b; do write(‘a nho hon b’);
C while i=1 do t=10; D while a<b do write(‘a nho hon b’);
Câu 9: 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> : aray [<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 >;
Trang 2D var <Tên mảng> : array [<chỉ số đầu>…<chỉ số cuối>] for <kiểu dữ liệu >;
Câu 10: Chọn khai báo hợp lệ:
A Var a,b: array[1 n] of real; B Var a,b: array[1 : n] of Integer;
C Var a,b: array[1 100] of real; D Var a,b: array[1 … 100] of real;
Câu 11: Biến a được nhận các giá trị là 0 ; -1 ; 1 ; 2,3 Ta có thể khai báo biến a thuộc kiểu dữ liệu nào?
Câu 12: Mảng A: array[5 203] of integer; có bao nhiêu phần tử?
Cho biết khẳng định sau đúng hay sai bằng cách đánh dấu (X) vào ô Đúng hay Sai tương
ứng:
Câu 13 Trong câu lệnh For…do nếu chỉ số đầu nhỏ hơn chỉ số cuối thì chương trình sẽ báo lỗi.
Câu 14 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
vòng lặp có giá trị sai
Câu 15 Trong pascal khi khai báo một biến kiểu mảng thì chỉ số
đầu và chỉ số cuối là các số thực
Câu 16 Có thể đọc giá trị, gán giá trị, thực hiện tính toán với từng
phần tử của mảng
Hãy sửa lại các câu lệnh sau đây cho đúng:
Câu 17: For i: =1,5 to 105 do x:=x+1;
Câu 18: Wheli a=b do write(‘a bang b’);
Câu 19: Y: array[1,100] of real;
Câu 20: A: array(2 99) of real;
B.THỰC HÀNH(5điểm)
Bài 1: Viết chương trình nhập vào từ bàn phím điểm kiểm tra môn Toán của n học sinh
trong lớp với 1 n 50
a/ Gõ chương trình sau đây: (1 điểm)
Uses crt;
Var n, i : integer; a:array[1,50] of real;
BEGIN
Write(‘nhap so hoc sinh trong lop: ’); readln(n);
While (n<1) or (n>50) do;
Begin
Write(‘nhap lai’); readln(n);
For i:=1 downto n do
Begin
Write( ‘a[‘,i,’]=’); readln(A[i]);
End
readln
END
b/ Sửa lỗi sai có trong chương trình.(3 điểm)
Bài 2: Viết chương trình nhập n số nguyên từ bàn phím (1 điểm)
Trang 3ĐÁP ÁN VÀ BIỂU ĐIỂM
A.LÝ THUYẾT: (5 điểm)
Mỗi câu trả lời đúng 0.25 điểm
0
1 1
1 2
1 3
1 4
1 5
1 6
Câu 17: For i: =15 to 105 do x:=x+1; 0.25 điểm
Câu 18: While a=b do write(‘a bang b’); 0.25 điểm
Câu 19: Y: array[1 100] of real; 0.25 điểm
Câu 20: A: array[2 99] of real; 0.25 điểm
B.THỰC HÀNH: (5điểm)
Bài 1:
b/
Uses crt;
Var n, i : integer; a:array[1 50] of real; {sửa dấu , thành }
BEGIN
Write(‘nhap so hoc sinh trong lop: ’); readln(n);
While (n<1) or (n>50) do {bỏ dấu ; }
Begin
Write(‘nhap lai’); readln(n);
End; {thêm end }
For i:=1 to n do {sửa downto thành to }
Begin
Write( ‘a[‘,i,’]=’); readln(a[i]); {sửa A thành a}
End; {sửa dấu thành ;}
readln
END
0.5 điểm
0.5 điểm
0.5 điểm 0.5 điểm
0.5 điểm 0.5 điểm
Bài 2:
Uses crt;
Var i,n : integer;
A: array[1 200] of integer;
0.25 điểm 0.25 điểm BEGIN
Clrscr;
Write(‘so cac so nguyen can nhap la: ’); readln(n); 0.25 điểm For i:=1 to n do
Begin
Write( ‘a[‘,i,’]=’); readln(A[i]);
End
readln
END
0.25 điểm
Trang 4BẢNG MÔ TẢ A.LÝ THUYẾT
Câu 1: Biết được cú pháp lệnh lặp For do
Câu 2: Hiểu được cách hoạt động của lệnh lặp For do.
Câu 3: Nắm được cú pháp của lệnh lặp While do.
Câu 4 : Hiểu được cách sử dụng lệnh lặp while do Câu 5: Hiểu được cách hoạt động của lệnh lặp While do.
Câu 6 : Hiểu được cách hoạt động của lệnh lặp While do.
Câu 7: Nhận biết được hoạt động lặp với số lần không biết trước Câu 8: Nắm được cú pháp của lệnh lặp While do.
Câu 9: Nhận biết được cú pháp khai báo biến mảng.
Câu 10: Khai báo biến mảng.
Câu 11: Nhận biết được kiểu dữ liệu khi khai báo biến mảng Câu 12: Tính được số phần tử của mảng.
Câu 13: Hiểu được cách hoạt động lệnh lặp For.do.
Câu 14: Hiểu được cách hoạt động lệnh lặp While do.
Câu 15: Hiểu được cách khai báo biến kiểu mảng.
Câu 16: Hiểu được cách sử dụng phần tử của mảng.
Câu 17: Nắm được cú pháp lệnh lặp For do.
Câu 18: Nắm được cú pháp lệnh lặp while do.
Câu 19: Khai báo được biến kiểu mảng.
Câu 20: Khai báo được biến kiểu mảng.
B.THỰC HÀNH
Bài 1:
a/ Gõ được chương trình Pascal trên máy
b/ Thực hiện thao tác dịch và sửa chương trình
Bài 2:
Sử dụng dữ liệu kiểu mảng để viết chương trình nhập dữ liệu
Trang 5KIỂM TRA HỌC KỲ II MÔN TIN HỌC 8 B.THỰC HÀNH(5điểm)
Bài 1: Viết chương trình nhập vào từ bàn phím điểm kiểm tra môn Toán của n học sinh
trong lớp với 1 n 50
a/ Gõ chương trình sau đây: (1 điểm)
Uses crt;
Var n, i : integer; a:array[1,50] of real;
BEGIN
Write(‘nhap so hoc sinh trong lop: ’); readln(n);
While (n<1) or (n>50) do;
Begin
Write(‘nhap lai’); readln(n);
For i:=1 downto n do
Begin
Write( ‘a[‘,i,’]=’); readln(A[i]);
End
readln
END
b/ Sửa lỗi sai có trong chương trình.(3 điểm)
Bài 2: Viết chương trình nhập n số nguyên từ bàn phím (1 điểm)
KIỂM TRA HỌC KỲ II MÔN TIN HỌC 8 B.THỰC HÀNH(5điểm)
Bài 1: Viết chương trình nhập vào từ bàn phím điểm kiểm tra môn Toán của n học sinh
trong lớp với 1 n 50
a/ Gõ chương trình sau đây: (1 điểm)
Uses crt;
Var n, i : integer; a:array[1,50] of real;
BEGIN
Write(‘nhap so hoc sinh trong lop: ’); readln(n);
While (n<1) or (n>50) do;
Begin
Write(‘nhap lai’); readln(n);
For i:=1 downto n do
Begin
Write( ‘a[‘,i,’]=’); readln(A[i]);
End
readln
END
b/ Sửa lỗi sai có trong chương trình.(3 điểm)
Bài 2: Viết chương trình nhập n số nguyên từ bàn phím (1 điểm)