Đề cương ôn thi học kì 2 môn Tin học 8 năm 2022 - 2023
Đề cương ôn thi học kì 2 môn Tin học 8 năm 2022 - 2023 được sưu tầm và soạn thảo dưới dạng file PDF để gửi tới các bạn học sinh cùng tham khảo, ôn tập đầy đủ kiến thức, chuẩn bị cho các buổi học thật tốt. Mời bạn đọc đón xem!
Preview text:
Đề cương ôn tập HKII Môn: Tin học 8 Năm học 2022-2023 I. Kiến thức chung
1. Lặp khi biết trước số lần lặp Dạng 1:For:=todo; Dạng 2:For:=downtodo;
2. Lặp khi chưa biết trước số lần lặp Dạng 1:Repeat ;
Until <Điều kiện dừng>;
Dạng 2:While<Điềukiện>do; II. Bài tập
Phần 1: Trắc nghiệm Câu 1.
Trong các câu lệnh sau, câu lệnh nào hợp lệ?
A. for i:=1 to 10 do x:=x+1;
B. for i:=1 to 10; do x:=x+1;
C. for i:=10 to 1 do x:=x+1;
D. For i=1 to 10 do x:=x+1; Câu 2.
Trong các câu lệnh sau, câu lệnh nào hợp lệ?
A. while s<>0 do; s:=S+1;
B. while s:=0 do s:=S+1;
C. while s<>0 do s:=S+1; D. while s:=0 do s=S+1; Câu 3.
Trong câu lệnh lặp sau, vòng lặp được thực hiện bao nhiêu lần?
For i:=2 to 5 do s:=s+i; A. 1; B. 4; C. 5 D. Không xác định Câu 4.
Trong câu lệnh lặp sau, vòng lặp được thực hiện bao nhiêu lần? S:=0; i:=1; While i < >5 do
Begin S:=S+i; i:=i+1; end A. 4; B. 5; C. 6 D. Không xác định Câu 5.
Trong câu lệnh lặp sau, vòng lặp được thực hiện bao nhiêu lần?
For i:=2 to 2 do s:=s+i; A. 0; B. 1; C. 2; D. Không xác định Câu 6.
Giá trị x sau đoạn chương trình dưới đây sẽ là bao nhiêu? x:=1;
For i:=1 to 5 do x:=x+2; A. 11; B. 1; C. 5; D. 7. Câu 7.
Giá trị x sau đoạn chương trình dưới đây sẽ là bao nhiêu? x:=1;
For i:=1 to 5 do if i mod 3 = 0 then x:=x+1; A. 6; B. 1; C. 15; D. 2. Câu 8.
Giá trị x sau đoạn chương trình dưới đây sẽ là bao nhiêu? x:=1; while x<=6 do x:=x+2; A. 6; B. 8; C. 7; D. 9. Câu 9.
Giá trị x sau đoạn chương trình dưới đây sẽ là bao nhiêu? x:=2; while x<= 6 do x:=x+2; A. 6; B. 8; C. 9; D. 7.
Câu 10. Khai báo mảng nào dưới đây là đúng?
A. Var a:array of integer;
B. Var a:array [1:50] of integer;
C. Var a:array [1. 5.0] of integer;
D. Var a:array [1. 50] of integer;
Câu 11. Đoạn chương trình nào sau đây tính tổng giá trị các phần tử của mảng?
A. S:=0; For i:=1 to n do S:=S+a[i];
B. S:=0; For i:=1 to n do S:=S+a[1];
C. S:=0; For i:=1 to n do S:= a[i];
D. S:=0; For i:=1 to n do a[i]:=S+a[i];
Câu 12. Câu lệnh nào sau đây in giá trị các phần tử mảng a ra màn hình?
A. For i:=1 to n do writeln(a);
B. For i:=1 to n do writeln(a[i]);
C. For i:=1 to n do readln(a[i]);
D. For i:=1 to n do writeln(i);
Câu 13. Đoạn chương trình dưới đây có bao nhiêu lỗi? S:=0
For i=1 to n do S=S+a[i]; A. 2; B. 3; C. 4; D. Không có lỗi.
Câu 14. Đoạn chương trình dưới đây có bao nhiêu lỗi? i=1; while i<10 do i=i+1; A. 1; B. 2; C. 3; D. Không có lỗi.
Câu 15. Đoạn chương trình dưới đây thực hiện công việc gì? Count:=0; For i:=1 to n do
If a[i]=0 then count:=count +1;
A. Đếm số lượng số khác 0 trong dãy số;
B. Tính tổng các số khác 0 trong dãy số
C. Đếm số lượng số 0 trong dãy số;
D. Không thực hiện công việc gì.
Phần 2: Lập trình
Bài 1: Viết chương trình nhập vào mảng n số nguyên. Tính tổng các số vừa nhập. In kết quả ra màn hình
Bài 2: Viết chương trình nhập vào mảng n số nguyên. Đếm xem trong mảng vừa nhập có bao
nhiêu số âm. In kết quả ra màn hình.
Bài 3: Viết chương trình nhập vào n số nguyên. Tìm phần tử lớn nhất trong dãy vừa nhập. In phần tử đó ra màn hình ĐỀ THI MINH HỌA
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
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ố 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 ;
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
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 VÀ BIỂU ĐIỂM - ĐỀ KIỂM TRA 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
Câu 1 Câu 1: (2.0 điểm) : Hãy
Var:Array[. nêu cú pháp khai báo biến mảng cuối>]of; trong pascal?
a/ Giải thích cú pháp khai báo 1.0đ biến mảng trong Pascal? a
Chỉ số đầu và chỉ số cuối là hai số nguyên thỏa mản 0.5đ
b/ Cho ví dụ về khai báo biến
chỉ số đầu <= chỉ số cuối và kiểu dữ liệu có thể là mảng.
số nguyên (integer) hay số thực (real).
Câu 2: (2.0 điểm): Viết chương b 0.5đ
trình tính tổng từ 1đến 50 .
Var thunhap: array[1. 50] of real;
Câu 2: (2.0 điểm) : Viết chương program Tinh_tong;
trình tính tổng từ 1 đến 50 . uses crt; 0.5đ var i:integer; T:longint; begin 1.5đ Tổng:=0;
writeln('Đây là chương trình tính tổng từ 1 đến 50'); For i:= 1 to 50 do T:=T+i; write('Tổng=',T); end.