Procedure CV_DTa, b : integer; Câu 5: Cú pháp để truy xuất phần tử của mảng một chiều: A.. Là các biến được khai báo sau từ khoá Type B.. Là các biến được khai báo ở chương trình con C..
Trang 1Họ và tên: ………. THI HỌC KỲ II
A Phần trắc nghiệm: (5 điểm)
Câu 1: Tệp f có dữ liệu để đọc 3 giá trị trên từ tệp f và ghi các giá trị này vào
3 biến x, y, z ta sử dụng câu lệnh:
C Read(f, x, y, z); D Read(f, ‘x’, ‘y’, ‘z’);
Câu 2: Xâu S1: ‘Con kenh xanh xanh, hàm Pos(‘kenh’,S1) cho kết quả:
Câu 3: Mảng hai chiều A gồm 10 dòng, 15 cột gồm các phần tử là các số thực sẽ được khai báo:
A Var A: array[1 10, 1 15] of real; B Var A: array[10 15] of real;
C Var A: array[1 15, 1 10] of integer; D Type A: array[15 10] of byte;
Câu 4: Đầu của thủ tục để tính và in ra màn hìnhchu vi (C), diện tích (S) của hình chữ nhật có chiều dài, chiều rộng lần lượt là a, b:
A Procedure CV_DT(a, b, C, S : integer) : integer;
B Procedure CV_DT(a, b : integer) : integer;
C Procedure CV_DT(C, S : integer);
D Procedure CV_DT(a, b : integer);
Câu 5: Cú pháp để truy xuất phần tử của mảng một chiều:
A <tên biến mảng><[chỉ số dòng, chỉ số cột]> B <tên biến mảng><[chỉ số ]>
C <tên biến mảng><[chỉ số cột, chỉ số dòng]> D <tên biến mảng><(chỉ số)>
Câu 6: Giả sử a = 5; b = 9; c = 15; để ghi các giá trị trên vào tệp f có dạng là ta
sử dụng thủ tục ghi:
A Write(a, ‘ ’, b, ‘ ’, c); B Write(f, a,b,c);
C Write(f, a, ‘ ’, b, ‘ ’, c); D Write(f, a, ‘’, b, ‘’, c);
Câu 7: Biến Hocsinh là một biến bản ghi gồm các trường: hten, nsinh, toan, van Để truy xuất đến trường toan của biến Hocsinh ta sử dụng:
A Hocsinh [toan] B Hocsinh(toan) C Hocsinh.toan D Hocsinh [toan]
Câu 8: Đầu của hàm để tìm giá trị nhỏ nhất của hai số x, y là:
A Function min(x, y: integer) : integer; B Function gtnn(x, y: integer);
C Function min(x, y) : integer; D Function gtnn(x, y: integer) : boolean;
Câu 9: Cú pháp để khai báo 1 biến tệp văn bản là:
A Var <tên biến tệp>: string of text; B Var <tên biến tệp>: text;
C Var <tên biến tệp>: array[1 100] of text; D Var <tên biến tệp>: string;
Câu 10: Cú pháp để gọi chương trình con là:
A <tên chương trình con>[<danh sách tham số thực sự>]
B <tên chương trình con>[<danh sách tham số hình thức>]
C <tên chương trình con>[<(danh sách tham số hình thức)>]
D <tên chương trình con>[<(danh sách tham số thực sự)>]
Câu 11: Biến cục bộ là:
A Là các biến được khai báo sau từ khoá Type
B Là các biến được khai báo ở chương trình con
C Là các biến được khai báo ở chương trình chính
D Là danh sách tham số thực sự
Câu 12: Vị trí của chương trình con trong toàn bộ chương trình là:
A Sau phần khai báo của chương trình chính (Trước từ khoá Begin của CT chính)
B Trong thân của chương trình chính (sau từ khoá Begin của CT chính)
C Trước phần khai báo của chương trình chính
D Ở bất kỳ vị trí nào trong chương trình đều được.
5 9 15
5 9 15
Trang 2Câu 13: Xâu a: ‘Them chiec la rung’, xâu b: ‘mot ’, để có xâu: ‘Them mot chiec la rung’, ta sử dụng thủ tục:
A Insert(a, b, 6); B Insert(a, b, 5); C Insert(b, a, 6); D Insert(b, a, 5);
Câu 14: Cú pháp để gắn tên tệp ‘bai1.txt’ trong ổ đĩa D cho biến tệp f là:
A Assign( f, D:\ bai1.txt); B Assign( f, ‘D:\bai1.txt’ );
C Assign( f, ‘D:bai1.txt’); D Assign( f, “D:\bai1.txt” );
Câu 15: Để biết con trỏ tệp đã ở cuối dòng của tệp f hay chưa, ta sử dụng hàm:
A eoln(f) B eof(f) C eof(f, ‘trai.txt’) D foe(f)
Câu 16: Thủ tục để mở tệp f mới để ghi dữ liệu vào tệp là:
C Reset(f, ‘dulieu.txt’); D Rewrite(f, a, b, c);
Câu 17: Xâu S1: ‘Mot chieu’, cú pháp truy xuất đến phần tử ‘i’ của xâu S1 là:
Câu 18: Xâu S: ‘The la thanh mua thu’, để xâu S có nội dung ‘The la’ ta sử dụng thủ tục:
Câu 19: Xâu S1: ‘Nha tho To Huu’, để có xâu: ‘Nha tho’, ta dùng hàm:
A Copy(S1, 1, 7); B Copy(S1, 7, 1); C Copy(S1, 9, 6); D Copy(S1, 6, 9);
Câu 20: Để khai báo 1 xâu S gồm 50 kí tự ta khai báo:
C Var S: string[1 50]; D Var S:string[50];
-Phần trả lời trắc nghiệm:
Đ.Á
n
B Phần tự luận: (5 điểm)
Câu 1: (2 điểm)
Cho chương trình sau:
Var S: String;
Begin
S:= ‘_ _ _ _ _ _ Them _ _ _ mot _chiec_ _ _ _la_ _rung_ _ _’; { ‘_’ là 1 kí tự trắng}
While S[1] = ‘_’ do delete(S,1,1);
While S[length(S)] = ‘_’ do delete(S, length(S),1);
While Pos(‘_ _’,S) <> 0 do delete(S, Pos(‘_ _’,S),1);
Write(‘xau ket qua:’,S);
Readln;
End.
Chương trình trên thực hiện công việc gì?
Kết thúc chương trình ta thu được kết quả xâu S là gì?
Câu 2: (3 điểm)
Viết hàm tìm BCNN của hai số nguyên dương a và b (biết rằng BCNN(a,b)=a*b/UCLN(a,b)) Viết chương trình nhập vào 4 số nguyên dương x, y, z, t, sử dụng hàm tìm BCNN(a,b) để tìm và
in ra màn hình BCNN của 4 số x, y, z, t.
Trang 3ĐÁP ÁN
-Phần trả lời trắc nghiệm:
8
19 20
B Phần tự luận: (5 điểm)
Câu 1: (2 điểm)
Chương trình trên thực hiện công việc: Xóa các kí tự trắng dư thừa trong xâu (Các kí tự trắng
ở đầu xâu, cuối xâu, giữa xâu xóa sao cho giữa các từ chỉ còn một kí tự trắng) (1 đ)
Kết thúc chương trình ta thu được kết quả xâu S là: ‘Them_mot_chiec_la_rung’ (1 đ)
Câu 2: (3 điểm)
Program Baitap;
Var x, y, z , t: word;
Function BCNN(a, b:word):word;
Var du, c, d:word;
Begin
c:=a; d:=b;
While b<>0 do
Begin
du:=a mod b;
a:=b;
b:=du;
End;
BCNN:=(c*d) div a;
End;
Begin
Write(‘nhap 4 so x, y, z, t: ‘); readln(x, y, z, t);
Write(‘BCNN cua 4 so la: ’, BCNN(BCNN(x, y),BCNN(z, t)));
Readln;
End.