Thứ Hai, 22 tháng 6, 2020

CÂU HỎI TRẮC NGHIỆM MINH HỌA - CHỦ ĐỀ CHƯƠNG TRÌNH CON - HÀM VÀ THỦ TỤC

Câu 1.    Kiểu dữ liệu của một hàm được xác định bởi:

A.   Kiểu dữ liệu của các tham số

B.   Kiểu dữ liệu của giá trị biểu thức trả về qua tên hàm        

C.   Tên hàm

D.   Kiểu dữ liệu của các biến cục bộ.

Câu 2.    Phát biểu nào dưới đây về hàm là sai?

A.   Hàm Phải có giá trị trả về.

B.   Hàm Phải có tham số.                 

C.   Trong hàm có thể gọi lại chính hàm đó.

D.   Hàm có thể có các biến cục bộ.

Câu 3.    Phát biểu nào sau đây sai khi nói về cấu trúc của một chương trình con.

A.   Phần đầu và phần thân nhất thiết phải có, phần khai báo có thể có hoặc không.

B.   Phần khai báo có thể có hoặc không có tùy thuộc vào từng chương trình cụ thể.

C.   Phần đầu có thể có hoặc không có cũng được.      

D.   Phần đầu nhất thiết phải có để khai báo tên chương trình con.

Câu 4.    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 nhất thiết phải 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 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âu 5.    Khẳng định nào sau đây là đúng?

A.   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.

B.   Biến cục bộ là biến chỉ được dùng trong chương trình chính.

C.   Biến cục bộ là biến chỉ được dùng trong chương trình con chứa nó.

D.   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âu 6.    Khẳng định nào sau đây là đúng?

A.   Cả thủ tục và hàm đều có thể có tham số hình thức.          

B.   Chỉ có thủ tục mới có thể có tham số hình thức.

C.   Chỉ có hàm mới có thể có tham số hình thức.

D.   Thủ tục và hàm nào cũng phải có tham số hình thức.

Câu 7.    Khẳng định nào sau đây là đúng?

A.   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ự.

B.   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ự.

C.   Cả lời gọi hàm và lời gọi thủ tục đều phải có tham số thực sự.

D.   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.

Câu 8.    Để khai báo hàm trong Pascal bắt đầu bằng từ khóa

A.   Program.

B.   Procedure.

C.   Function.

D.   Var.

Câu 9.    Để khai báo thủ tục trong Pascal bắt đầu bằng từ khóa

A.   Program.

B.   Procedure.         

C.   Function.

D.   Var.

Câu 10. 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?

A.   Procedure ViduTT( x : Byte ; Var y, z : Byte) ;

B.   Procedure ViduTT( x : Byte ; Var y : Byte ; Var z : Byte) ;

C.   Procedure ViduTT( x : Byte ; Var y : Byte ; z : Byte) ;      

D.   Procedure ViduTT( Var y : Byte ; x : Byte ; Var z : Byte) ;

Câu 11. Cho chương trình pascal sau :

Program vidu ;

Var s : string[50] ;

Procedure xau(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’;

       xau(s);

End.

Số dòng chương trình in ra màn hình là bao nhiêu ?

A.   50 dòng;

B.   6 dòng;              

C.   7 dòng;

D.   Vô số dòng;

Câu 12. Cho chương trình pascal sau :

Program Vidu ;

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 ?

A.   2001

B.   1020

C.   2012      

D.   2020

Câu 13. Chương trình PASCAL 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 .

A.       1 2 2 0 1 2

B.        1 2

2 0

1 2       

C.     1 2

1 2

D.     1 2