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ônga. Phần khai báo có thể có hoặc không tùy thuộc vào chương trình cụ thể.. Một chương trình con nhất thiết phải
Trang 1CÂU HỎI KIỂM TRA BÀI CŨ
Câu 1: Về cấu trúc của một CTC khẳng định
nào sao đây là không đúng?
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 tùy
thuộc vào chương trình cụ thể
c Phần đầu có thể có hoặc không cũng
được
d Phần đầu nhất thiết phải có để khai báo
Trang 2Câu 2: 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 không nhất thiết
phải có tham số hình thức và cũng có thể
Trang 3Câu 3: Kiểu dữ liệu của hàm
a Chỉ có thể là kiểu integer
b Chỉ có thể là kiểu real
c Có thể là kiểu integer, real, char, boolean,
string
d Có thể là kiểu integer, real, char
Hãy chọn câu trả lời đúng nhất
Trang 4Câu 4: Khẳng định nào sau đây là đúng
a Biến cục bộ là biến được dùng trong CTC
chứa nó và chương trình chính
b Biến cục bộ là biến chỉ dùng cho chương
trình chính
c Biến cục bộ là biến chỉ dùng cho CTC
chứa nó
d Biến toàn cục là biến chỉ được sử dụng
trong chương trình chính và không được
sử dụng trong CTC
Trang 5Câu 5: 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
Trang 6BÀI THỰC HÀNH 6
THỦ TỤC CatDan(s1,s2)
THỦ TỤC CanGiua(s)
CHƯƠNG TRÌNH
Trang 7{Thu tuc CatDan(s1,s2)}
type str79 = string[79];
procedure CatDan(s1:str79; var s2: str79);
begin
s2:= copy(s1,2,length(s1) -1) + s1[1];
end;
Trang 8a b c d
Đầu vào, đầu ra của thủ tục trên là gì?
Vào: Xâu kí tự s1
Ra: Biến xâu kí tự s2
s1
s2
Thủ tục này dùng để
làm gì?
Thực hiện việc tạo xâu s2 từ xâu s1 bằng việc chuyển kí tự thứ nhất đến vị trí cuối của xâu
Trang 9Thu tuc CanGiua(s)
procedure CanGiua( var s: str79);
var i, n:integer;
begin
n:=length(s);
n := (80 – n) div 2;
for i:= 1 to n do s:= ‘ ‘ + s;
end;
Đầu vào của thủ tục này là gì?
Chức năng của thủ tục này là
gì?
Thủ tục thực hiện thêm vào trước xâu s một kí tự trắng để khi đưa ra màn hình kí tự trong s ban đầu được căn giữa của dòng gồm 80
kí tự.
Trang 10Chương trình
Program chuong_trinh1;
Uses crt;
Type str79 = string[79];
Var s1, s2 : str79;
stop: boolean;
procedure CatDan(s1: str79; var s2: str79);
begin
s2:= copy(s1,2,length(s1) -1) + s[1];
Trang 11procedure CanGiua( var s: str79); var i, n:integer;
begin
n:=length(s);
n := (80 – n) div 2;
for i:= 1 to n do s:= ‘ ‘ + s;
end;
Begin
clrscr;
Trang 12stop := false;
while not(stop) do
begin
gotoxy(1,12); {chuyen con tro den dòng y} write(s1);
delay(500);
CatDan(s1,s2);
s1:= s2;
stop := keypressed;
end;
readln