Đề thi học kì 2 Tin học Lớp 8 - Năm học 2022-2023 (Có đáp án và thang điểm)

Câu 1. Trong câu lệnh lặp For i:=1 to -19 do begin...end; câu lệnh ghép được thực hiện bao nhiêu lần?

A. Không lần nào B. 1 lần C. 2 lần D. 10 lần

Câu 2. Đoạn lệnh sau đây: s:=10; while s>10 do writeln(s); s:=s+1; sẽ cho kết quả là gì?

A. In ra các số từ 1 đến 9 C. In ra vô hạn các số 1, mỗi số trên một dòng
B. In ra các số từ 1 đến 10 D. In ra tổng từ 1 đến 10.

Câu 3 Số vòng lặp trong câu lệnh:

For (Biến đếm):=(Giá trị đầu)to (Giá trị cuối) do (câu lệnh); được xác định:

A. Giá trị đầu - Giá trị cuối + 1 C. Giá trị cuối - Giá trị đầu + 1
B. Giá trị đầu - Biến đếm + 1 D. Giá trị cuối  - Biến đếm + 1

Câu 4: Trong câu lệnh lặp: For (Biếnđếm):=(Giá trị đầu) to (Giá trị cuối) do (câu lệnh); Khi thực hiện ban đầu Biến đếm nhận giá trị = Giá trị đầu, sau mỗi vòng lặp biến đếm tăng thêm:

A. 1 đơn vị  B. 2 đơn vị C. 3 đơn vị  D. 4 đơn vị 
docx 4 trang Ánh Mai 15/06/2023 4200
Bạn đang xem tài liệu "Đề thi học kì 2 Tin học Lớp 8 - Năm học 2022-2023 (Có đáp án và thang điểm)", để tải tài liệu gốc về máy hãy click vào nút Download ở trên.

File đính kèm:

  • docxde_thi_hoc_ki_2_tin_hoc_lop_8_nam_hoc_2022_2023_co_dap_an_va.docx

Nội dung text: Đề thi học kì 2 Tin học Lớp 8 - Năm học 2022-2023 (Có đáp án và thang điểm)

  1. PHÒNG GD&ĐT . ĐỀ THI HỌC KỲ II NĂM HỌC 2022 – 2023 Trường THCS . MÔN: TIN HỌC (KHỐI 8) ĐỀ CHÍNH THỨC Thời gian: 45 phút (không kể thời gian phát đề) Họ tên HS: Lớp 8 ĐIỂM LỜI NHẬN XÉT CỦA GIÁO VIÊN I/ TRẮC NGHIỆM: ( 5.0 điểm) Hãy khoanh tròn vào chữ cái đứng đầu cho đáp án đúng nhất. Mỗi câu trả lời đúng được 0.25 điểm: Câu 1. Trong câu lệnh lặp For i:=1 to -19 do begin end; câu lệnh ghép được thực hiện bao nhiêu lần? A. Không lần nào B. 1 lần C. 2 lần D. 10 lần Câu 2. Đoạn lệnh sau đây: s:=10; while s>10 do writeln(s); s:=s+1; sẽ cho kết quả là gì? A. In ra các số từ 1 đến 9 C. In ra vô hạn các số 1, mỗi số trên một dòng B. In ra các số từ 1 đến 10 D. In ra tổng từ 1 đến 10. Câu 3: Số vòng lặp trong câu lệnh: For (Biến đếm):=(Giá trị đầu) to (Giá trị cuối) do (câu lệnh); được xác định: A. Giá trị đầu - Giá trị cuối + 1 C. Giá trị cuối - Giá trị đầu + 1 B. Giá trị đầu - Biến đếm + 1 D. Giá trị cuối - Biến đếm + 1 Câu 4: Trong câu lệnh lặp: For (Biến đếm):=(Giá trị đầu) to (Giá trị cuối) do (câu lệnh); Khi thực hiện ban đầu Biến đếm nhận giá trị = Giá trị đầu, sau mỗi vòng lặp biến đếm tăng thêm: A. 1 đơn vị B. 2 đơn vị C. 3 đơn vị D. 4 đơn vị Câu 5: Trong câu lệnh lặp với số lần xác định trước, lệnh lặp sẽ dừng lại khi nào? A. Khi điều kiện đúng C. Khi chạy hết vòng lặp B. Khi điều kiện sai D. Khi có lệnh end; Câu 6: Tìm giá trị S khi thực hiện đoạn chương trình sau đây S:=0; For i:=1 to 5 do S:= S+i; A. S=0 B. S= 1 C. S=10 D. S=15. Câu 7: Hãy cho biết kết quả của b trong đoạn chương trình sau đây. a:=1; b:=5; while a>=10 do begin b:=b-a; a:=a-1; end; A. b=5. B. b=4. C. b=15. D. b=20. Câu 8: Lúc nào thì câu lệnh lặp While Do sẽ dừng lại? A. có giá trị đúng. C. Câu lệnh bên trong thực hiện. B. có giá trị sai. D. không thực hiện Câu 9: Bạn Ngọc muốn in ra màn hình 5 chữ B và 5 chữ C trên màn hình bằng đoạn chương trình sau: For i:=1 to 5 do Writeln(‘B’); writeln(‘C’); Theo em bạn Ngọc viết như thế nào A. Đúng rồi B. Phải đưa Writeln(‘B’); writeln(‘C’) vào trong cặp từ khóa Begin và End; C. Phải đổi Writeln thành Write. D. Phải đặt Writeln(‘B’); writeln(‘C’); trên hai dòng riêng biệt. Câu 10: Việc đầu tiên câu lệnh While cần thực hiện là gì? A. Thực hiện sau từ khóa DO. C. Thực hiện sau từ khóa Then. B. Kiểm tra giá trị của . D. Kiểm tra . Câu 11: Kết quả của trong câu lệnh While Do có giá trị gì? A. Là 1 số nguyên. B. Là 1 số thực. C. Đúng hoặc sai. D. Là 1 dãy kí tự. Câu 12: Câu lệnh sau từ khóa Do trong câu lệnh While sẽ được thực hiện bao nhiêu lần? A. 0 lần. B. 1 lần C. 2 lần D. Tùy thuộc bài toán.
  2. Câu 13. Trong câu lệnh For do sau từ khóa “do” có hai câu lệnh trở lên ta “gói” chúng trong: A. Begin readln; B. Begin and; C. End Begin D. Begin end; Câu 14. Trong câu lệnh while do nếu điều kiện sai thì: A. Tiếp tục vòng lặp B. Thoát khỏi vòng lặp C. Lặp vô hạn lần D. Lặp 1 lần Câu 15. Trong câu lệnh While do, nếu điều kiện đúng thì: A. Tiếp tục vòng lặp B. Thoát khỏi vòng lặp C. Lặp vô hạn lần D. Lặp 1 lần Câu 16: 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. 100 lần. B. 101 lần. C. Không lần nào. D. 99 lần. Câu 17. Hoạt động nào sau đây có thể tính toán được số lần làm việc: A. Múc từng gáo nước đến đầy bể B. Đi lên tầng, đến tầng 10 thì dừng C. Học cho tới khi thuộc bài D. Nhặt từng cọng rau cho tới khi xong Câu 18. Vòng lặp sau cho kết quả S bằng bao nhiêu: S := 1; For i := 1 to 3 do S := S * 2; A. S = 6 B. S = 8 C. S = 10 D. S = 12 Câu 19: Cấu trúc chung hợp lý của một chương trình Pascal là: A. Begin/ B. C. D. Program/End. program/End/Begin End/Program/Begin. Program/Begin/End. Câu 20. Pascal sử dụng từ khóa nào cho câu lệnh lặp nào sau đây để lặp với số lần chưa biết trước? a. For do; b. While do; c. If then; d. If then else; II. Tự luận. Câu 1: (1đ)Lựa chọn đáp án Đ ( Đúng) hoặc S ( Sai). Mỗi đáp án đúng được 0.25 điểm. Đ S a. Trong nhiều trường hợp, việc thực hiện câu lệnh lặp while do tốn ít thời gian hơn so với câu lệnh lặp for do. b. 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 khiển vòng lặp có giá trị sai. c. Trong vòng lặp While Do chỉ là câu lệnh đơn giản. d. Trong vòng lặp While Do thông thường là phép so sánh. 2. (1đ)Hãy xác định đúng sai cho các phát biểu dưới đây: Mỗi đáp án đúng được 0.25 điểm. Đ S a. Để tính S là tổng của các bình phương của n số tự nhiên đầu tiên, đoạn chương trình Pascal sau đây tuy không hề bị lỗi cú pháp, nhưng lại không đạt được mục đích cần tính toán: S:=0; for a:=1 to n do; S:=S+a*a b. Không nên thay đổi giá trị của “biến đếm” trong câu lệnh lặp for do, ví dụ câu lệnh lặp sau đây là không nên sử dụng: for i:=1 to n do i:=i+2; c. Mọi NNLT đều có các cách để chỉ thị cho máy tính thực hiện cấu trúc với một câu lệnh. Đó là câu lệnh lặp. d. Câu lệnh lặp sẽ thực hiện câu lệnh nhiều lần, mỗi lần là hai vòng. 3.(3đ) Dùng ngôn ngữ lập trình Pascal, viết chương trình tính tổng 50 số tự nhiên đầu tiên. (dùng While do, hoặc For do)
  3. MA TRẬN ĐỀ KIỂM TRA: Cấp độ Vận dụng Nhận biết Thông hiểu Thấp Cao Chủ đề TN TL TN TL TN TL TN TL - Biết được số - Biết tính Biết vận Vận lần lặp của kết quả của dụng dụng câu lênh vòng lặp - for to vào Câu lệnh For do được Biết sử câu để viết bài lặp tính như thế lênh lặp chương tập nào? for do trình 4 4 3 1 ( 1,10,19,16) 3,5,9,18 4,6,13 1a,b, 2a,b 1đ 1đ 0,75đ 1đ Nắm được - Biết tính Biết vận Vận Viết hoạt động lặp kết quả của dụng dụng chương của câu lênh vòng lặp - for to vào trình White do Biết sử câu để viết bài Lặp với số - Nắm được lênh lặp chương tập lần chưa đâu là hoạt While do trình biết trước động lặp với số lần chưa biết trước 4 3 2 1 1 Số câu 2,7,15,17 8,14,20 11,12 1c,d 3 2c,d 3đ Điểm 1đ 0,75đ 0,5đ 1đ 3
  4. ĐÁP ÁN VÀ THANG ĐIỂM Trắc nghiệm: 5đ (Mỗi câu trả lời đúng được 0.25 điểm:) Câu 1 2 3 4 5 6 7 8 9 10 Đáp án A C C A B D B B B B Câu 11 12 13 14 15 16 17 18 19 20 Đáp án C D D B A A B D D B Tự luận. Câu 1 (1 điểm): a. Đ b. Đ c. S. d. Đ Câu 2 (1 điểm): a. Đ b. Đ c. Đ. d. Đ 3.(3đ) Dùng ngôn ngữ lập trình Pascal, viết chương trình tính tổng 50 số tự nhiên đầu tiên. (dùng While do, hoặc For do) HS có thể dùng While do, hoặc For do để viết chương trình. Code mẫu: Program tinh_tong; uses crt; var i,n:integer; S:longint; begin n:=50; S:=1; for i:=1 to 50 do S:= S+i; write(' tong cua ',n,' so tu nhien dau tien la ',S); readln end.