I. PHẦN TRẮC NGHIỆM:
Câu 1. Chức năng chính của chương trình dịch là:
A. Phát hiện lỗi cú pháp
B. Hỗ trợ soạn thảo chương trình
C. Lưu lại chương trình nguồn sau khi dịch
D. Dịch từ ngôn ngữ lập trình sang ngôn ngữ máy
Câu 2. Hãy chọn kết quả cho phép toán:
A. 17/2: ………….; 17 div 2 = …………; 17 mod 2 = ……………….
B. 30/4:…………..; 30 div 4=…………..; 30 mod 4 = ……………….
C. 16/3:……………; 16 div 3=…………..; 16 mod 3 = ……………….
D. 11/2:…………….; 11 div 2=…………..; 11 mod 2= ………………..
Câu 3.Đại lượng nào sau đây có giá trị có thể thay đổi trong quá trình thực hiện chương trình?
A. Biến B. Hằng C. Thủ tục D. Hàm
Câu 4.Khi khai báo nhiều biến có cùng một kiểu dữ liệu ta dùng kí tự nào để ngăn cách giữa các tên biến trong khai báo?
A. Gạch nối giữ các biến B. Dấu cách
C. Dấu phẩy D. Dấu chấm phẩy
Câu 5.Trong ngôn ngữ lập trình Pascal, người ta có thể viết các từ khóa như thế nào?
A. Phải viết bằng chữ thường
B. Không phân biệt chữ hoa hay chữ thường
C. Phải viết bằng chữ hoa
D. Phải viết hoa kí tự đầu tiên
Câu 6:Mô tả thuật toán pha trà mời khách
+ B1: Tráng ấm, chén bằng nước sôi
+ B2: Rót nước sôi vào ấm và đợi khoảng 3 đến 4 phút.
+ B3: Cho trà vào ấm
+ B4: Rót trà ra chén để mời khách.
A. B1- B3-B4- B2
B. B2-B4-B1-B3
C. B1- B3- B2-B4
D. B3-B4-B1-B2
Câu 7:Thứ tự các bước giải bài toán trên máy tính:
A. Xác định bài toán → Viết chương trình → Mô tả thuật toán
B. Xác định bài toán → Mô tả thuật toán → Viết chương trình
C. Mô tả thuật toán → Xác định bài toán → Viết chương trình
D. Viết chương trình → Xác định bài toán → Mô tả thuật toán
Câu 8: Mô tả thuật toán là:
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. Liệt kê cách thực hiện một công việc.
Câu 9: Câu lệnh điều kiện dạng đầy đủ là:
A. If < Điều kiện> then < Câu lệnh 1 >; Else < Câu lệnh 2 >;
B. If < Điều kiện> then < Câu lệnh >;
C. If < Điều kiện> then < Câu lệnh 1 >, < Câu lệnh 2 >
D. If < Điều kiện > then < Câu lệnh 1 > Else < Câu lệnh 2 >;
Câu 10: Hãy cho biết giá trị của biến X bằng bao nhiêu sau khi thực hiện câu lệnh:
if (45 mod 3 ) = 0 then X :=X+2;
( Biết rằng trước đó giá trị của biến X = 9)
A. 5 B. 11 C. 9 D. 7
Câu 11: Hãy cho biết 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 ) = 1 then X :=X+20;
A. 10 B. 2 C. 30 D. 1
Câu 12: Cho thuật toán tìm giá trị nhỏ nhất trong một dãy số nguyên sử dụng phương pháp liệt kê dưới đây:
Bước 1: Nhập N, các số hạng a1, a2,…., aN;
Bước 2: Min ← ai, i ← 2;
Bước 3: Nếu i < N thì đưa đưa ra giá trị Min rồi kết thúc;
Bước 4:
Bước 4.1: Nếu ai > Min thì Min ← ai;
Bước 4.2: i ← i+1, quay lại bước 3.
Hãy chọn những bước sai trong thuật toán trên:
A. Bước 2 B. Bước 3 C. Bước 4.1 D. Bước 4.2
Câu 13: Xác định bài toán là cần xác định cái gì?
A. Xác định input B. Xác định output
C. Xác định input và output D. Biểu diễn sơ đồ khối.
Câu 14: Xác định input là xác định:
A. Xác định thông tin đầu vào B. Xác định thông tin đầu ra
C. Xác định kết quả D. Biểu diễn sơ đồ khối.
Câu 15: Xác định output là xác định:
A. Xác định thông tin đầu vào B. Xác định thông tin đầu ra
C. Xác định giả thiết D. Chương trình cần viết.
Câu16: Là dãy hữu hạn các thao tác cần thực hiện theo một trình tự xác định để nhận được kết quả cần tìm từ những điều kiện cho trước?
A. Chương trình B. Thuật toán
C. Bài toán D. Chương trình máy tính
Câu 17: Để mô tả thuật toán, em có thể:
A. Liệt kê các bước.
B. Dùng sơ đồ khối.
C. Dùng dãy hữu hạn các thao tác.
D. Dùng sơ đồ khối hoặc liệt kê các bước.
Câu 18: Tính diện tích hình tròn (s) biết bán kính là r (cm). OUTPUT của bài toán là
A. Diện tích hình tròn. B. Bán kính r.
C. Diện tích hình tròn và bán kính r. D. S và D.
Câu 19: Tính S=1+2+3+...+N. INPUT của bài toán là
A. N B. S C. N và S D. 6
Câu 20: Quá trình giải bài toán trên máy tính gồm mấy bước?
A. 2 B. 3 C. 4 D. 5
Câu 21: Hãy cho biết kết quả sau khi thực hiện thuật toán sau:
Bước 1. Tam←x;
Bước 2. x←y;
Bước 3. y← tam;
A. Giá trị của biến x bằng giá trị của biến y
B. Hoán đổi giá trị hai biến x và y
C. Giá trị của biến y bằng giá trị của biến x
D. Khác
Câu 22: Hãy xác đinh bài toán sau: "Tìm số lớn nhất trong dãy n số tự nhiên cho trước"?
A. INPUT: Dãy n số tự nhiên. OUTPUT: Số lớn nhất trong dãy n số.
B. INPUT: Dãy n số tự nhiên. OUTPUT: Số các số lớn nhất trong dãy n số.
C. INPUT: Số lớn nhất trong dãy n số. OUTPUT: Dãy n số tự nhiên.
D. INPUT: Số các số lớn nhất trong dãy n số. OUTPUT: Dãy n số tự nhiên.
Câu 23: Xác định bài toán: “ Kiểm tra n có phải là số nguyên tố hay không?
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 24:Trong pascal, trong câu lệnh đều kiện thì điều kiện là phép gì?
A. Phép so sánh B. Phép gán C. Phép cộng D. Phép chia
Câu 25: Biểu diễn câu nói sau sang câu lệnh điều kiện trong pascal?
“ Nếu a chia hết cho 2 thì a là số chẵn ngược lại a là số lẽ”
A. If a mod 2 then writeln(a, ’la so chan’) else writeln(a, ’la so le);
B. If a mod 2 = 0 then writeln(a, ’la so chan’) else writeln(a, ’la so le);
C. If a mod 2= 0 then writeln(a, ’la so chan’) ; else writeln(a, ’la so le);
D. If a mod 2 then writeln(a, ’la so chan’);
Câu 26: Cách viết đúng của câu lệnh điều kiện: Nếu x nhỏ hơn 0 thì in ra màn hình “x là số âm” trong ngôn ngữ lập trình Pascal là:
A. If a<0 then writeln(‘x la so am); B. If x<0 then writeln(‘x la so am);
C. If x>0 then writeln(‘x la so am); D. If x=0 then writeln(‘x la so am);
Câu 27: Để thể hiện điều kiện K năm trong khoảng nửa khoảng từ 6.5 đến 8, câu nào sau đây đúng?
A. (K>=6.5) or (K<=8); B. (K>=6.5) and (K<=8)
C. (K>6.5) or (K<=8) D. (K>=6.5) and (K<8)
Câu 28: Nếu một số nguyên dương N là một số chẳn thì ta cần xét điều kiện nào?
A. (N mod 2)=0 and (N >0); B. (N mod 2)=0 or (N >=0);
C. (N mod 2)<>0 and (N >0) D. (N mod 2)=0 or (N <0);
Câu 29: Sau khi thực hiện đoạn chương trình sau, giá trị của biến S là bao nhiêu?
S:=100; If S >10 then S:=S+1 Else S:=S-1;
A. 101 B. 100 C. 99 D. 10
Câu 30: Nếu a > 0 thì in ra màn hình “a la so duong” ngược lại in ra màn hình “a la so am”; theo em đây là:
A. Câu lện điều kiện dạng đủ. B. Câu lệnh điều kiện dạng thiếu.
C. Câu lện điều kiện hỗn hợp. D. Câu lệnh điều kiện không đủ.
Câu 31: Câu lệnh Pascal nào sau đây viết đúng
A. If x+5 Then x:=x+2; B. If x+5=10 Then x:=x+2;
C. If x+5=10; Then x:=x+2; D. If x+5=10 Them x:=x+2;
Câu 32: Trong Pascal, Cấu trúc rẽ nhánh có mấy dạng
A. 1 B. 2 C. 3 D. 4
Câu 33: Để tìm giá trị lớn nhất của 2 số a, b thì ta viết:
A. Max:=a; If b>Max then Max:=b;
B. If (a<b) then Max:=a;If (b>a) then Max:=b;
C. Max:=b;If a<Max then Max:=a;
D. Max:=a; If b< max then max:=b;
Câu 34: Câu lệnh Pascal nào sau đây được viết sai?
A. If x:= 5 then a = b; B. If x > 4 then a:= b;
C. If x > 4 then a:=b; m:=n; D. If x > 4 then a:=b else m:=n;
Câu 35: Nếu cho x = 10, giá trị của x là bao nhiêu sau câu lệnh: if x> 5 then x:= x+5;
A. 15; B. 10; C. 5; D. 20.
Câu 36: Chọn câu lệnh Pascal hợp lệ trong các câu sau
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 37: Câu lệnh điều kiện dạng thiếu có dạng
A. if <điều kiện> then <câu lệnh> B. if <điều kiện> ;then <câu lệnh>
C. if <điều kiện> then <câu lệnh>; D. if <điều kiện> then; <câu lệnh>
Câu 38: Phát biểu nào sau đây có thể lấy làm biểu thức điều kiện trong cấu trúc rẽ nhánh?
A. A:= B B. A > B
C. N mod 100 D. “A nho hon B”
Câu 39: Câu lệnh điều kiện dạng đầy đủ là:
A. If < Điều kiện> then < Câu lệnh 1 >; Else < Câu lệnh 2 >;
B. If < Điều kiện> then < Câu lệnh >;
C. If < Điều kiện> then < Câu lệnh 1 >, < Câu lệnh 2 >;
D. If < Điều kiện > then < Câu lệnh 1 > Else < Câu lệnh 2 >;
Câu 40:Hãy cho biết giá trị của biến X bằng bao nhiêu sau khi thực hiện câu lệnh:
if (45 mod 3 ) = 0 then X :=X+2;
(Biết rằng trước đó giá trị của biến X = 5)
A. 5 B. 9 C. 7 D. 11
Câu 41:Ta có 2 lệnh sau:
x:= 8;
If x>5 then x := x +1;
Giá trị của x là bao nhiêu?
A. 5 B. 9 C. 8 D. 6
Câu 42: Các câu lệnh Pascal nào sau đây được viết đúng:
A. If x:= 5 then a = b; B. If x > 4; then a:= b;
C. If x > 4 then a:=b else m:=n; D. If x > 4 then a:=b; else m:=n;
Câu 43: Hãy chọn cách dùng sai . Muốn dùng biến X lưu giá trị nhỏ nhất trong các giá trị của hai biến A, B có thể dùng cấu trúc rẽ nhánh như sau :
A. if A <= B then X := A else X := B; B. if A < B then X := A;
C. X := B; if A < B then X := A; D. if A < B then X := A else X := B;
Câu 44:
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 45: Chọn câu lệnh Pascal hợp lệ trong các câu sau:
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 46: Hãy cho biết 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
II. TỰ LUẬN:
Tự luận trên giấy hoặc thực hành trên máy
Câu 1: Viết chương trình tìm Max của hai số a,b nguyên dương với a và b được nhập vào từ bàn phím.
*Yêu cầu:
a. Xác định bài toán
b. Mô tả thuật toán
c. Viết chương trình
Câu 2: Hãy mô tả thuật toán nhập n số a1, a2, ..., an từ bàn phím và ghi ra màn hình số nhỏ nhất trong các số đó. Với số n được nhập từ bàn phím.
Câu 3: Hãy mô tả thuật toán giải các bài toán sau:
a) Đếm số các số dương trong dãy số A = {a1, a2,.., an} cho trước.
b) Hãy mô tả thuật toán tính tổng các số dương trong dãy số A = {a1, a2,..., an} cho trước.
Câu 4: Viết chương trình in ra số lớn nhất trong bốn số thực được nhập từ bàn phím.
Câu 5: Viết chương trình giải phương trình ax + b = 0 (Các hệ số a, b được nhập từ bàn phím).