Đề thi học kì 2 môn Tin học Lớp 8 (Có đáp án)

I/ TRẮC NGHIỆM: ( 6.0 điểm)

Em hãy chọn một câu trả lời đúng nhất ghi vào phần bài làm, mổi câu chọn đúng được 0.5 điểm.

Câu 1: Số lần lặp của câu lệnh lặp for…to…do… được tính như thế nào?

A. Giá trị đầu – giá trị cuối

B. Giá trị đầu – giá trị cuối + 1

C. Giá trị cuối – giá trị đầu

D. Giá trị cuối – giá trị đầu + 1

Câu 2: Giả sử biến Chiều cao gồm 20 phần tử, cách khai báo nào dưới đây là đúng

A. Var Chieucao: array[1..20] of real;

B. Var Chieucao: array[1..20] of integer;

C. Var Chieucao: array[1..20] of string;

D. Var Chieucao: array[1…20] of char;

Câu 3: 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. Vòng lặp vô tận

C. Lặp 10 lần

D. Thoát khỏi vòng lặp

doc 11 trang Ánh Mai 28/02/2023 7080
Bạn đang xem tài liệu "Đề thi học kì 2 môn Tin học Lớp 8 (Có đáp án)", để 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:

  • docde_thi_hoc_ki_2_mon_tin_hoc_lop_8_co_dap_an.doc

Nội dung text: Đề thi học kì 2 môn Tin học Lớp 8 (Có đáp án)

  1. Đề thi Tin học 8 Học kì 2 - Đề số 1 Ma trận Đề thi Tin học 8 Học kì 2 Vận dụng Cấp độ Nhận biết Thông hiểu Tổng Thấp Cao Chủ đề TN TL TN TL TN TL TN TL - Biết tính kết - Biết được số quả của vòng lần lặp của câu - Viết được lặp trong câu lênh For do chương trình lệnh lặp 1. Câu được tính như đơn giản, sử lệnh lặp dụng câu thế nào? - Biết sử dụng lệnh lặp cặp từ khóa nào ngôn ngữ dành For do trong câu lênh cho máy tính lặp for do Số câu 2 (1, 8) 2 (12, 6) 1 (2) 5 Số điểm 1.0 1.0 2.0 4.0 - Nắm được hoạt động lặp của câu lênh 2. Lặp với White do - Hiểu được số lần vòng lặp chưa biết - Nắm được White do trước. đâu là hoạt động lặp với số lần chưa biết trước Số câu 2 (3, 9) 1 (11) 3 Số điểm 1.0 0.5 1.5 3. Làm - Nêu được cú - Biết sử dụng - Biết sử dụng
  2. việc với pháp và cho vòng lặp trong vòng lặp trong dãy số được ví dụ khai báo biến biến mảng. trong trong mảng khai báo biến - Biết được mảng cách khai báo biến mảng - Nắm được câu lệnh khai báo biến mảng 4 (2,7,4, Số câu 1 (1) 1 (10) 6 5) Số điểm 2.0 2.0 0.5 4.5 Tổng số 5 6 1 2 14 câu Tổng số 4.0 3.0 2.0 1.0 10.0 điểm Đề thi Tin học 8 Học kì 2 I/ TRẮC NGHIỆM: ( 6.0 điểm) Em hãy chọn một câu trả lời đúng nhất ghi vào phần bài làm, mổi câu chọn đúng được 0.5 điểm. Câu 1: Số lần lặp của câu lệnh lặp for to do được tính như thế nào? A. Giá trị đầu – giá trị cuối B. Giá trị đầu – giá trị cuối + 1 C. Giá trị cuối – giá trị đầu
  3. D. Giá trị cuối – giá trị đầu + 1 Câu 2: Giả sử biến Chiều cao gồm 20 phần tử, cách khai báo nào dưới đây là đúng A. Var Chieucao: array[1 20] of real; B. Var Chieucao: array[1 20] of integer; C. Var Chieucao: array[1 20] of string; D. Var Chieucao: array[1 20] of char; Câu 3: 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. Vòng lặp vô tận C. Lặp 10 lần D. Thoát khỏi vòng lặp Câu 4: Khai báo biến mảng: A: array[1 7] of real;. Sử dụng câu lệnh For i:= 1 to 5 do readln(A[i]); để gán giá trị cho các phần tử trong biến A từ bàn phím, ta sẽ nhập được bao nhiêu giá trị? A. 7 B. 6 C. 5 D. 4 Câu 5: Trong cú pháp khai báo biến mảng, chỉ số đầu và chỉ số cuối là hai số
  4. A. số nguyên B. số thực C. kí tự D. xâu kí tự Câu 6: 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 7: Trong câu lệnh khai báo biến mảng, phát biểu nào sau đây không đúng? A. Chỉ số đầu và chỉ số cuối là hai số nguyên; B. Chỉ số đầu chỉ số cuối; C. Kiểu dữ liệu có thể là integer hoặc real; D. Dấu ba chấm ( ) nằm giữa chỉ số đầu và chỉ số cuối Câu 8: Cú pháp câu lệnh lặp nào sau đây là đúng? A. For := down to do ; B. For := to do ; C. For := to do ; D. For = to do ;
  5. Câu 9: Trong các hoạt động dưới đây, đâu là hoạt động lặp với số lần chưa biết trước: A. Mỗi buổi học đúng 5 tiết. B. Mỗi ngày ăn cơm 3 buổi. C. Mỗi ngày phải học bài cho đến khi thuộc. D. Rằm tháng Giêng là Tết Nguyên tiêu. Câu 10: Giả sử biến mảng A có 5 phần tử và giá trị của các phần tử lần lượt là 1, 4, 7, 2, 6. Khi thực hiện câu lệnh sau: tb:= 0; For i:= 1 to 5 do tb:= tb + A[i]; Giá trị của biến tb là bao nhiêu? A.18 B. 22 C. 21 D. 20 Câu 11: Hãy cho biết kết quả của đoạn chương trình dưới đây: a:=10; white a>=10 do write(A); A. Trên màn hình xuất hiện một chữ a; B. Trên màn hình xuất hiện 10 chữ a; C. Trên màn hình xuất hiện một số 10; D. Chương trình bị lặp vô tận
  6. Câu 12: 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 II/ TỰ LUẬN: (4.0 điểm) Câu 1: (2.0 điểm): Hãy nêu cú pháp khai báo biến mảng trong pascal? a/ Giải thích cú pháp khai báo biến mảng trong Pascal? b/ Cho ví dụ về khai báo biến mảng. Câu 2: (2.0 điểm): Viết chương trình tính tổng từ 1 đến 50 . Đáp án Đề thi Tin học 8 Học kì 2 I/ TRẮC NGHIỆM: (6.0đ) Câu 1 2 3 4 5 6 7 8 9 10 11 12 Đáp án D A A C A D D B C D D B II/ TỰ LUẬN : (4.0đ) Câu Ý Đáp án Điểm Var :Array[ ]of ; điểm) : Hãy nêu cú pháp Chỉ số đầu và chỉ số cuối là hai số nguyên khai báo biến mảng a 0.5đ thỏa mản chỉ số đầu <= chỉ số cuối và
  7. trong pascal? kiểu dữ liệu có thể là số nguyên (integer) hay số thực (real). a/ Giải thích cú pháp khai báo biến mảng trong Pascal? b/ Cho ví dụ về khai báo biến mảng. b Var thunhap: array[1 50] of real; 0.5đ Câu 2 : (2.0 điểm): Viết chương trình tính tổng từ 1đến 50 . program Tinh_tong; Câu 3 : (2.0 điểm) : uses crt; Viết chương trình tính 0.5đ tổng từ 1 đến 50 . var i:integer; T:longint; begin Tổng:=0; writeln('Đây là chương trình tính tổng từ 1 đến 50'); 1.5đ For i:= 1 to 50 do T:=T+i; write('Tổng=',T); end. Đề thi Tin học 8 Học kì 2 - Đề số 2 I. TRẮC NGHIỆM: (4,0 điểm) Khoanh tròn chữ cái trước đáp án đúng.
  8. Câu 1. Trong Pascal, câu lệnh nào sau đây được viết đúng? A. For i:= 4 to 1 do writeln(‘A’); B. For i= 1 to 10 writeln(‘A’); C. For i:= 1 to 10 do writeln(‘A’); D. For i to 10 do writeln(‘A’); Câu 2. Trong câu lệnh lặp: j:=0; For i := 1 to 10 do j:= j + 2; Khi kết thúc câu lệnh lặp trên, câu lệnh j:=j+2 được thực hiện bao nhiêu lần? A. 10 lần B. 5 lần C. 2 lần D. Không thực hiện. Câu 3. Cho đoạn chương trình: J:= 0; For i:= 1 to 5 do J:= j + i; Sau khi thực hiện đoạn chương trình trên, giá trị của biến j bằng bao nhiêu? A. 12 B. 22 C. 15 D. 42. Câu 4. Trong Pascal, câu lệnh nào sau đây là đúng? A. S:=1;While S<10 do write(S);
  9. B. i:=0; S:=1;While s 9 do write(S); Câu 5. Phần mềm quan sát hình không gian là A. finger Break out B. turbo pascal C. geogebra D. yenka Câu 6. Khai báo biến mảng: A : array[1 7] of real;. Sử dụng câu lệnh For i:= 1 to 5 do readln(A[i]); để gán giá trị cho các phần tử trong biến A từ bàn phím, ta sẽ nhập được bao nhiêu giá trị? A. 1 B. 5 C. 6 D. 7 Câu 7. Trong câu lệnh khai báo biến mảng, phát biểu nào sau đây sai? A. Chỉ số đầu và chỉ số cuối là 2 số thực. B. Chỉ số đầu chỉ số cuối. C. Kiểu dữ liệu có thể là integer hoặc real. D. Chỉ số đầu cuối là số nguyên.
  10. Câu 8. Giả sử biến mảng A có 5 phần tử và giá trị của các phần tử lần lượt là 1, 4, 7, 2, 6. Khi thực hiện câu lệnh sau: tong:= 0; For i:= 1 to 5 do tong := tong + A[i]; Giá trị của biến tong là bao nhiêu? A. 4 B. 18 C. 20 D. 22 II. TỰ LUẬN: (6,0 điểm) Câu 1. (2 điểm) Viết cú pháp câu lệnh lặp với số lần chưa biết trước. Nêu hoạt động của câu lệnh. Câu 2. (4 điểm) Viết chương trình nhập điểm kiểm tra học kỳ môn tin học cho N học sinh và in kết quả ra màn hình. Với N và điểm kiểm tra của từng học sinh được nhập từ bàn phím (sử dụng biến mảng). Đáp án: I. TRẮC NGHIỆM: (4 điểm – mỗi câu đúng 0,5 điểm). Câu 1 2 3 4 5 6 7 8 Đáp án C A C B D B A C II. TỰ LUẬN: (6 điểm) CÂU NỘI DUNG ĐÁP ÁN ĐIỂM - Cú pháp câu lệnh: while do ; 1 1 - Hoạt động: Khi thực hiện câu lệnh chương trình kiểm 1 (2 điểm) tra điều kiện. Nếu điều kiện đúng thực hiện câu lệnh
  11. sau từ khóa do và quay lại kiểm tra điều kiện. Nếu điều kiện sai bỏ qua câu lệnh sau từ khóa do và kết thúc. Program diem; Uses crt; Var N, i: integer; Diem: array[1 50] of real; 1 Begin Clrscr; Write(‘Nhap so luong hoc sinh N = ‘); Readln(N); 2 Writeln(‘Nhap diem cho tung hoc sinh’); (4 điểm) For i := 1 to n do 0,5 Begin Write(‘Diem HS ‘,i,’ = ‘); readln(Diem[i]); 1 End; For i : = 1 to n do 0,5 Writeln(‘Diem cua HS ‘,i, ‘ = ‘,diem[i]); 1 Readln; End. Lưu ý: Học sinh có thể có đáp án khác, nếu đúng vẫn đạt điểm tối đa.