Hàm cho giá trị False nếu con trỏ tệp ở vị trí kết thúc tệp.. Hàm cho giá trị False nếu con trỏ tệp ở vị trí kết thúc dòng.. Tính tổng các phần tử của S có giá trị nhỏ hơn 50.?. Đoạn chư
Trang 140 CÂU HỎI TRẮC NGHIỆM MÔN TIN HỌC 11 Câu 1: Các phần tử trong mảng một chiều phải:
A giống hệt nhau; C có kiểu dữ liệu giống nhau;
Câu 2: cho a=1, b=1; hãy cho biết t sẽ nhận giá trị nào khi kết thúc đoạn chương trình sau:
a:=b+1; b:=a;
If a=b Then t:=a+b+1
Else t:=a+b-1;
Câu 4: Điều kiện 10<x<15, trong Pascal được tách ra như thế nào?
A (10<x) Or (x<15) C.(10<x) Not (x<15)
B (10<x) And (x<15) D Cả A,B,C đều sai;
Câu 5: Kiểu Boolean và Byte có cùng kích thước với kiểu dữ liệu nào?
Câu 6: Trong khai báo mảng một chiều, nếu ở kiểu chỉ số có n1=-99; n2=0 Hãy cho biết muốn tham chiếu đến phần tử thứ 4 của mảng thì chỉ số là:
Câu 7: Cho bài toán: Tính và xuất ra màn hình giá trị của Z với
−
+
=
y x
| y
|
| x
| Z Hãy cho biết, cần sử dụng cấu trúc nào?
B Lặp với số lần biết trước dạng lùi; D Lặp với số lần biết trước dạng tiến;
Câu 8: Cho s,i,n là số nguyên dương Câu lệnh tính s=n! là:
A s:=1; For i:=1 To n Do s:=s*i; C s:=1; For i:=1 To n Do s:=s*n;
B s:=0; For i:=1 To n Do s:=s*i; D s:=1; For i:=1 To n Do s:=s+i;
Câu 9: Đoạn chương trình nào thu được giá trị của biến s = 10?
Câu 10: Trong cú pháp câu lệnh If-Then, điều kiện là:
B biểu thức toán học D Cả A,B,C đều sai
Câu 11: Kiểu Real có kích thức bao nhiêu byte?
Câu 12:Những thông tin nào không phải là thành phần cơ bản của ngôn ngữ lập trình?
Câu 13: “Biến mảng chỉ có thể nhận được giá trị khi thực hiện thủ tục nhập giá trị từ bàn phím” Phát biểu trên là:
Câu 14: Tên sai trong ngôn ngữ lập trình Pascal là:
Câu 15: Hàm Sqr áp dụng cho các đối số có kiểu là:
A số thực; B số nguyên; C Cả A,B đều đúng; D Cả A,B đều sai;
Câu 16: Kiểu dữ liệu chuẩn được sử dụng để làm gì?
Câu 17: cho đoạn chương trình sau:
A
s:=5;
s:=s*s;
write(s);
D
s:=10;
s:=s+s;
write(s);
B
s:=5;
s:=s+s;
write(s);
C
s:=10;
s:=s*s;
write(s);
Nếu x ≤ y Nếu x > y
Trang 2For i:=1 To 5 Do
If i mod 2=0 Then S:=S+I;
Hãy cho biết s nhận giá trị nào?
Câu 18: thông tin nào không phải là hằng số học?
Câu 19: Biểu thức nhận giá trị là True hoặc False là:
A Toán học thực và lôgic; C Lôgic và quan hệ;
B Toán học và lôgic; D Quan hệ và Toán học;
Câu 20: các phần tử của mảng có thể có kiểu gì?
B Real, Integer; D Real ,Integer, Char, Boolean;
Câu 21: Thủ tục mở một tệp để ghi thông tin từ ngoài vào tệp là:(0.25đ)
A Rewrite(<tên biến tệp>); C Rewrite(<tên tệp>);
B Rewrite(<tên biến tệp>,<tên tệp>); D Rewrite(<tên tệp>,<tên biến tệp>);
Câu 23: Thủ tục nào sau đây không được dùng khi sử dụng tệp văn bản: (0.25đ)
A Write(<tên biến tệp>, <tên biến>);
B Read(<tên biến tệp>, <tên biến>);
C Writeln(<tên biến tệp>, <tên biến>);
D Tất cả đều dùng được khi sử dụng tệp văn bản
Câu 25: Phát biểu nào sau đây là chính xác khi nói về hàm EOF:(0.25đ)
A Hàm cho giá trị False nếu con trỏ tệp ở vị trí kết thúc tệp
B Hàm cho giá trị False nếu con trỏ tệp ở vị trí kết thúc dòng
C Hàm cho giá trị True nếu con trỏ tệp ở vị trí kết thúc tệp
D Hàm cho giá trị True nếu con trỏ tệp ở vị trí kết thúc dòng
Câu 27: Cho chương trình sau: (0.5)
Var f: text;
Begin
Assign(f,‘output.dat’);
Rewrite(f);
Write(f, ‘510 + 702 - 792’);
Close(f);
End.
Sau khi thực hiện chương trình, tập tin ‘output.dat’ có nội dung như thế nào?
A 510 702 792 B 420 C 510 + 702 - 792 D 510702792
Câu 28: Cho chương trình sau: (0.5)
Var t: text; d:real; x,y:integer;
Begin
Assign(t,‘dulieu.txt’);
Reset(t);
While not eof(t) Do
Begin
Read(t,x,y);
d:=sqrt(x*x+y*y);
Writeln(‘ket qua =’, d:5:2);
End;
Close(t);
Readln;
End.
Sau khi thực hiện chương trình, màn hình có nội dung như thế nào nếu tệp ‘dulieu.txt’ chứa thông tin sau: 3 4 4 3?
Trang 3A B C D
Câu 30: Muốn sử dụng thủ tục xóa màn hình (Clrscr) ta phải khai báo thư viện như thế nào?
A Type Use; B Type Uses; C Uses Crt; D Uses Ctr;
Câu 31: Muốn biến h lưu trữ độ dài xâu s ta viết:
A s:=copy(h); C h:=copy(s);
Câu 32: Biến t có thể nhận các giá trị là 1; 100; 12.55; -46.1; Có thể khai báo biến t có kiểu là:
A Integer và Real; B Byte và Integer; C Real và Byte; D Real;
Câu 33: Phần mở rộng của Pascal là:
Câu 34: Thủ tục để nhập dữ liệu vào biến là:
A Write và Readln; B Read và Writeln; C Writeln và Write; D Readln
và Read;
Câu 35: Xét biểu thức (m mod 2 <>0) And (m div 2 >=5) Với giá trị nào của m dưới đây để biểu
thức trên cho giá trị là True?
Câu 36: Biến N chỉ nhận một trong 2 giá trị là ‘1’ và ‘0’ Hãy cho biết khai báo nào sau đây là
đúng
A Var N:Char; B Var N:Byte; C Var N: Boolean D Var N:Real;
Câu 37: Hàm tính căn bậc 2 của P là:
Câu 38: Biểu thức (2*2<1+1) Or (Abs(-3)<=3) trong Pascal sẽ nhận giá trị:
Câu 39: Hãy chọn ra kiểu dữ liệu có kích thước bộ nhớ lớn nhất trong các kiểu sau:
Câu 40: Biết a,b,c là độ dài 3 cạnh của một tam giác, biểu thức a+b>c trong Pascal cho giá trị là:
HẾT./
ketqua = 5.00
ketqua =25.00
ketqua =25.00 ketqua = 5.00
ketqua =25.00 ketqua =25.00
ketqua = 5.00 ketqua = 5.00
Trang 4ĐÁP ÁN
Câu 1: C
Câu 2: B
Câu 3: C
Câu 4: B
Câu 5: A
Câu 6: C
Câu 7: A
Câu 8: A
Câu 9: B
Câu 10: A
Câu 11: C
Câu 12: B
Câu 13: B
Câu 14: A
Câu 15: C Câu 16: A Câu 17: A Câu 18: D Câu 19: C Câu 20: D Câu 21: A Câu 22: C Câu 23: D Câu 24: B Câu 25: C Câu 26: A Câu 27: C Câu 28: D
Câu 29: C Câu 30: C Câu 31: D Câu 32: D Câu 33: C Câu 34: D Câu 35: C Câu 36: A Câu 37: D Câu 38: C Câu 39: D Câu 40: A
Trang 5Câu số: 1 Trong Pascal, để truy cập tới phần tử của mảng 1 chiều ta dùng cặp dấu ngoặc nào?
Câu số: 2 Trong Pascal, để khai báo trực tiếp mảng 1 chiều ta thực hiện?
Var <tên biến mảng> : array[<chỉ số
hàng>] of <kiểu phần tử>; Var <tên biến mảng> : array[<kiểu chỉ số>] of <kiểu phần tử>; Var <tên biến mảng> : array[<kiểu chỉ
số>] of <số lượng phần tử>; Var <tên kiểu mảng> : array[<kiểu chỉ số>] of <kiểu phần tử>;
Câu số: 3 Trong Pascal, có đoạn chương trình sau:
Var S:array[1 10] of real;
Và
S2:=0;
for i:=1 to 10 do if S[i] < 50 then s2:=s2+s[i];
Đoạn chương trình trên dùng để tính:
Tính tổng các phần tử của S có giá
trị lớn hơn 50 Tính tổng các phần tử của S có giá trị nhỏ hơn 50 Tính tích các phần tử của S có giá trị
Câu số: 4 Trong Pascal, khai báo kiểu gián tiếp biến mảng hai chiều ta thực hiện:
type <tên kiểu mảng> = array[<kiểu chỉ
số cột>,<kiểu chỉ số hàng>] of <kiểu
phần tử>;
var <tên biến mảng> =<tên kiểu mảng>;
type <tên kiểu mảng> = array[<kiểu chỉ
số hàng, kiểu chỉ số cột>] of <kiểu phần tử>;
var <tên biến mảng>:<tên kiểu mảng>; type <tên kiểu mảng> = record[<kiểu
chỉ số hàng, kiểu chỉ số cột>] of <kiểu
phần tử>;
var <tên biến mảng>:<tên kiểu mảng>;
type <tên kiểu mảng> = array[<chỉ số hàng, chỉ số cột>] of <kiể mảng khác>; var <tên biến mảng>:<tên kiểu mảng>;
Câu số: 5 Trong ngôn ngữ lập trình Pascal, với cách khai báo như sau:
Type mang = array[1 100] of integer;
Var a, b: mang;
c: array[1 100] of integer;
Câu lệnh nào dưới đây là hợp lệ?
Câu số: 6 Trong ngôn ngữ lập trình Pascal:
Các phần tử của mảng một chiều được
sắp thứ tự theo chỉ số Các phần tử của mảng một chiều được sắp thứ tự theo giá trị giảm dần Các phần tử của mảng một chiều được
sắp thứ tự theo giá trị tăng dần Các phần tử của mảng một chiều không sắp thứ tự
Câu số: 7 Trong Pascal, có đoạn chương trình sau:
Min:=A[1]; cs:=1;
for i:=1 to n do if A[i] < Min then
Begin Min := A[i]; cs:=i;
End;
Giả sử các phần tử của mảng A nhận các giá trị là: 4,8,6,3,0,1,7,6, thì kết quả của Min
và cs sau khi chạy đoạn chương trình trên là:
Trang 6Min = 1;cs=1; Min = 0;cs=5;
Câu số: 8 Trong Pascal, có khai báo: B:array[1 10,1 10] of integer; thì việc truy xuất đến phần
tử của mảng sẽ được viết là:
Câu số: 9 Trong ngôn ngữ lập trình Pascal, để đổi giá trị hai phần tử mảng một chiều A tại hai vị
trí i và j, ta viết:
A[i] := TG;
A[i] := A[j];
A[j] := TG;
TG := A[i];
A[i] := A[j];
A[j] := TG;
TG := A[i];
A[j] := A[i];
A[j] := TG;
TG := A[i];
A[i] := A[j];
TG := A[j];
Câu số:
10 Trong Pascal, có đoạn chương trình sau: var A:array[1 10] of real; i:byte;
begin
Randomize;
for i:=1 to 10 do A[i]:=random(100);
end.
Khẳng định nào sau đây là đúng?
Giá trị của các phần tử của A sẽ là tổng
các số từ 0 đến 100 Giá trị các phần tử của A sẽ lớn hơn 100 Giá trị các phần tử của A sẽ từ -100 đến
Câu số:
11 Trong Pascal, câu lệnh nào sau đây được khai báo đúng:
Type kieu1chieu = array(1 500) of
boolean;
var a:kieu1chieu;
Type kieu1chieu = array[1 50] of byte; var a:kieu1chieu;
Type kieu1chieu : array[1 50] of
integer;
var a:kieu1chieu;
Type kieu1chieu = array[1 50[ of boolean;
var a:kieu1chieu;
Câu số:
12 Trong Pascal, có khai báo: B:array[1 10,1 10] of integer; công việc nhập dữ liệu cho mảng sẽ được thực hiện qua câu lệnh:
for i:=1 to 10 do
for j:=1 to 10 do
readlnB[i,j]
for i:=1 to 10 do for j:=1 to 10 do readln(B[i,j]);
for i:=1 to 10 do
for j:=1 to 10 do
write(B[i,j])
for i:=1 to 10 do for j:=10 to 1 do readln(B[i,j]);
Câu số:
13 Trong Pascal, về mặt cú pháp câu lệnh nào sau đây là đúng:
Type 1chieu = array[1 500] of boolean; Type 1chieu = array[1 500] of boolean; Type 1chieu = arrays[1 500] of
Câu số: Trong Pascal, khai báo kiểu gián tiếp biến mảng một chiều ta thực hiện:
Trang 714
type <tên kiểu mảng> = array[<kiểu chỉ
số>] of <kiểu phần tử>;
var <tên biến mảng> =<tên kiểu mảng>;
type <tên kiểu mảng> = string[<kiểu chỉ số>] of <kiểu phần tử>;
var <tên biến mảng>:<tên kiểu mảng>; type <tên kiểu mảng> = array[<kiểu chỉ
số>] of <kiểu phần tử>;
var <tên biến mảng>:<tên kiểu mảng>;
type <tên kiểu mảng> = array[<kiểu chỉ số>] of <kiể mảng khác>;
var <tên biến mảng>:<tên kiểu mảng>;
Câu số:
15 Trong Pascal, ta có khai báo như sau: var a : array[1 10] of real; i:byte; Để nhập dữ liệu cho các phần tử trong mảng ta thực hiện:
for i:=1 to 100 do readln(a[i]); for i:=10 to 1 do readln(a[i]);
Câu số:
16 Trong Pascal, có đoạn chương trình sau: T:=0;
for i:=1 to n do If A[i] mod k = 0 then T:=T+A[i];
Em hãy cho biết ý nghĩa của đoạn chương trình trên?
Đoạn chương trình trên sẽ tính tổng số
các phẩn tử trong mảng A có giá trị chia
hết cho số k
Đoạn chương trình trên sẽ tính tổng số các phẩn tử trong mảng A
Đoạn chương trình trên sẽ tính tổng số
các phẩn tử trong mảng A có giá
trị bằng số k
Đoạn chương trình trên sẽ tính tích số các phẩn tử trong mảng A mà có giá trị chia hết cho số k
Câu số:
17 Trong Pascal, để khai báo trực tiếp mảng 2 chiều ta thực hiện:
var <tên biến mảng>:array[kiểu chỉ số
cột, kiểu chỉ số hàng] of <kiểu phần tử>; var <tên biến mảng>:array[kiểu chỉ số cột, kiểu chỉ số cột] of <kiểu phần tử>; var <tên biến mảng>:array[kiểu chỉ số
hàng, kiểu chỉ số hàng] of <kiểu phần
tử>;
var <tên biến mảng>:array[kiểu chỉ số hàng, kiểu chỉ số cột] of <kiểu phần tử>;
Câu số:
18 Trong Pascal, để gán giá trị cho bản ghi ta có thể thực hiện bằng cách nào?
Gán giá trị cho từng trường Gán giá trị cho từng bản ghi
Nhập dữ liệu từ bàn phím Cả 3 cách trên đều đúng
Câu số:
19 Trong ngôn ngữ lập trình Pascal, có thể gán giá trị cho bản ghi bằng cách nào?
Gán giá trị cho từng trường Gán giá trị cho bản ghi
Nhập giá trị từ bàn phím Cả 3 cách trên
Câu số:
20 Trong ngôn ngữ lập trình Pascal, sau khi chương trình thực hiện xong đoạn chương trình sau, giá trị của biến S là? S := ‘Ha Noi mua thu’; Delete (S, 7, 8); Insert (‘Mua thu’, S, 1);
Câu số:
21 Trong Pascal, khi làm việc với kiểu xâu ta có thể?
So sánh hai xâu với nhau Ghép hai xâu thành một
Gán một kí tự bất kì cho biến xâu? Cả 3 đáp án trên
Câu số: Trong ngôn ngữ lập trình Pascal, phần tử đầu tiên của xâu kí tự mang chỉ số là?
Trang 822
Câu số:
23 Trong Pascal, ta có thể coi xâu kí tự là?
Một dãy các kí tự số trong bảng mã
ASCII Một dãy các kí tự chữ cái thường trong bảng mã ASCII Một dãy các kí tự trong bảng mã ASCII Một dãy các kí tự chữ cái hoa trong bảng mã ASCII
Câu số:
24 Trong Pascal, hàm Upcase(c) sẽ cho kết quả là?
Câu số:
25 Trong Pascal, đoạn chương trình sau thực hiện việc gì? X:=Length(S);
for i:=X to 1 do if S[i] = ' ' then Delete(S,i,1);
Xóa dấu cách đầu tiên trong xâu S Xóa một dấu cách cuối xâu S
Xóa x dấu cách trong xâu S Xóa mọi dấu cách trong xâu S
Câu số:
26 Trong ngôn ngữ lập trình Pascal, thủ tục Delete (S, V, N) thực hiện công việc gì trong các việc sau?
Xoá trong xâu kí tự S N kí tự bắt đầu từ
vị trí V
Xoá trong xâu kí tự S V kí tự bắt đầu từ vị trí N
Xoá trong xâu kí tự V S kí tự bắt đầu từ
vị trí N
Xoá trong xâu kí tự N V kí tự bắt đầu từ vị trí S
Câu số:
27 Trong ngôn ngữ lập trình Pascal, xâu kí tự có tối đa?
Câu số:
28 Trong Pascal, xâu không có kí tự nào được gọi là?
Câu số:
29 Giả sử có 2 biến xâu x và y (y đã có giá trị) câu lệnh nào sau đây là không hợp lệ?
x := Delete (y, 5, 3); Delete (y, 5, 3);
Câu số:
30 Trong Pascal, cách khai báo xâu kí tự nào sau đây là đúng?
Câu số:
31 Trong Pascal, đoạn chương trình sau thực hiện công việc gì? d:=0;
for i:=1 to Length(X) do If (X[i] >= '0 ') and (X[i] <= '9 ') then d:=d+1;
Đếm số lần xuất hiện kí tự số trong xâu
Trang 9Tính tổng số lần xuất hiện kí tự đặt biệt
Câu số:
32 Trong ngôn ngữ lập trình Pascal, hàm length(S) cho kết quả là gì?
Độ dài xâu S khi khai báo Số kí tự hiện có của xâu S không tính các dấu cách
Số ký tự của xâu không tính dấu cách
Câu số:
33 Trong ngôn ngữ lập trình Pascal, thủ tục chèn xâu S1 vào xâu S2 bắt đầu từ vị trí vt được viết:
Câu số:
34 Trong Pascal, để tìm vị trí xuất hiện đầu tiên của xâu 'hoa ' trong xâu T ta có thể viết bằng cách nào sau?
T:= 'hoa ';
Câu số:
35 Trong ngôn ngữ lập trình Pascal, với xâu kí tự có các phép toán là?
Phép cộng, trừ, nhân, chia Phép cộng và phép trừ
Trang 10ĐÁP ÁN CHO MÃ ĐỀ SỐ: 58
Câu hỏi số: 1 - B
Câu hỏi số: 2 - B
Câu hỏi số: 3 - B
Câu hỏi số: 4 - B
Câu hỏi số: 5 - A
Câu hỏi số: 6 - A
Câu hỏi số: 7 - B
Câu hỏi số: 8 - D
Câu hỏi số: 9 - B
Câu hỏi số: 10 - D
Câu hỏi số: 11 - B
Câu hỏi số: 12 - B
Câu hỏi số: 13 - A
Câu hỏi số: 14 - C
Câu hỏi số: 15 - B
Câu hỏi số: 16 - A
Câu hỏi số: 17 - D
Câu hỏi số: 18 - D
Câu hỏi số: 19 - D Câu hỏi số: 20 - C Câu hỏi số: 21 - D Câu hỏi số: 22 - C Câu hỏi số: 23 - C Câu hỏi số: 24 - A Câu hỏi số: 25 - D Câu hỏi số: 26 - A Câu hỏi số: 27 - D Câu hỏi số: 28 - B Câu hỏi số: 29 - C Câu hỏi số: 30 - C Câu hỏi số: 31 - A Câu hỏi số: 32 - D Câu hỏi số: 33 - B Câu hỏi số: 34 - B Câu hỏi số: 35 - D