Câu 3: Trong chương trình Turbo Pascal từ khoá dùng để khai báo tên chương trình là: Câu 4: Trong các tên sau, tên nào là hợp lệ trong ngôn ngữ Pascal?. Giá trị đầu bằng giá trị cuối; b
Trang 1PHÒNG GD&ĐT HUYỆN NÔNG SƠN KIỂM TRA HỌC KỲ II NĂM HỌC 2010-2011
Thời gian: 45 phút (không kể thời gian phát đề)
Thí sinh làm bài trên giấy này
MA TRẬN ĐỀ KIỂM TRA HỌC KÌ II NĂM HỌC 2010-2011
Môn: Tin học 8 (đề chính thức)
Mức độ
Nội dung
Chương trình máy tính
và dữ liệu
1 0.25
1 0.25
2 0.5 Lặp với số lần chưa
biết trước
1 0.25
1 4.0
2 4.25
Làm quen với chương
trình và ngôn ngữ LT
4 1.0
1 0.25
5 1.25
Sử dụng biến trong
chương trình
1 0.25
1 0.25 Tổng cộng 9 2.25 3 0.75 2 7.0 14 10.0
I/ TRẮC NGHIỆM: (3.0 điểm) Khoanh tròn vào chữ cái trước câu trả lời đúng nhất
Câu 1: Trong ngôn ngữ lập trình Pascal, từ không phải từ khóa là:
Câu 2: Viết biểu thức toán a3 -b 3 sang Pascal thì ta viết là:
a aaa-bbb; b a.a.a-b.b.b; c a*a*a-b*b*b; d a3-b3
Câu 3: Trong chương trình Turbo Pascal từ khoá dùng để khai báo tên chương trình là:
Câu 4: Trong các tên sau, tên nào là hợp lệ trong ngôn ngữ Pascal?
a Tam tho ; b Begin ; c Dien_tich ; d 5-Hoa-hong
Câu 5: Cho biết lệnh dùng để xóa màn hình kết quả:
Câu 6: Khi viết câu lệnh lặp “For <biến đếm>:= < giá trị đầu> to <giá trị cuối> do <câu lệnh>;” thì:
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 Tất cả đều sai.
Họ và tên học sinh:………
Lớp 8/…
Phòng thi số:……Số báo danh…………
ĐỀ CHÍNH THỨC
Chữ kí giám thị
………
Chữ kí giám khảo
………
Điểm
Trang 2Câu 7: 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 to 10 do writeln(‘A’);
c For i:=1.5 to 10.5 do writeln(‘A’); d For i:= 1 to 10 do writeln(‘A’);
Câu 8: Cấu trúc của vòng lặp WHILE - DO có dạng:
a While <điều kiện1> do < điều kiện2>; b While <điều kiện> do <câu lệnh>;
c While <câu lệnh> do <điều kiện>; d While <câu lệnh 1> do <câu lệnh 2>; Câu 9: Trong Pascal kết quả của phép tính : (7 Mod 2) bằng:
a 4; b 2 ; c 3 ; d 1;
Câu 10: Cách khai báo biến mảng nào sau đây trong Pascal đúng?
a Var a:array[1 100] of real; b Var a:array[1 50] of real;
c Var a:array[100 1] of real; d Var a:array[1.5 8.5] of real;
Câu 11: Cách khai báo biến nào sau đây là sai?
a.Var a,b,c:real; b.Var a,b:real; c.Var a b:real; d.Var a:real;
Câu 12: Kiểu dữ liệu nào sau đây là kiểu số thực?
II/ THỰC HÀNH: (7.0 điểm)
Câu 1: (3.0 điểm)
Cho đoạn chương trình sau:
Program bai1
Var
i,n: integer;
a:array[1…100] of integer;
Begin
Write(‘nhap n=’); Readln(n);
For i: = 1 to n do begin
writeln(‘nhap so hang thu’,i);
readln(a[i]);
end
For i = 1 to n do
If a[i] >= 8.0 then writeln(hoc sinh gioi) Readln;
End
Yêu cầu:
a/ Hãy khởi động chương trình Pascal và nhập chương trình sau vào máy (1.0 điểm)
b/ Dịch chương trình và sửa lỗi(1.5 điểm)
c/ Lưu lại với tên Bai1.pas (0.5 điểm)
Câu 2 : (4 điểm) Viết chương trình tính tổng của n số tự nhiên đầu tiên, với tổng nhỏ hơn 1000.
- Hết
Trang 3-PHÒNG GD&ĐT HUYỆN NÔNG SƠN HƯỚNG DẪN CHẤM BÀI KIỂM TRA HỌC KÌ 2
Môn: Tin học 8
I/TRẮC NGHIỆM: Mỗi câu đúng được 0,25 điểm
II/THỰC HÀNH: (7.0 điểm)
Câu 1: a Nhập đúng chương trình vào máy : 1.0 điểm.
b Sửa đúng một lỗi:0.3 điểm.(các lỗi sai đã sửa được gạch chân)
Program bai1;
Var
i,n: integer;
a:array[1 100] of integer;
Begin
Write(‘nhap n=’); Readln(n);
For i: = 1 to n do begin
writeln(‘nhap so hang thu’,i);
readln(a[i]);
end;
For i:= 1 to n do
If a[i] >= 8.0 then writeln(‘hoc sinh gioi’) Readln;
End
c Lưu đúng tên theo yêu cầu:0.3 điểm
Câu 2: Viết đúng chương trình, không lỗi: 4.0 điểm
Chương trình :
Program bai2
Var
S, n: integer;
Begin
S:= 0; n:= 0 ; While S< 1000 do begin
n: = n+1 ; S: = S + n ; end;
Writeln(‘S=’, S);
Readln;
End
ĐỀ CHÍNH THỨC
Trang 5PHÒNG GD&ĐT HUYỆN NÔNG SƠN KIỂM TRA HỌC KỲ II NĂM HỌC 2010-2011
Thời gian: 45 phút (không kể thời gian phát đề)
Thí sinh làm bài trên giấy này
MA TRẬN ĐỀ KIỂM TRA HỌC KÌ II NĂM HỌC 2010-2011
Môn: Tin học 8 (đề dự bị)
Mức độ
Nội dung
Tổng cộng
Chương trình máy tính
và dữ liệu
1 0.25
1 0.25
2 0.5
Lặp với số lần chưa
biết trước
1 4.0
1 4.0
Làm quen với chương
trình và ngôn ngữ LT
2 0.5
2 0.5
Sử dụng biến trong
chương trình
2 0.5
1 0.25
3 0.75 Tổng cộng 9 2.25 3 0.75 2 7.0 14 10.0
I/ TRẮC NGHIỆM: (3.0 điểm) Khoanh tròn vào chữ cái trước câu trả lời đúng nhất
Câu 1: Để thoát khỏi Turbo Pascal ta nhấn tổ hợp phím nào ?
a Ctrl + F9; b Ctrl + X; c Alt + X; d Alt + F9;
Câu 2: Phần nguyên trong phép chia của hai số nguyên 16 và 5 là:
a 16 div 5 = 1; b 16 mod 5 = 1; c 16 div 5 = 3; d 16 mod 5 = 3;
Câu 3: If Then Else là:
c Vòng lặp không xác định; d Vòng lặp xác định
Họ và tên học sinh:………
Lớp 8/…
Phòng thi số:……Số báo danh…………
ĐỀ DỰ BỊ
Chữ kí giám thị
………
Chữ kí giám khảo
………
Điểm
Trang 6Câu 4: Biến a được nhận các giá trị là 0 ; -1 ; 1 ; 2,3 Ta có thể khai báo a thuộc kiểu dữ liệu nào?
a Integer và Longint; b Integer; c Real; d Char.
Câu 5: Câu lệnh pascal nào sau đây là hợp lệ?
a For i:=50 to 1 do writeln(‘A’); b For i:= 1 to 10 do writeln(‘A);
c For i:=1 to 10.5 do writeln(‘A’); d For i:= 1 to 10 do writeln(‘A’);
Câu 6: Cách khai báo hằng nào sau đây đúng?
Câu 7: Khai báo nào sau đây đúng?
a Program: V_D; b Program Vi_du; c Program V D; d Program 5VD;
Câu 8: Kiểu dữ liệu nào sau đây là kiểu số nguyên?
Câu 9: Biểu thức toán học 18 46 1− −4
+ được viết dưới dạng biểu thức trong Pascal là:
a (18-4)/(6+1-4); b (18-4)/6+1-4; c 18-4/6+1-4; d (18 - 4)/(6+1)-4;
Câu 10: Câu lệnh nhập mảng trong Pascal nào sau đây là đúng?
Câu 11: Phần mềm dùng để quan sát hình không gian là:
Câu 12: Cấu trúc chung hợp lý của một chương trình Pascal là:
a Begin -> Program -> End; b Program -> End -> Begin;
c End -> Program -> Begin; d Program -> Begin -> End
II/ THỰC HÀNH: (7.0 điểm)
Câu 1: (3.0 điểm) Cho đoạn chương trình sau:
Program bai1
Var
Gioi, i n: integer;
a:array[1 20] of integer;
Begin
Gioi = 0;
For i: = 1 to 20 do begin
writeln(‘nhap so hang thu,i’);
readln(a[i]);
end;
For i: = 1 to n do
If a[i] >= 8.0 then Gioi:=gioi +1;
writeln(‘so hoc sinh gioi la’, Gioi) Readln;
End;
Yêu cầu:
a/ Hãy khởi động chương trình Pascal và nhập chương trình sau vào máy (1 điểm)
b/ Dịch chương trình và sửa lỗi(1.5 điểm)
Trang 7c/ Lưu lại với tên Bai1.pas (0,5 điểm)
Câu 2 : (4.0 điểm) Viết chương trình tính tổng của n số tự nhiên đầu tiên, với tổng nhỏ hơn 100 và n bắt
đầu từ 5
Trang 8PHÒNG GD&ĐT HUYỆN NÔNG SƠN HƯỚNG DẪN CHẤM BÀI KIỂM TRA HỌC KÌ 2
Môn: Tin học 8
I/TRẮC NGHIỆM: Mỗi câu đúng được 0,25 điểm
II/THỰC HÀNH: (7.0 điểm)
Câu 1: a Nhập đúng chương trình vào máy : 1.0 điểm.
b Sửa đúng một lỗi:0.3 điểm.(các lỗi sai đã sửa được gạch chân)
Program bai1;
Var
Gioi, i , n: integer;
a:array[1 20] of integer;
Begin
Gioi: = 0;
For i: = 1 to 20 do begin
writeln(‘nhap so hang thu’,i);
readln(a[i]);
end;
For i: = 1 to n do
If a[i] >= 8.0 then Gioi:=Gioi +1;
writeln(‘so hoc sinh gioi la’, Gioi) Readln;
End
c Lưu đúng tên theo yêu cầu:0.3 điểm
Câu 2: Viết đúng chương trình, không lỗi: 4.0 điểm
Chương trình:
Program bai2
Var
S, n: integer;
Begin
S:= 0; n:= 5 ; While S< 1000 do begin
S: = S + n ; n: = n+1 ; end;
Writeln(‘S=’, S);
Readln;
End
ĐỀ DỰ BỊ