Bài kiểm tra
Đề kiểm tra 1 tiết HK2 môn Tin học 11 năm 2019 - Trường THPT Mộc Xuyên
1/40
45 : 00
Câu 1: Để khai báo thủ tục trong Pascal bắt đầu bằng từ khóa
Câu 2: Để khai báo hàm trong Pascal bắt đầu bằng từ khóa
Câu 3: Cho chương trình sau :
Program Thidu ;
Var s : string[50] ;
Procedure foo(s : string);
Var i : integer;
Begin
i := 1 ;
while ( i <= length(S) ) do
begin
writeln( s[ i ] ) ;
i := i + 1 ;
end ;
end;
Begin
s := ‘tinhoc’ ;
foo(s) ;
End .
Số dòng chương trình in ra màn hình là bao nhiêu ?
Câu 4: Đoạn chương trình sau có lỗi gì ?
Procedure End ( key : char ) ;
Begin
If key = ‘ q ’ then writeln( ‘ Ket thuc ’ )
End;
Câu 5: Cho chương trình sau:
Program Chuong_Trinh;
Var a, b, S : byte;
Procedure TD(Var x : byte ; y : byte);
Var i : byte;
Begin
i := 5;
writeln(x,‘ ’, y);
x := x + i ;
y := y + i ;
S := x + y ;
Writeln(x,‘ ’, y);
End;
Begin
Write(‘nhập a và b : ’);
Readln(a, b);
TD(a,b);
Writeln(a,‘ ’, b, ‘ ’, S);
Readln;
End.
Trong chương trình trên có các tham số hình thức là:
Câu 6: Hãy chọn phương án ghép đúng . Kiểu của một hàm được xác định bởi
Câu 7: Cho chương trình sau:
Program Chuong_Trinh;
Var a, b, S : byte;
Procedure TD(Var x : byte ; y : byte);
Var i : byte;
Begin
i := 5;
writeln(x,‘ ’, y);
x := x + i ;
y := y + i ;
S := x + y ;
Writeln(x,‘ ’, y);
End;
Begin
Write(‘nhập a và b : ’);
Readln(a, b);
TD(a,b);
Writeln(a,‘ ’, b, ‘ ’, S);
Readln;
End.
Trong chương trình trên có các biến toàn bộ là
Câu 8: Nói về cấu trúc của một chương trình con, khẳng định nào sau đây là không đúng?
Câu 9: Khẳng định nào sau đây là đúng?
- A. Một chương trình con nhất thiết phải có tham số hình thức.
- B. Một chương trình con có thể không có tham số hình thức và cũng có thể không có biến cục bộ.
- C. Một chương trình con nhất thiết phải có tham số hình thức, không nhất thiết phải có biến cục bộ.
- D. Một chương trình con nhất thiết phải có biến cục bộ.
Câu 10: Mô tả nào dưới đây về tham số là sai ?
Câu 11: Kiểu dữ liệu của hàm
Câu 12: Cho chương trình sau:
Program Chuong_Trinh;
Var a, b, S : byte;
Procedure TD(Var x : byte ; y : byte);
Var i : byte;
Begin
i := 5;
writeln(x,‘ ’, y);
x := x + i ;
y := y + i ;
S := x + y ;
Writeln(x,‘ ’, y);
End;
Begin
Write(‘nhập a và b : ’);
Readln(a, b);
TD(a,b);
Writeln(a,‘ ’, b, ‘ ’, S);
Readln;
End.
Trong chương trình trên có các tham số thực sự là:
Câu 13: Cho chương trình sau :
Program Vi_du ;
Var x, y : integer ;
Procedure godoit( x, y : integer ) ;
Begin
x := y ;
y := 0 ;
Write( x, y ) ;
End ;
Begin
x := 1 ;
y := 2 ;
godoit( x, y ) ;
writeln( x, y ) ;
End.
Chương trình trên in ra dãy số nào ?
Câu 14: Cho chương trình sau:
Program Chuong_Trinh;
Var a, b, S : byte;
Procedure TD(Var x : byte ; y : byte);
Var i : byte;
Begin
i := 5;
writeln(x,‘ ’, y);
x := x + i ;
y := y + i ;
S := x + y ;
Writeln(x,‘ ’, y);
End;
Begin
Write(‘nhập a và b : ’);
Readln(a, b);
TD(a,b);
Writeln(a,‘ ’, b, ‘ ’, S);
Readln;
End.
Trong chương trình trên có các biến cục bộ là:
Câu 16: Mô tả nào dưới đây về chương trình có cấu trúc là phù hợp nhất ?
Câu 17: Khẳng định nào sau đây là đúng?
- A. Biến cục bộ là biến chỉ được dùng trong chương trình con chứa nó.
- B. Biến toàn bộ chỉ được sử dụng trong chương trình chính và không được sử dụng trong các chương trình con.
- C. Biến cục bộ là biến được dùng trong chương trình con chứa nó và trong chương trình chính.
- D. Biến cục bộ là biến chỉ được dùng trong chương trình chính.
Câu 18: Khẳng định nào sau đây là đúng?
Câu 19: Cho hàm sau :
Function foo(n : integer) : boolean ;
Var i : integer ;
Begin
Foo := false ;
If n > 2 then for i := 2 to n-1 do
If (n mod i = 0) then foo := true ;
End ;
Hàm trên thực hiện công việc gì ?
Câu 20: Mô tả nào dưới đây về hàm là sai ?
Câu 21: Phát biểu nào dưới đây về biến là sai ?
Câu 22: Khẳng định nào sau đây là đúng?
- A. Lời gọi thủ tục nhất thiết phải có tham số thực sự còn lời gọi hàm không nhất thiết phải có tham số thực sự.
- B. Lời gọi hàm nhất định phải có tham số thực sự còn lời gọi thủ tục không nhất thiết phải có tham số thực sự.
- C. Lời gọi hàm và lời gọi thủ tục có thể có tham số thực sự hoặc không có tham số thực sự tùy thuộc vào từng thủ tục.
- D. Cả lời gọi hàm và lời gọi thủ tục đều phải có tham số thực sự.
Câu 23: Muốn khai báo x là tham số giá trị và y, z là tham số biến (x, y, z thuộc kiểu Byte) trong thủ tục “ViduTT” thì khai báo nào sau đây là sai?
Câu 24: Hãy chọn phương án ghép đúng. Cho thủ tục sau :
Procedure p ;
Var n : integer ;
Begin
…… ……
End ;
Phạm vi của biến n là :
Câu 25: Chương trình sau sẽ in ra kết quả nào ?
Program ViDu ;
Var x, y : integer ;
Procedure thaydoi(x, y : integer) ;
Begin
x := y ;
y := 0 ;
writeln( x, y ) ;
End ;
Begin
x := 1 ;
y := 2 ;
writeln( x, y ) ;
thaydoi( x, y ) ;
writeln( x, y)
End.
Hãy chọn câu trả lời đúng .
Câu 26: Cách viết nào sau đây là đúng khi khai báo mảng một chiều?
Câu 27: Trong ngôn ngữ lập trình Pascal, đoạn chương trình sau thực hiện công việc:
Readln(s); k:= length(S); for i:= k downto 1 do write(S[i]);
Câu 28: Cách tham chiếu đến phần tử của mảng:
Câu 29: Với khai báo A: array[1..100] of integer; thì việc truy xuất đến phần tử thứ 7 như sau:
Câu 30: Trong Pascal, để khai báo biến tệp văn bản ta sử dụng cú pháp:
Câu 33: Thủ tục insert(‘123’,’abc’,2) sẽ cho xâu kết quả nào sau đây?
Câu 34: Cho xâu s=’abcdefghi’ sau khi thực hiện thủ tục delete(s,3,4) thì:
Câu 35: Cho A=’abc’; B=’ABC’; khi đó A+B cho kết quả nào?
Câu 36: Trong các khai báo sau, khai báo nào đúng?
Câu 37: Sau khi thực hiện đoạn lệnh sau:
S:=0; For i:=1 to 4 do S:=S+i;
S có giá trị là:
Câu 38: Các thành phần cơ bản của ngôn ngữ lập trình là:
Câu 39: Cho S và i là biến nguyên. Cho biết kết quả sau khi chạy đoạn chương trình sau:
s:= 0;
for i:= 1 to 10 do s:= s+i;
writeln(s);
Câu 40: Cấu trúc lặp nào sau đây là đúng cú pháp: