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) ;
Tham số giá trị là các tham số hình thức được thay bằng các tham số thực sự tương ứng là các giá trị cụ thể. Tham biến là các tham số hình thức được thay bằng các tham số thực sự tương ứng là các biến chứa dữ liệu ra.
+ Để phân biệt tham biến và tham trị, Pascal sử dụng từ khóa var để khai báo những tham biến.
Đáp án: C
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 cục là:
Đoạn chương trình sau có lỗi gì?
Procedure End (key : char ) ;
Begin
If key = ‘ q ’ then writeln( ‘ Ket thuc ’ )
End;
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à :
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à: