WorksheetsÔN TẬP TIN 11- GIỮA KÌ 2
Total questions: 56
Worksheet time: 24mins
Chọn phát biểu SAI trong các phát biểu nói về CẤU TRÚC LẶP sau:
Có thể dùng cấu trúc lặp để thay cho cấu trúc rẽ nhánh trong mô tả thuật toán.
Để mô tả cấu trúc lặp với số lần không biết trước, pascal dùng câu lệnh lặp while – do
Để mô tả cấu trúc lặp với số lần biết trước, pascal dùng câu lệnh lặp for - do
Trong Pascal có 2 dạng lặp: lặp với số lần biết trước và lặp với số lần chưa biết trước
Trong vòng lặp While – do, câu lệnh được thực hiện khi:
Điều kiện sai
Điều kiện còn đúng
Điều kiện không xác định
Không cần điều kiện
Câu lệnh while – do có cú pháp nào dưới đây?
who <điều kiện> do <câu lệnh>;
while <điều kiện> do <câu lệnh>;
what <điều kiện> to <câu lệnh>;
while <điều kiện> begin <câu lệnh>;end;
Kiểu dữ liệu của biến đếm trong lệnh lặp For – do là:
Cùng kiểu với giá trị đầu và giá trị cuối
Chỉ cần khác kiểu với giá trị đầu
Cùng kiểu với các biến trong câu lệnh
Không cần phải xác định kiểu dữ liệu
Hãy chọn phương án ĐÚNG ở dạng lặp tiến For – do ?
Giá trị đầu phải nhỏ hơn giá trị cuối
Giá trị đầu phải nhỏ hơn hoặc bằng giá trị cuối.
Giá trị đầu phải lớn hơn giá trị cuối
Giá trị đầu phải bằng giá trị cuối
Cú pháp lệnh lặp For – do dạng lùi là:
for < biến đếm> = < Giá trị cuối > down< Giá trị đầu > do < câu lệnh >;
for < biến đếm> = < Giá trị cuối > to < Giá trị đầu > do < câu lệnh >;
for < biến đếm>:= < Giá trị đầu > to < Giá trị cuối > do < câu lệnh>;
for < biến đếm>:= < Giá trị cuối > downto < Giá trị đầu > do < câu lệnh >;
Cho đoạn chương trình:
S:= 0; n:= 1;
while … do
Begin
S:= S + n;
n:= n + 1;
end;
Tính tổng S = 1 + 2 + 3 + … + 10, điều kiện nào sau đây cần điền vào chỗ ba chấm (…) giữa câu lệnh while … do?
n >= 10
n < 10
n < 10
n <= 10
Đoạn chương trình sau thực hiện công việc?
While M <> N do
If M > N then M:=M - N else N:=N - M;
Tìm ước số chung lớn nhất của M và N
Tìm bội số chung nhỏ nhất của M và N
Tìm hiệu nhỏ nhất của M và N
Tìm hiệu lớn nhất của M và N
Câu lệnh sau thực hiện công việc gì?
For i:= 1 to M do If (i mod 3 = 0) then t:= t + i;
Tổng các số chia hết cho 3 hoặc 5 trong phạm vi từ 1 đến M
Tổng các số chia hết cho 3 và 5 trong phạm vi từ 1 đến M
Tổng các số chia hết cho 3 trong phạm vi từ 1 đến M
Tổng các số chia hết cho 5 trong phạm vi từ 1 đến M
Hãy cho biết đoạn chương trình sau thực hiện công việc gì?
i: = 0; t:= 0;
while i < 100 do
Begin
t:= t + i; i:= i + 2;
end;
Tính tổng các số tự nhiên nhỏ hơn hoặc bằng 10
Tính tổng các số tự nhiên chẵn nhỏ hơn 100
Tính tổng các số tự nhiên chẵn nhỏ hơn hoặc bằng 1000
Tính tổng các số tự nhiên nhỏ hơn 10
Phát biểu nào sau đây ĐÚNG về mảng một chiều?
Là dãy hữu hạn các phần tử có cùng kiểu dữ liệu
Chỉ là dãy các số nguyên
Mảng không chứa các kí tự là chữ cái
Là dãy vô hạn các phần tử có cùng kiểu dữ liệu
Cách viết nào sau đây tham chiếu đúng phần tử thứ i của mảng D?
D[',i',]
D['i']
D[i]
D(i)
Để nhập từ bàn phím giá trị phần tử thứ i của mảng A, ta viết:
Readln(A[i]);
Writeln(A[i]);
Readln(i);
Writeln(i);
Câu lệnh write(A[i]); dùng để:
In ra màn hình giá trị phần tử thứ i của mảng A
Tham chiếu tới phần tử thứ i của mảng A
Tính tổng mảng A
Nhập giá trị cho các phần tử mảng A
Khai báo nào dưới đây ĐÚNG về biến kiểu mảng một chiều gồm 10 phần tử số nguyên?
Var mang: array[0..10] of integer;
Var mang: array(0..10) of real;
Var mang: array[0...10] of real;
Var mang: array[0..10] of real
Cho khai báo mảng:Var a: array[0..50] of real ;
và đoạn chương trình như sau:
max:=a[1] ;
for i:= 2 to 50 do if a[i] > max then max:=a[i] ;
Đoạn chương trình trên thực hiện công việc?
Tìm phần tử nhỏ nhất trong mảng
Tìm phần tử lớn nhất trong mảng
Tìm chỉ số của phần tử lớn nhất trong mảng
Tìm chỉ số của phần tử nhỏ nhất trong mảng
Cho khai báo mảng:
Var a: array[1..50] of real ;
và đoạn chương trình như sau:
s:= 0 ; for i:= 1 to 50 do s:= s + a[i];
Đoạn chương trình trên thực hiện công việc?
Tính tích các phần tử trong mảng;
Tính tổng các phần tử trong mảng;
Tính hiệu các phần tử trong mảng
Tính thương các phần tử trong mảng
Cho khai báo mảng:
Var a: array[0..50] of real;
Phương án nào dưới đây chỉ phần tử thứ 10 của mảng?
a(10);
a[10];
a(9);
a[9];
Phát biểu nào ĐÚNG về kiểu dữ liệu xâu?
Là dãy các ký tự trong bộ mã ASCII
Là dãy các ký tự chữ
Là dãy các ký tự dấu
Là dãy các ký tự số
Hãy chọn phương án ĐÚNG về các phép so sánh xâu ?
Cộng, trừ, nhân, chia.
=, <>, <, <=, >, >=
+, - , *, =
Cắt, dán, sao chép
Để tham chiếu tới phần tử của xâu được xác định bởi tên biến xâu và chỉ số đặt trong cặp ngoặc :
[ và ]
{ và }
( và )
<và>
Trong ngôn ngữ lập trình Pascal, khai báo nào dưới đây SAI về biến kiểu xâu?
Var St: String[300];
Var St: String[10];
Var St: String;
Var St: String[0];
Trong ngôn ngữ lập trình Pascal, hàm Length(S) cho kết quả là:
Số ký tự của xâu không tính dấu cách cuối cùng.
Độ dài tối đa của xâu S khi khai báo.
Độ dài của xâu S.
Số ký tự của xâu S không tính các dấu cách.
Hãy chọn phương án ĐÚNG khi thực hiện thủ tục Insert(S1,S2,vt) ?
Chèn xâu S1 vào S2 bắt đầu từ vị trí vt
Cộng xâu s1 vào s2
So sánh xâu s1 và s2
Đưa ra độ dài xâu s1 và s2
Cho xâu S= 'Thu do Ha Noi', khi thực hiện thủ tục Delete(S,1,6) kết quả là:
'Thu do Ha Noi'
' Ha Noi'
'Thu do'
'Noi'
Đoạn chương trình dưới đây thực hiện công việc gì?
d:= 0;
for i:= 1 to length(S) do
if S[i] = ' ' then d:= d + 1;
Xóa các kí tự số
Đếm các kí tự có trong xâu
Đếm số dấu cách có trong xâu
Xóa đi các dấu cách trong xâu
Câu lệnh nào thực hiện đưa ra xâu S theo thứ tự đảo ngược (ví dụ: xâu dcba là xâu đảo ngược của xâu abcd)
For i:= 1 to length(S) do write(S[i]);
For i:= 1 to length(S) do writeln(S);
For i:= length(S) to 1 do write(S);
For i:= length(S) downto 1 do write(S[i]);
Câu lệnh sau thực hiện công việc gì ?
If length(a) < length(b) then write(a) Else write(b) ;
Tính độ dài của xâu a
Tính độ dài xâu b
Kiểm tra và In ra màn hình xâu dài hơn
Kiểm tra và In ra màn hình xâu ngắn hơn
Em hãy chỉ ra cấu trúc nào được sử dụng trong đoạn chương trình sau:
Tong:=0; For i:=1 to 10 do tong:=tong+i;
Cấu trúc rẽ nhánh
Cấu trúc lặp
Câu lệnh ghép
Cấu trúc chương trình
Câu lệnh While – Do dùng để làm gì?
Lặp với số lần biết trước
Lặp với số lần chưa biết trước
Đưa dữ liệu ra màn hình
Nhập dữ liệu vào từ bàn phím
Em hãy cho biết đâu là cú pháp của cấu trúc lặp không biết trước?
who <điều kiện> do <câu lệnh>
while <điều kiện> do <câu lệnh> ;
what <điều kiện> to <câu lệnh>;
while <điều kiện> begin <câu lệnh>;end;
Đâu là kiểu dữ liệu của biến đếm trong vòng lặp For – do:
Kiểu nguyên
Kiểu thực
Kiểu xâu
Kiểu logic
Hãy chọn phương án SAI ở dạng lặp tiến For – do ?
Là câu lệnh lặp với số lần biết trước
Giá trị đầu phải nhỏ hơn hoặc bằng giá trị cuối.
Biến đếm cùng kiểu với giá trị đầu và giá trị cuối
Giá trị đầu phải bằng giá trị cuối
Cú pháp lệnh lặp For – do dạng tiến là:
for < biến đếm> = < Giá trị cuối > down< Giá trị đầu > do < câu lệnh >;
for < biến đếm> = < Giá trị cuối > down < Giá trị đầu > do < câu lệnh >;
for < biến đếm>:= < Giá trị đầu > to < Giá trị cuối > do < câu lệnh>;
for < biến đếm>:= < Giá trị cuối > downto < Giá trị đầu > do < câu lệnh >;
Cho đoạn chương trình:
S:= 0; n:= 0;
while … do
Begin
S:= S + n;
n:= n + 1;
end;
Tính tổng S = 1 + 2 + 3 + … + 10, điều kiện nào sau đây cần điền vào chỗ ba chấm (…) giữa câu lệnh while … do?
n >= 10
n < 10
n < 10
n <= 10
Đoạn chương trình sau thực hiện công việc?
S:=0, i:=100
While (i > 0) do
begin
S:=s+i; i:=i-1;
End;
Tính tổng các số từ 1đến 100
Tính tổng các số lớn hơn 100
Tính tổng các số chẵn từ 1 đến 100
Tính tổng các số lẻ từ 1 đến 100
Câu lệnh sau thực hiện công việc gì?
For i:= 1 to M do If (i mod 5 = 0) then t:= t + i;
Tổng các số chia hết cho 3 hoặc 5 trong phạm vi từ 1 đến M
Tổng các số chia hết cho 3 và 5 trong phạm vi từ 1 đến M
Tổng các số chia hết cho 3 trong phạm vi từ 1 đến M
Tổng các số chia hết cho 5 trong phạm vi từ 1 đến M
Hãy cho biết đoạn chương trình sau thực hiện công việc gì?
i: = 1; t:= 0;
while i < 100 do
Begin
t:= t + i; i:= i + 2;
end;
Tính tổng các số tự nhiên nhỏ hơn hoặc bằng 10
Tính tổng các số tự nhiên lẻ nhỏ hơn 100
Tính tổng các số tự nhiên chẵn nhỏ hơn hoặc bằng 10
Tính tổng các số tự nhiên nhỏ hơn 10
Phát biểu nào sau đây SAI về mảng một chiều?
Là dãy hữu hạn các phần tử có cùng kiểu dữ liệu
Mảng được đặt tên và mỗi phần tử của nó có một chỉ số.
Để mô tả mảng một chiều cần xác định kiểu của các phần tử và cách đánh số các phần tử của nó.
Là dãy vô hạn các phần tử có cùng kiểu dữ liệu
Tham chiếu tới phần tử của mảng một chiều được xác định bởi tên mảng cùng với chỉ số, được viết trong cặp ngoặc:
[ và ]
{ và }
( và )
<và>
Câu lệnh Readln(A[i]); dùng để:
In ra màn hình giá trị phần tử thứ i của mảng A
Tham chiếu tới phần tử thứ i của mảng A
Tính tổng mảng A
Nhập từ bàn phím giá trị của phần tử thứ i của mảng A
Cách viết nào sau đây đưa ra màn hình giá trị phần tử i của mảng A?
Write(A[i]);
Write(A{i});
Write(A(i));
Write(A[‘i’]);
Để khai báo một mảng B gồm 100 phần tử thực, ta viết:
Var B: array[0:10] of integer;
Var B: array(0..10) of integer;
Var B: array[0..100] of REAL;
Var B: array[0.,.10] of integer
A
B
C
D
A
B
C
D
A
B
C
D
Xâu là:
Dãy hữu hạn các phần tử cùng kiểu
Dãy các kí tự trong bảng mã ASCII
Dãy vô hạn các phần tử cùng kiểu
Bảng các phần tử cùng kiểu.
Phép ghép xâu (phép cộng xâu) dùng để:
So sánh 2 xâu
Nhân 2 xâu
Ghép nhiều xâu thành một
Trừ 2 xâu
Cách viết nào sau đây tham chiếu đúng phần tử thứ i của xâu S?
S[',i',]
S['i']
S(i)
S[i]
Trong ngôn ngữ lập trình Pascal, khai báo nào dưới đây ĐÚNG về biến kiểu xâu?
Var A: STRING
Var A : string[400];
Var A: string[200];
var A: string[20]
Trong ngôn ngữ lập trình Pascal, hàm Upcase(CH) cho kết quả là:
Độ dài của xâu CH
Chữ cái in thường tương ứng với chữ cái trong CH
Chữ cái in hoa tương ứng với chữ cái trong CH
Số ký tự của xâu CH không tính các dấu cách.
Chọn phương án ĐÚNG khi thực hiện thủ tục Delete(S,vt,n) ?
Xóa n kí tự của biến xâu S bắt đầu từ vị trị vt
Cộng xâu s vào vt
So sánh xâu s và vt
Đưa ra độ dài xâu s
Cho xâu S= 'Thu do Ha Noi', khi thực hiện thủ tục Delete(S,7,7) kết quả là:
'THa Noi'
' Ha Noi'
'Thu do'
'Noi'
# Đoạn chương trình sau thực hiện công việc ?
S1 := ‘tin hoc’ ;
S2 := ‘11’ ;
S :=S1+S2 ;
Write(s) ;
Ghép 2 xâu theo thứ tự s1+s2 và in kết quả ra màn hình
Ghép 2 xâu theo thứ tự s2+s1 và in kết quả ra màn hình
Tính tổng độ dài 2 xâu và in kết quả ra màn hình
So sánh và In ra màn hình xâu dài hơn
Câu lệnh sau có ý nghĩa?
For i:= length(S) downto 1 do write(S[i]);
Đưa ra độ dài xâu S
Đếm số dấu cách có trong xâu S
In ra xâu S theo thứ tự đảo ngược
In ra xâu S
Câu lệnh sau thực hiện công việc gì ?
If length(a) > length(b) then write(a) Else write(b) ;
Tính độ dài của xâu a
Tính độ dài xâu b
Kiểm tra và In ra màn hình xâu dài hơn
Kiểm tra và In ra màn hình xâu ngắn hơn
