KIỂM TRA HỌC KỲ II - NĂM HỌC 2009 - 2010 Môn: Tin học - Khối 8 Thời gian làm bài: 45 phút (Không kể thời gian phát đề ) Họ và tên : Lớp: . Đề bài I. TRẮC NGHIỆM Hãy khoanh tròn vào đầu chữ cái của câu trả lời đúng nhất, trong các phương án a, b, c, d Câu 1: 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 2: 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 3: 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:=a+1; else a:=a+2; B. If a=5 then a:=a+1else a:=a+2 C. If a=5 then a=a+1; else a=a+2; D. If a=5 then a:=a+1 else a:=a+2; Câu 4: Sau khi thực hiện đoạn chương trình sau, giá trị của biến S bằng bao nhiêu: s:=0; for i:=1 to 5 do s := s+i; A.11 B. 55 C. 15 D. 51 Câu 5: 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 gì? A. Interger; B. real; C. string D. Tất cả các kiểu trên đều được Câu 6: 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 7: Điền X vào các ô sao cho phù hợp và giải thích vì sao? II. TỰ LUẬN: Câu 1: Gạch chân dưới những câu lệnh em cho là sai rồi viết lại câu lệnh đĩ cho đúng: Program Tinh tong; Uses crt; Var N; i: Integer; S: Longint; BEGIN Clrscr; Write(‘Nhap vao so N =’ ); Readln(N); S:=0 For i =1 to N do S:=S+i; Writeln(‘Tong cua’,N,’so dau tien s = ‘, s); Readln END. Câu 2: Viết chương trình giải quyết bài toán: Viết chương trình tính tổng: 222 1 3 1 2 1 1 n S ++++= Trong đó n là số nguyên nhập từ bàn phím. Câu Đúng Sai a) if a>b then max:=a; else max:=b; b) if a>b then min:=b else min:=a; c) for i:=1 to 50 do x:=x+1; d) for i:=1.5 to 10 do m:=m + 1; HƯỚNG DẪN CHẤM VÀ BIỂU ĐIỂM MÔN TIN 8 HỌC KÌ II – NĂM HỌC 2008 -2009 I. TRẮC NGHIỆM: (5 điểm) Từ câu 1 – 6 mỗi câu đúng được 0,5 điểm Câu 1 Câu 2 Câu 3 Câu 4 Câu 5 Câu 6 B A D C A C Câu 7: mỗi ý đúng được 0,5 điểm II. Tự luận (5 điểm) Câu 1: (2 điểm) Program Tinh tong; ……………………………………………………………………………………… … Uses crt; ……………………………………………………………………………………… … . Var N; i: Integer; ……………………………………………………………………………………… … S: Longint; BEGIN Clrscr; ……………………………………………………………………………………… … . Write(‘Nhap vao so N =’ ); Readln(N); S:=0 For i =1 to N do S:=S+i ; ……………………………………………………………………………………… …… Writeln(‘Tong cua’,N,’so dau tien s = ‘, s); Readln ……………………………………………………………………………………… …… END. Program Tinh_tong; (0,5 điểm) Var N, i: Integer; (0,5 điểm) S:=0; (0,5 điểm) Câu Đúng Sai a) if a>b then max:=a; else max:=b; X b) if a>b then min:=b else min:=a; X c) for i:=1 to 50 do x:=x+1; X d) for i:=1.5 to 10 do m:=m + 1; X For i: =1 to N do S:=S+i ; (0,5 điểm) ……………………………………………………………………………………… …… Caâu 2: (3 điểm) Program Tong_Nghich_Dao; Uses crt; Var S: real; n, i: integer; Begin Clrscr; Write(‘Nhap so n = ‘); Readln(n); S:= 0; For i:= 1 to n do S: = S + 1/i*i; Writeln(‘Tong can tim la: ‘, S:6:2); Readln End. . HƯỚNG DẪN CHẤM VÀ BIỂU ĐIỂM MÔN TIN 8 HỌC KÌ II – NĂM HỌC 20 08 -2009 I. TRẮC NGHIỆM: (5 điểm) Từ câu 1 – 6 mỗi câu đúng được. so N =’ ); Readln(N); S:=0 For i =1 to N do S:=S+i; Writeln(‘Tong cua’,N,’so dau tien s = ‘, s); Readln END. Câu 2: Viết chương trình giải quyết bài toán: