Câu 1: Lệnh nào dùng để nhập giá trị một biến x từ bàn phím? A. writeln(x) B. Delay(x) C. copy(x) D. readln(x) Câu 2: a là biến dữ liệu kiểu số nguyên. Muốn xuất giá trị của a2 thì ta viết? A. Writeln('a*a') B. Readln(' a*a ') C. Writeln(a*a) D. Writeln(a2) Câu 3: Câu lệnh nào sau đây dùng để nhập một số từ bàn phím vào biến x? A. Writeln(‘Nhập x = ’); B. Write(x); C. Writeln(x); D. Readln(x); Các kiểu dữ liệu của pascal Câu 4: Phần dư trong phép chia của hai số nguyên 16 và 5 là: A. 16 div 5 = 1 B. 16 mod 5 = 1 C. 16 div 5 = 3 D. 16 mod 5 = 3 Câu 5: Biến được khai báo với kiểu dữ liệu số thực có thể lưu trữ các giá trị nào trong các giá trị dưới đây: A. Một số nguyên bất kì. B. Một số thực bất kì (có thể là số nguyên) trong phạm vi cho phép. C. Một số thực bất kì. D. Một dãy các chữ và số. Câu 6: Khi muốn khai báo biến m kiểu số nguyên thì đáp án nào sau đây là ĐÚNG: A. var m:real ; B. var m:integer ; C. var m : = real ; D. var m : = integer; Hằng và biến Câu 7: Từ khóa dùng để khai báo hằng trong ngôn ngữ lập trình Pascal là: A. Const B. Var C. Real D.End Câu 8: Đạ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 được gọi là gì? A. Tên. B. Từ khoá. C. Biến. D. Hằng. Câu 9: Trong Pascal, khai báo nào sau đây là đúng? A. Var Tong : Real; B. Var 8HS: Integer; C. Const x : real; D. Var R =3; Câu 10 : Trong Pascal, từ khóa nào để khai báo biến : A.Const. B.Begin. C.Var. D.Uses. Lệnh gán và biểu thức Câu 11: Câu lệnh nào sau đây là câu lệnh gán? A. x = 5 B. x: 5 C. x and 5 D. x:= x +5; Câu 12: Sau câu lệnh dưới đây thì giá trị của X là bao nhiêu, nếu trước đó giá trị của X bằng 11: if X >10 then X := X + 1; A.12 B. 11 C. 10 D. 9 Câu lệnh lặp Câu 13: Chọn cú pháp đúng nhất về 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 14: Hoạt động nào sau đây lặp với số lần lặp biết trước? A. Rửa rau 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 tắm 2 lần Câu 15: Em hiểu lệnh lặp theo nghĩa nào dưới đây? A. Một lệnh thay cho nhiều lệnh B. Các câu lệnh được viết lặp đi lặp lại nhiều lần C. Vì câu lệnh có tên là lệnh lặp D. Cả (A), (B), (C) đều sai Câu 16: Khi nào thì câu lệnh For..to..do kết thúc? 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 17: Cho các câu lệnh sau 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 18: Với 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 19: Trong câu lệnh lặp với số lần biết trước (For – do), được thực hiện mấy lần? A. ( < giá trị cuối > - < giá trị đầu >) lần B. Tuỳ thuộc vào bài toán mới biết được số lần C. Khoảng 10 lần D. ( < giá trị đầu > - < giá trị cuối>) lần Câu 20: 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 21: Kết quả của < điều kiện > trong câu lệnh sẽ có giá trị là gì? A. Là một số nguyên B. Là một số thực C. Đúng hoặc sai D. Là một dãy kí tự Câu 22: Sau khi thực hiện đoạn chương trình sau: S:=0; For i:=1 to 5 do S:=S+i; Giá trị của biến S bằng bao nhiêu? A. 20 B. 15 C. 10 D. 0 Câu 23: Cú pháp lệnh lặp For – do dạng lùi: A. for < biến đếm> = < Giá trị cuối >downto < Giá trị đầu > do < câu lệnh >; B. for < biến đếm> := < Giá trị cuối >downto < Giá trị đầu > do < câu lệnh >; C. for < biến đếm> = < Giá trị cuối >down < Giá trị đầu > do < câu lệnh >; D. for < biến đếm> := < Giá trị đầu >downto < Giá trị cuối > do < câu lệnh>; Câu 24: Trong lệnh lặp For – do: (chọn phương án đúng nhất) 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 25: Lệnh lặp For – do được sử dụng khi: (chọn phương án đúng nhất) A. Lặp với số lần biết trước B. Lặp với số lần chưa biết trước C. Lặp với số lần có thể biết trước D. Lặp với số lần không bao giờ biết trước II. THỰC HÀNH Câu 1: Tính tổng các số tự nhiên đầu tiên từ 1 đến n (N được nhập vào từ bàn phím). Câu 2: Viết chương trình tính N! (N giai thừa: n!=1*2*3*.....*n)

2 câu trả lời

1D. readln(x)

2C. Writeln(a*a) (nhưng có thể dùng câu lệnh sqr(a) để bình phương a)

3D. Readln(x);

4B. 16 mod 5 = 1

5B. Một số thực bất kì (có thể là số nguyên) trong phạm vi cho phép.

6B. var m:integer ;

7A. Const

8D. Hằng.

9A. Var Tong : Real;

10C. Var.

11D. x:= x +5;

12A. 12

13A. for < biến đếm > : = < giá trị đầu > to < giá trị cuối > do < câu lệnh >;

14D. Ngày tắm 2 lần

15A. Một lệnh thay cho nhiều lệnh

16B. Khi biến đếm lớn hơn giá trị cuối

17B. for i:=1 to 10 do x:=x+1;

18A. Integer

19A. ( < giá trị cuối > - < giá trị đầu >) lần

(Thực ra là <gt cuối> - <gt đầu>+1 mới đúng)

20B. 100

21C. Đúng hoặc sai

22B. 15

23B. for < biến đếm> := < Giá trị cuối >downto < Giá trị đầu > do < câu lệnh >;

24B. Giá trị đầu phải nhỏ hơn hoặc bằng giá trị cuối

25A. Lặp với số lần biết trước

dài quá mà có 10 đ bạn có thể hỏi 2 câu tự luận 20 đ cho có nhiều người trả lời bạn

Câu 1: D
Câu 2: C
Câu 3: D
Câu 4: B
Câu 5: B
Câu 6: B
Câu 7: A
Câu 8: D
Câu 9: A
Câu 10: C
Câu 11: D
Câu 12: A
Câu 13: A
Câu 14: D
Câu 15: A
Câu 16: B
Câu 17: B
Câu 18: A
Câu 19: Không có đáp án đúng
Câu 20: B
Câu 21: C
Câu 22: B
Câu 23: B
Câu 24: B
Câu 25: A

Thực hành:

Câu 1:

Program TinhTong;
Uses crt;
Var n,res: longint;
Begin
        Clrscr;
        Write('Nhap n: '); Readln(n);
        res:=n*(n+1) div 2;
        Write('Tong cac so tu nhien tu 1 den n: ',res);
        Readln
End.

Câu 2:

Program TinhTich;
Uses crt;
Var n,i: longint;
    res: qword;
Begin
        Clrscr;
        Write('Nhap n: '); Readln(n);
        res:=1;
        For i:=1 to n do
                res:=res*i;
        Write('Tich = ',res);
        Readln
End.