Đề thi HK2 môn Tin học 8 năm 2022-2023
Trường THCS Trường Chinh
-
Câu 1:
Đâu là khái niệm mô tả thuật toán?
A. Liệt kê các bước thực hiện công việc
B. Liệt kê các cách thực hiện công việc
C. Liệt kê một bước thực hiện công việc
D. Tất cả đều đúng
-
Câu 2:
Chọn khái niệm thuật toán?
A. Dãy các thao tác cần thực hiện theo 1 trình tự xác định để thu được kết quả cần thiết từ những điều kiện cho trước
B. Một thao tác cần thực hiện để thu được kết quả cần thiết từ những điều kiện cho trước
C. Dãy các thao tác cần thực hiện để thu được kết quả cần thiết từ những điều kiện cho trước
D. Tất cả đều sai
-
Câu 3:
Đâu là đầu ra đầu vào của bài toán: “ kiểm tra n có phải là số nguyên tố hay không? ” là gì?
A. Input: Nhập số n; Output: n là số nguyên tố hoặc n không là số nguyên tố
B. Input: n là số nguyên tố hoặc n không là số nguyên tố; Output: Nhập số n
C. Input: n là số nguyên tố; Output: Nhập số n
D. Input: Nhập số n; Output: n là số nguyên tố
-
Câu 4:
Chọn phát biểu Sai về thuật toán?
A. Việc thực hiện cả 3 bước khi giải bài toán trên máy tính là cần thiết, nhất là đối với bài toán phức tạp
B. Xác định bài toán là xác định rõ các điều kiện cho trước và kết quả cần thu được
C. Dãy hữu hạn các thao tác cần thực hiện để giải một bài toán được gọi là thuật toán
D. Đối với mỗi bài toán cụ thể chúng ta chỉ có 1 thuật toán duy nhất để giải bài toán đó trên máy tính
-
Câu 5:
Đâu là đại lượng được đặt tên dùng để lưu trữ dữ liệu, có giá trị không đổi trong suốt quá trình thực hiện chương trình?
A. Tên
B. Từ khóa
C. Biến
D. Hằng
-
Câu 6:
Hãy chọn cách khai báo nào đúng?
A. Const k= 'tamgiac';
B. Var g :=15;
C. Const dien tich;
D. Var chuvi : byte;
-
Câu 7:
Hãy chọn khái niệm biến?
A. Là đại lượng có giá trị không thay đổi trong quá trình thực hiện chương trình
B. Là đại lượng có giá trị luôn thay đổi trong quá trình thực hiện chương trình
C. Là đại lượng dùng để tính toán
D. Là đại lượng dùng để khai báo tên chương trình
-
Câu 8:
Đâu là ý nghĩa của khai báo sau:
Var a: Real; b: Char;
A. Biến a thuộc kiểu dữ liệu số thực và biến b thuộc kiểu dữ liệu kí tự
B. Biến a thuộc kiểu dữ liệu số nguyên và biến b thuộc kiểu dữ liệu xâu kí tự
C. Biến a thuộc kiểu dữ liệu số nguyên và biến b thuộc kiểu dữ liệu kí tự
D. Các câu trên đều sai
-
Câu 9:
Phép toán viết bằng ngôn ngữ lập trình Pascal nào đúng?
A. {3*a + [ 4*c – 7*(a +2*c)] -5*b}
B. a*x*x – b*x + 7a : 5
C. (10*a + 2*b) / (a*b)
D. - b: (2*a*c)
-
Câu 10:
Câu lệnh Writeln('15*4-30+12=',15*4-30+12) in ra màn hình kết quả bao nhiêu?
A. 15*4-30+12
B. 42
C. 15*4-30+12=42
D. =42
-
Câu 11:
Khai báo nào là đúng nhất cho biến X có thể nhận các giá trị 1; 100; 150; 200 và biến Y có thể nhận các giá trị 1; 0.2; 0.3; 10.99?
A. Var X,Y: byte;
B. Var X, Y: real;
C. Var X: real; Y: byte;
D. Var X: byte; Y: real;
-
Câu 12:
Đâu là cách đặt tên không chính xác?
A. Tugiac
B. CHUNHAT
C. End
D. a_b_c
-
Câu 13:
Tên chương trình máy tính do ai đặt?
A. Học sinh
B. Sinh viên
C. Người lập trình
D. A và B
-
Câu 14:
Từ khoá của một ngôn ngữ lập trình có tác dụng như thế nào?
A. Là những từ dành riêng
B. Cho một mục đích sử dụng nhất định
C. Cho những mục đích sử dụng nhất định
D. A và B
-
Câu 15:
Với khai báo mảng như sau: Var a : array[0..30] of integer ;
Để in giá trị phần tử thứ 20 của mảng một chiều A ra màn hình ta viết:
A. Write(A[20]);
B. Write(A(20));
C. Readln(A[20]);
D. Write([20]);
-
Câu 16:
Đâu là phát biểu đúng về kiểu dữ liệu của mảng?
A. Có thể dùng tất cả các kiểu dữ liệu để làm kiểu dữ liệu của mảng
B. Kiểu dữ liệu của mảng chỉ có thể là kiểu số nguyên, số thực, kiểu logic, kiểu ký tự
C. Kiểu dữ liệu của mảng là kiểu của các phần tử của mảng, là Integer hoặc Real
D. Kiểu dữ liệu của mảng phải được định nghĩa trước thông qua từ khóa VAR
-
Câu 17:
Đâu là phát biểu về chỉ số của mảng là phù hợp nhất?
A. Dùng để truy cập đến một phần tử bất kì trong mảng
B. Dùng để quản lí kích thước của mảng
C. Dùng trong vòng lặp với mảng
D. Dùng trong vòng lặp với mảng để quản lí kích thước của mảng
-
Câu 18:
Đâu là cách khai báo biến mảng đúng?
A. Var X: Array[3.. 4.8] of Integer;
B. Var X: Array[10 .. 1] of Integer;
C. Var X: Array[4 .. 10] of Real;
D. Var X: Array[10 , 13] of Real;
-
Câu 19:
Hãy chọn kết quả cho đoạn lệnh sau:
x:=1; While x<=5 do write(‘Hoa hau’);
A. x:=1
B. X>=5
C. Hoa hau
D. Không có kết quả
-
Câu 20:
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. For…do
B. While…do
C. If..then
D. If…then…else
-
Câu 21:
Cú pháp nào sau đây của lệnh lặp với số lần chưa biết trước?
A. While < điều kiện > to < câu lệnh >;
B. While < điều kiện > to < câu lệnh 1 > do < câu lệnh 2 >;
C. While < điều kiện > do ;< câu lệnh >;
D. While < điều kiện > do < câu lệnh >;
-
Câu 22:
Giá trị của biến S bằng bao nhiêu? Sau khi thực hiện đoạn chương trình sau:
S:=10;
For i:=1 to 4 do S:=S+i;
A. 20
B. 14
C. 10
D. 0
-
Câu 23:
Với lệnh lặp For – do giá trị đầu như thế nào so với giá trị cuối?
A. Giá trị đầu phải nhỏ hơn giá trị cuối
B. Giá trị đầu phải nhỏ hơn hoặc bằng giá trị cuối
C. Giá trị đầu phải lớn hơn giá trị cuối
D. Giá trị đầu phải bằng giá trị cuối
-
Câu 24:
Xác định số vòng lặp cho bài toán: tính tổng các số nguyên từ 1 đến 100?
A. 1
B. 100
C. 99
D. Tất cả đều sai
-
Câu 25:
Đoạn chương trình sau giải bài toán nào?
For I:=1 to M do
If (I mod 3 = 0) and (I mod 5 = 0) then
T := T + I;
A. Tổng các số chia hết cho 3 hoặc 5 trong phạm vi từ 1 đến M
B. Tổng các số chia hết cho 3 và 5 trong phạm vi từ 1 đến M
C. Tổng các số chia hết cho 3 trong phạm vi từ 1 đến M
D. Tổng các số chia hết cho 5 trong phạm vi từ 1 đến M
-
Câu 26:
Giá trị của biến X bằng bao nhiêu sau khi thực hiện câu lệnh:
X:= 10;
IF (91 mod 3 ) = 0 then X :=X+20;
A. 10
B. 30
C. 2
D. 1
-
Câu 27:
Câu lệnh Pascal nào sau đây hợp lệ:
A. If x : = a + b then x : = x + 1;
B. If a > b then max = a;
C. If a > b then max : = a else max : = b;
D. If 5 := 6 then x : = 100;
-
Câu 28:
Với đoạn chương trình: IF a>8 THEN b:=3 ELSE b:=5;
Khi a nhận giá trị là 0 thì b nhận giá trị nào?
A. 0
B. 5
C. 8
D. 3
-
Câu 29:
Nêu đặc điểm kiểu dữ liệu của biến đếm trong lệnh lặp For – do?
A. Cùng kiểu với giá trị đầu và giá trị cuối
B. Chỉ cần khác kiểu với giá trị đầu
C. Cùng kiểu với các biến trong câu lệnh
D. Không cần phải xác định kiểu dữ liệu
-
Câu 30:
Hoạt động nào sau đây được lặp với số lần lặp biết trước?
A. Giặt tới khi sạch
B. Học bài cho tới khi thuộc bài
C. Gọi điện tới khi có người nghe máy
D. Ngày đánh răng 2 lần
-
Câu 31:
Chọn cú pháp câu lệnh lặp?
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ị cuối > to < giá trị đầu > do < câu lệnh >;
C. for < biến đếm > = < giá trị đầu > to < giá trị cuối >; do < câu lệnh >;
D. for < biến đếm > = < giá trị đầu > to < giá trị cuối > do < câu lệnh >;
-
Câu 32:
Câu lệnh For..to..do sẽ kết thúc khi nào?
A. Khi biến đếm nhỏ hơn giá trị cuối
B. Khi biến đếm lớn hơn giá trị cuối
C. Khi biến đếm nhỏ hơn giá trị đầu
D. Khi biến đếm lớn hơn giá trị đầu
-
Câu 33:
Trong các câu lệnh sau đây hãy chỉ ra câu lệnh đúng:
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 =10 to 1 do x:=x+1;
-
Câu 34:
Trong 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 nào?
A. Integer
B. Real
C. String
D. Tất cả các kiểu trên đều được
-
Câu 35:
Vòng lặp While – do sẽ kết thúc vào lúc nào?
A. Khi một điều kiện cho trước được thỏa mãn
B. Khi đủ số vòng lặp
C. Khi tìm được Output
D. Tất cả các phương án
-
Câu 36:
Việc đầu tiên mà câu lệnh While ... do cần làm là gì?
A. Thực hiện < câu lệnh > sau từ khóa Do
B. Kiểm tra giá trị của < điều kiện >
C. Thực hiện câu lệnh sau từ khóa Then
D. Kiểm tra < câu lệnh >
-
Câu 37:
Câu lệnh sau Do thực hiện mấy lần trong đoạn chương trình dưới đây:
i := 5;
While i>=1 do i := i – 1;
A. 1 lần
B. 2 lần
C. 5 lần
D. 6 lần
-
Câu 38:
Số phần tử trong khai báo sau là bao nhiêu?
Var hocsinh : array[12..80] of integer;
A. 80
B. 70
C. 69
D. 68
-
Câu 39:
Cú pháp khai báo dãy số nào chính xác nhất?
A. Var < tên dãy số > : array [ < chỉ số cuối > .. < chỉ số đầu >] of < kiểu dữ liệu >;
B. Var < tên dãy số > : array [ < chỉ số đầu > .. < chỉ số cuối > ] of < kiểu dữ liệu >;
C. Var < tên dãy số > : array [ < chỉ số cuối > : < chỉ số đầu > ] of < kiểu dữ liệu >;
D. Var < tên dãy số > : array [ < chỉ số đầu > .. < chỉ số cuối >] for < kiểu dữ liệu >;
-
Câu 40:
Muốn nhập dữ liệu từ bàn phím cho mảng A có 10 phần tử là số nguyên ta dùng lệnh nào?
A. For i:=1 to 10 do Readln(A[i]);
B. For i:= 1 to 10 do Writeln(A[i]);
C. Dùng 10 lệnh Readln(A);
D. Cả (A), (B), (C) đều sai