A. TRẮC NGHIỆM: (2 điểm) Hãy khoanh tròn ý đúng nhất.
Câu 1:Trong ngôn ngữ Pascal, về mặt cú pháp câu lệnh nào sau đây đúng với cấu trúc lặp For ..to..do
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 for i:=1 to 22 do begin…end; câu lệnh ghép được thực hiện bao nhiêu lần (nói cách khác, bao nhiêu vòng lặp được thực hiện?)
A. Không lần nào B. 22 lầnC. 20 lần D. 30 lần
Câu 3:Khi thực hiện đoạn chương trình sau: n:=100; T:=10;
While T>20 do begin T:=T – 10; n:=n+5; end;
Hãy cho biết giá trị của biến n bằng bao nhiêu?
A. 10 B. 100 C. 16 D. 15
Câu 4:Đoạn chương trình này thực hiện bao nhiêu vòng lặp
S:=0;A:=2;while A<5 do S:=S+A;
A. 1 vòng lặp B. Lặp vô hạn
C. 25 vòng lặp D. Không có vòng lặp nào
Câu 5:Hãy phân biệt câu lệnh trong chương trình trên đúng hay sai và đánh dấu “x” vào ô ở cột tương ứng trong bảng dưới đây?
Câu | Đúng | Sai |
a. While a<=b do writeln (‘A’); |
|
|
b. For i:=10 to 1 do writeln(‘A’); |
|
|
c. Var X: array[1..10] of integer; |
|
|
d. Var X: array[15..8] of integer; |
|
|
A. TRẮC NGHIỆM: (2 điểm) Hãy khoanh tròn ý đúng nhất.
Câu 1:Trong ngôn ngữ Pascal, về mặt cú pháp câu lệnh nào sau đây đúng với cấu trúc lặp For ..to..do
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 for i:=1 to 22 do begin…end; câu lệnh ghép được thực hiện bao nhiêu lần (nói cách khác, bao nhiêu vòng lặp được thực hiện?)
A. Không lần nào B. 22 lầnC. 20 lần D. 30 lần
Câu 3:Khi thực hiện đoạn chương trình sau: n:=100; T:=10;
While T>20 do begin T:=T – 10; n:=n+5; end;
Hãy cho biết giá trị của biến n bằng bao nhiêu?
A. 10 B. 100 C. 16 D. 15
Câu 4:Đoạn chương trình này thực hiện bao nhiêu vòng lặp
S:=0;A:=2;while A<5 do S:=S+A;
A. 1 vòng lặp B. Lặp vô hạn
C. 25 vòng lặp D. Không có vòng lặp nào
Câu 5:Hãy phân biệt câu lệnh trong chương trình trên đúng hay sai và đánh dấu “x” vào ô ở cột tương ứng trong bảng dưới đây?
Câu | Đúng | Sai |
a. While a<=b do writeln (‘A’); |
|
|
b. For i:=10 to 1 do writeln(‘A’); |
|
|
c. Var X: array[1..10] of integer; |
|
|
d. Var X: array[15..8] of integer; |
|
|
B. TỰ LUẬN: (8,0 điểm)
Câu 1: Hãy điền đúng , sai (đánh dấu x) và sửa chương trình sau: (3điểm)
Viết chương trình tính H và tìm n biết H= và H >1.85
Câu lệnh | Đ | S | Sửa lỗi |
Use_Crt; |
|
|
|
Var I, n,H :interge; |
|
|
|
Begin; |
|
|
|
H:=1; n:=0; |
|
|
|
clrscr; |
|
|
|
while H<= 1.85 do |
|
|
|
begin n:=n+2; |
|
|
|
if n mod 2 =1 then H:= H+1/n; |
|
|
|
End. |
|
|
|
writeln('so can tim la ,n,’tong la:,H); |
|
|
|
readln end; |
|
|
|
Câu 2: (5 điểm)
a) Hãy mô tả thuật toán chương trình nhập n số nguyên từ bàn phím. Đếm xem có bao nhiêu số chẵn và tính tổng của các số chẵn. Biết N cũng được nhập từ bàn phím
b)Viết chương trình nhập dãy số nguyên từ bàn phím. Đếm xem có bao nhiêu số chẵn và tính tổng của các số chẵn. Biết N cũng được nhập từ bàn phím
Ai giúp mk với
A. TRẮC NGHIỆM: (2 điểm) Hãy khoanh tròn ý đúng nhất.
Câu 1:Trong ngôn ngữ Pascal, về mặt cú pháp câu lệnh nào sau đây đúng với cấu trúc lặp For ..to..do
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 for i:=1 to 22 do begin…end; câu lệnh ghép được thực hiện bao nhiêu lần (nói cách khác, bao nhiêu vòng lặp được thực hiện?)
A. Không lần nào B. 22 lầnC. 20 lần D. 30 lần
Câu 3:Khi thực hiện đoạn chương trình sau: n:=100; T:=10;
While T>20 do begin T:=T – 10; n:=n+5; end;
Hãy cho biết giá trị của biến n bằng bao nhiêu?
A. 10 B. 100 C. 16 D. 15
Câu 4:Đoạn chương trình này thực hiện bao nhiêu vòng lặp
S:=0;A:=2;while A<5 do S:=S+A;
A. 1 vòng lặp B. Lặp vô hạn
C. 25 vòng lặp D. Không có vòng lặp nào
Câu 5:Hãy phân biệt câu lệnh trong chương trình trên đúng hay sai và đánh dấu “x” vào ô ở cột tương ứng trong bảng dưới đây?
Câu | Đúng | Sai |
a. While a<=b do writeln (‘A’); |
|
|
b. For i:=10 to 1 do writeln(‘A’); |
|
|
c. Var X: array[1..10] of integer; |
|
|
d. Var X: array[15..8] of integer; |
|
|
Trong Pascal, câu lệnh nào sau đây được viết đúng?
A. for i := 1.5 to 5.5 do writeln(‘A’);
B. for i := 1 to 100 do writeln(‘A’);
C. for i := 10 to 1 do writeln(‘A’);
D. for i := 1 to 10; do writeln(‘A’);
Câu 13 : Câu lệnh pascal nào sau đây là hợp lệ?
A. For i=1 to 10 do writeln(‘A’) | B. For i : = 1 to 10 do writeln(‘A’); |
C. For i:=5 to 30 do; writeln(‘A’) | D. For i:= 10 to 1 do writeln(‘A’); |
Câu 14: Câu lệnh nào sau đây hợp lệ
A. for i:=100 to 1 do writeln(‘A’);
B. for i:= 1.5 to 10.5 do writeln(‘A’);
C. for i:= 1 to 10 do; writeln(‘A’);
D. for i:=1 to 10 do writeln(‘A’);
Câu 1:
a) for i:=1 to 4 do writeln('A');
b) for i:=1 to 10 do writeln('A');
c) for i:=1 to 10 do writeln('A');
câu2
Cú pháp: while <điều kiện> do ;
Hoạt động:
- Lặp đến khi một điều kiện đã được cho trước thành false
- Nếu điều kiện luôn true thì sẽ xảy ra lỗi vòng lặp vô tận (chương trình sẽ chạy mãi)
câu3
Uses crt;
Var i,n:integer;
a:array[1..1000] of integer;
Begin
clrscr;
Write('Nhap so hoc sinh: ');readln(n);
Writeln('Nhap diem hoc ki mon tin cua ',n,' em hoc sinh:');
For i:=1 to n do
Begin
Write('Hoc sinh thu ',i,' : ');
readln(a[i]);
End;
Writeln('Diem kiem tra cua ',n,' em hoc sinh vua nhap la:');
For i:= 1 to n do writeln('Hoc sinh thu ',i,' : ',a[i]);
readln;
End.
Câu 4: Trong các câu lệnh pascal, câu lệnh nào hợp lệ:
A. For i:=1 to 4 do writeln (‘y’); C. For i=4 to 1 do writeln (‘y’) ;
B. For i:=4 to 1 do writeln (‘y’); D. For i=:4 to 1 do writeln (‘y’);
Câu 5: Cho biết số vòng lặp của câu lệnh: For i:= 22 to 32 do writeln(‘A’);
A. 8 B. 9 C. 10 D. 11
Câu 6: Khi nào thì câu lệnh for ..to..do kết thúc?
A. Khi biến đếm lớn hơn giá trị cuối. C. Khi biến đếm nhỏ hơn giá trị cuối.
B. Khi biến đếm bằng giá trị cuối. D. Khi biến đếm lớn hơn giá trị đầu.
Câu 7: Vòng lặp sau thực hiện bao nhiêu lần lặp:
For i := 1 to 5 do a := a + 1;
A. 3 lần. B. 4 lần. C. 5 lần. D. 6 lần.
Câu 8: Vòng lặp sau cho kết quả S bằng bao nhiêu:
S := 0; For i := 1 to 4 do S := S + 2;
A. S = 8 B. S = 10 C. S = 12 D. S = 14
Câu 9: 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
Câu 10: 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 11: Trong câu lệnh lặp, kiểu dữ liệu của biến đếm là:
A. Real B. String C. Integer D. Char
Câu 12: Câu lệnh lặp với số lần chưa biết trước bắt đầu bằng từ khóa:
A. For B. While C. If D. Var
Câu 13: Từ khóa nào sau đây dùng để khai báo biến:
A. Uses B. Begin C. Var D. Writeln
Câu 14: 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 15: Câu lệnh sau đây cho kết quả như thế nào? For i:=1 to 10 do Writeln(‘A’);
A. In dãy số từ 10 đến 1 ra màn hình B. In dãy số từ 1 đến 10 ra màn hình
C. In 20 ký tự A ra màn hình D. In 10 ký tự A ra màn hình
Câu 16: Cú pháp câu lệnh lặp với số lần chưa biết trước:
A. For ... to... do
B. For <biến đếm>:=<giá trị cuối> to <giá trị đầu> do <câu lệnh>;
C. For ... do
D. For <biến đếm>:=<giá trị đầu > to <giá trị cuối > do <câu lệnh>;
Câu 17: Chọn phát biểu đúng:
A. Lặp vô hạn lần có thể xảy ra ở câu lệnh lặp với số lần biết trước
B. Lặp vô hạn lần là lặp 1000 lần
C. Lặp vô hạn lần có thể xảy ra ở câu lệnh điều kiện
D. Lặp vô hạn lần có thể xảy ra ở câu lệnh lặp với số lần chưa biết trước
Câu 18: Chọn câu lệnh đúng:
A. x:=1; while x<10 do x:=x+5;
B. x =1; while x> 10 do x:=x+5;
C. x:=1; while x:= 10 do x:=x+5;
D. x:=10; while x< 10 do x=x+5;
Câu 19: 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 20: Trong các câu lệnh Pascal sau, câu nào được viết đúng:
A. for i:=1 to 10 do B. for i:=1 to 10 do;
C. for i=1 to 10 do D. for i:1 to 10 do
Câu 21: Để thoát khỏi chương trình Pascal ta dùng tổ hợp phím:
A. Ctrl + X B. Ctrl+ F9 C. Alt + F9 D. Alt +X.
Câu 22. 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 23: Nhặt thóc ra khỏi gạo đến khi trong gạo không còn thóc là :
A. Lặp 10 lần B. Lặp vô số lần
C. Lặp với số lần chưa biết trước D. Lặp với số lần biết trước
Câu 24: Các câu lệnh sau, câu lệnh nào hợp lệ ?
A. For i:=1 to 10 do; write (‘a’)
B. For i:=1 to 10 do write (‘a’);
C. var x:real; begin for x:=1 to 10 do write (‘a’); end.
D. For i=1 to 10 do write (‘a’);
Câu 25: Cho câu lệnh sau: S:=S+1/i ; Cho biết kiểu dữ liệu cần khai báo cho biến S là:
A.integer B. byte C. longint D. real
Câu 26: Cho biết cú pháp khai báo biến mảng
A. <tên mảng>:array [<chỉ số đầu> …. <chỉ số cuối>] of <kiểu dữ liệu>;
B. <tên mảng>:array [<chỉ số đầu> .. <chỉ số cuối>] for <kiểu dữ liệu>;
C. <tên mảng>:array [<chỉ số đầu>.. <chỉ số cuối>] of <kiểu dữ liệu>;
D. <tên mảng>:array [<chỉ số đầu> ... <chỉ số cuối>] of <kiểu dữ liệu>;
Câu 27: 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 28: 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 29: Khai báo biến kiểu mảng nào sau đây là hợp lệ:
A. Var a,b: array[1 .. n] of real;
B. Var a,b: array[1 : n] of Integer;
C. Var a,b: array[1 .. 100] of Integer ;
D. Var a,b: array[1 … 100] of real;
Câu 30: Tính giá trị cuối cùng của b, biết rằng: a:= 3; b:= 5;
while a<0 do b:= a + b; a:=a+1;
A. b= 8 B. b=3 C. b= 5 D. b= 0
Để in ra màn hình giá trị từ một đến 10 của biến điểm y, ta sử dụng câu lệnh: a for I :=1 to 10 writeln (‘I’) b for I:= 1 to 10 do writeln (I ); c for I: = 1 to n do writeln ( I ) ; d for I: = 10 downto 1 do write (I);