Đề kiểm tra 1 tiết học kì 2 Môn Tin 8
Câu 13: Đoạn lệnh sau đây :
So : = 1;
While So < 10 do writeln(So);
So : = So + 1
sẽ cho kết quả gì ?
A. in ra 2.
B. In ra các số từ 1 đến 10;
C. In ra vô hạn các số 1, mỗi số viết trên một dòng;
D. In ra các số từ 1 đến 9;
Trường DTNT Đạtẻh Đề kiểm tra 1 tiết HK2 Năm học 2012-2013 Môn Tin 8 – thời gian làm bài 45 phút Phần Trắc nghiệm 20 phút (Mỗi câu đúng được 0.25 điểm) Câu 1: Câu lệnh pascal nào sau đây là hợp lệ? A. For i:= ’1’ to ‘10’ do writeln(‘A’); B. For i:= 2.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: Pascal sử dụng câu lệnh lặp nào sau đây để lặp với số lần chưa biết trước? A. Ifthenelse; B. If..then; C. Whiledo; D. Fordo; Câu 3: Cho S và i là biến nguyên. Khi chạy đoạn chương trình : S := 1; for i:=1 to 5 do s := s+i; Kết quả in lên màn hình là của s là : A. 15 B. 16 C. 11 D. 22 Câu 4: Trong câu lệnh lặp for i:=0 to 100 do begin end; câu lệnh ghép được thực hiện bao nhiêu lần (hay bao nhiêu vòng lặp được thực hiện)? A. 102 B. 101 C. 100 D. 99 Câu 5: Xem ví dụ sau trong pascal: Uses crt; Var i:integer; Begin Clrscr; I:=1; while i < 14 do begin Writeln(‘0’); i := i+1 End; Readln; End. Ví dụ trên ghi ra màn hình bao nhiêu chữ số 0? A. 14; B. 13; C. 15; D. 16; Câu 6: Hãy đọc đoạn chương trình sau: s:= 0; for i:= 1 to 5 do s := s + 1; Sau khi thực hiện xong, kết quả s bằng: A. 10 B. 16 C. 21 D. 15 Câu 7: Sau khi thực hiện đoạn chương trình Pascal : X:=3 For i : = 1 to 3 do x : = x - 1 X sẽ nhận được giá trị nào dưới đây ? A. 0; B. 1 ; C. -4 ; D. – 1; Câu 8: điều kiện trong câu lệnh lặp với số lần chưa biết trước thường là : A. phép gán B. Câu lệnh đơn C. Câu lệnh ghép D. Phép so sánh Câu 9: câu lệnh lặp For i:=1 to 5 do Writeln(‘Day la lan lap thu ‘,i); sẽ in ra màn hình 5 dòng chữ trong đó dòng thứ 3 có nội dung là: A. Day la lan lap thu i B. Day la lan lap thu, i C. Day la lan lap thu 3 D. Day la lan lap thu , 3 Câu 10: Phát biểu nào sau đây đúng nhất khi nói về câu lệnh lặp với số lần chưa biết trước: A. Kiểm tra điều kiện sau khi thực biện câu lệnh B. Nếu điều kiện đúng thì thực hiện câu lệnh ngược lại ngừng vòng lặp C. Nếu điều kiện đúng thì thực hiện câu lệnh và kết thúc D. Nếu điều kiện sai thì thực hiện câu lệnh và kết thúc Câu 11: Cho đoạn chương trình sau: x:=0; tong:=20; while tong<=20 do begin writeln(tong);tong:=tong - 1;end; x:=tong; Sau khi đoạn chương trình trên được thực hiện, giá trị của x bằng bao nhiêu ? A. 20 B. 21 C. Không xác định được D. 0 Câu 12. Với các câu lệnh sau chương trình thực hiện bao nhiêu vòng lặp S:=0; n:=0; while S<=10 do begin n:=n+1; S:=S+n end; A. 6 B. 5 C. 4 D. 3 Câu 13: Đoạn lệnh sau đây : So : = 1; While So < 10 do writeln(So); So : = So + 1 sẽ cho kết quả gì ? A. in ra 2. B. In ra các số từ 1 đến 10; C. In ra vô hạn các số 1, mỗi số viết trên một dòng; D. In ra các số từ 1 đến 9; Câu 14: Điều kiện để thực hiện trong câu lệnh lặp for :=to do là: A. giá trị của biến đếm phải nhỏ hơn giá trị đầu B. giá trị của biến đếm phải lớn hơn giá trị cuối C. giá trị của biến đếm phải nhỏ hơn giá trị cuối D. giá trị của biến đếm phải nhỏ hơn hoặc bằng giá trị cuối Câu 15: Sau khi thực hiện đoạn chương trình sau, giá trị của biến k bằng bao nhiêu? k: = 0; For i:= 1 to 3 do k:= k + 2; A. 6 B. 8 C. 5 D. 2 Câu 16: Em được học vẽ hình với phần mềm nào? A. Geogebra; B. Pascal; C. Mario; D. Finger Break out; Câu 17: Hãy đọc đoạn chương trình sau: s:=0; for i:= 1 to 5 do s:= s * i; Sau khi thực hiện xong, kết quả s bằng: A. 15 B. 0 C. Kết quả khác D. 120 Câu 18: Cho S và i là biến nguyên. Khi chạy đoạn chương trình : s:=0; for i:=1 to 3 do s := s+2*i; writeln(s); Kết quả in lên màn hình là : A. 12 B. 10 C. 0 D. 6 Câu 19: 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 ?) A. Không lần nào. B. 1 lần. C. 2 lần. D. 10 lần. Câu 20: Hãy cho biết số lần lặp của câu lệnh for sau đây: “for i:=1 to 5 do ..” A. 6 lần B. 5 lần C. 4 lần D. 3 lần Phần tự luận 25 phút Viết và giải thích cú pháp câu lệnh lặp với số lần chưa biết trước. Dùng vòng lặp for......do viết 1 câu lệnh in ra các số từ 1 đến 100 Dùng vòng lặp while ... do viết chương trình in ra màn hình tổng nhỏ nhất các số tự nhiên lớn hơn 100 dựa vào thuật toán sau B1 Sç 0; nç0 B2 nếu S <=100 thì SçS + n ngược lại chuyển đến b4 B3 nçn+1 quay lại b2 B4 thông báo kết quả S và kết thúc MA TRẬN Mức độ Kiến thức Nhận biết Thông Hiểu Vận dụng Tổng TN TL TN TL TN TL Họ vẽ hình với phần mềm Geogebra Số câu 1 1 Điểm 0.25 0.25 Câu lệnh lặp với số lần biết trước Số câu 2 9 1 12 Điểm 0.5 2.25 1 3.75 Câu lệnh lặp với số lần chưa biết trước Số câu 3 1 5 1 10 Điểm 0.75 2 1.25 2 6 Tổng Số câu 6 1 15 1 23 Điểm 1.5 2 3.5 3 10 ĐÁP ÁN Trắc nghiệm 1 2 3 4 5 6 7 8 9 10 D C B B B D A D C B 11 12 13 14 15 16 17 18 19 20 C B C D A A B A D B Tự luận Viết và giải thích cú pháp câu lệnh lặp với số lần chưa biết trước. While Do 1đ Đều kiện thường là phép so sánh 0.5 đ Câu lệnh có thể là câu lệnh đơn hoặc câu lệnh ghép 0.5đ Dùng vòng lặp for......do viết 1 câu lệnh in ra các số từ 1 đến 100 For i:=1 to 100 do writeln(i) 1đ Dùng vòng lặp while ... do viết chương trình in ra màn hình tổng nhỏ nhất các số tự nhiên lớn hơn 100 Program INRATONGNHONHAT; (1) Uses crt; (2) VAR S, n:integer; (3) BEGIN (4) Clrscr; (5) While S<=100 do begin n:=n+1; S:=S+n End; (6) Writeln(S); (7) Readln (8) END. (9) Viết đúng dòng (6) 1đ Viết đúng dòng (7) 0.5đ Viết đúng các dòng còn lại 0.5đ
File đính kèm:
- HK2-2013_KT TIN 8 1T_T10.doc