Var f = text; Câu 22: Tệp songuyen.dat lưu n số nguyên của mảng 1 chiều, để in tất cả các số nguyên trong tệp ra màn hình thì sau khi thực hiện 2 thủ tục Assignf,'songuyen.dat'; resetf
Trang 1NỘI DUNG ĐỀ: (Gồm 30 câu_4 trang, mỗi câu 1/3 điểm)
Câu 1: Chương trình sau, biến nào là biến toàn cục?
Program test;
var x,y: integer;
procedure hoandoi(var a,b:integer);
var i:integer;
begin
i:=a; a:=b; b:=i;
end;
Begin
x:= 5; y:=11; hoandoi(x,y);
Writeln('x=',x,' y=',y);
End
A x, i, b B x,y C i D a, b
Câu 2: Để gán tệp data.inp đã lưu trên ổ đĩa D cho biến tệp f ta sử dụng câu lệnh:
A assign(‘D:\data.inp’, f ); B assign(f, D:\data.inp);
C assign(f, ‘D:\data.inp’); D assign(‘f ’, ‘D:\data.inp’);
Câu 3: Xác định biểu thức cho giá trị đúng (true) trong các biểu thức sau đây
A ‘Ninh thuan que toi’ < ‘Ninh thuan’ B ‘Truong chinh’ = ‘TRUONG CHINH’
C ‘Anh’ > ‘Em’ D ‘Tin hoc’ > ‘Tien hoc le – Hau hoc van’
Câu 4: Đoạn lệnh nào sau đây tính tổng các số lẻ trong dãy gồm n số nguyên?
A S:=0; for i:=1 to n do if A[i] mod 2=1 then s:=s+a[i];
B S:=0; for i:=1 to n do if A[i] mod 2=0 then s:=s+a[i];
C S:=0; for i:=1 to n do if i mod 2=0 then s:=s+i;
D S:=0; for i:=1 to n do if i mod 2=0 then s:=s+a[i];
Câu 5: Trong Pascal, để khai báo một xâu có độ dài không quá 40 kí tự khai báo thế nào?
A Var S[40]:string; B Var S:[40]string; C Var s:string; D Var S:string[40]; Câu 6: Hàm nào sau đây cho vị trí xuất hiện đầu tiên của xâu s1 trong xâu s2?
A Pos(s1, s2, vt); B Insert(s1, s2); C Upcase(s1, s2,vt); D Pos(s1, s2);
Câu 7: Dữ liệu kiểu xâu có độ dài tối đa là:
A 256 kí tự B 102 kí tự C 255 kí tự D 128 kí tự
Câu 8: Cho hai xâu s, p Thực hiện đoạn lệnh sau thì p nhận giá trị nào sau đây?
begin
s:= ‘1 cay lam chang len non, 3 cay chum lai len hon nui cao’
p:= ‘’;
SỞ GD - ĐT NINH THUẬN
TRƯỜNG THPT TRƯỜNG CHINH
ĐỀ KIỂM TRA HỌC KÌ II LỚP 11
NĂM HỌC: 2012- 2013 Môn: TIN HỌC
Thời gian làm bài: 45 phút
(Không kể thời gian phát, chép đề)
MÃ ĐỀ: 103
Trang 2for i:= length(s) downto 1 do
if (s[i]>=’0’) and (s[i] <= ‘9’) do p:=p+s[i];
end;
A ‘0123456789’ B ‘31’
C ‘cay lam chang len non, cay chum lai len hon nui cao’ D ‘13’
Câu 9: Trong chương trình con, khẳng định nào sau đây là sai ?
A Phần khai báo bắt buộc phải có; B Tham số trong phần đầu không bắt buộc phải có;
C Phần tên bắt buộc phải có; D Phần thân chương trình bắt buộc phải có;
Câu 10: Cú pháp nào sau đây là cú pháp của lệnh ghi dữ liệu vào tệp?
A Readln(<biến tệp>,<danh sách biến>); B Writeln(<biến tệp>,<danh sách kết quả>);
C Writeln(<danh sách kết quả>); D Writeln(<danh sách kết quả>,<biến tệp>); Câu 11: Khẳng định về kiểu dữ liệu tệp văn bản (Text) nào sau là đúng nhất?
A Được lưu trữ trên RAM; B Chỉ được lưu trữ trên đĩa cứng;
C Được lưu trữ trên bộ nhớ ngoài; D Được lưu trữ trên ROM;
Câu 12: Thủ tục Reset(<biến tệp>); dùng để :
A Mở tệp văn bản để ghi; B Mở tệp văn bản để đọc;
C Ghi dữ liệu lên tệp văn bản; D Đọc dữ liệu từ tệp văn bản;
Câu 13: Mảng A gồm bao nhiêu phần tử? Cho mảng A được nhập ở đoạn chương trình sau:
for i:=1 to 6 do begin write('a[',i,']='); readln(a[i]); end;
A N B 1 C 6 D i
Câu 14: Với f là tệp văn bản, đoạn chương trình sau thực hiện công việc gì?
Assign(f, ‘in.txt’); Rewrite(f);
For i:= ‘A’ to ‘Z’ do writeln(f, i);
A Ghi vào tệp in.txt các chữ cái in hoa từ A đến Z, mỗi chữ cái nằm trên 1 dòng;
B Đưa ra màn hình các chữ cái in hoa trong bộ mã ASCII;
C Ghi vào tệp in.txt các chữ cái in hoa từ A đến Z, tất cả các chữ cái nằm trên 1 dòng;
D Đưa ra màn hình các chữ số từ 1 đến 26;
Câu 15: Đoạn lệnh nào sau đây thực hiện ghi vào tệp hocsinh.dat họ tên của 20 học sinh, biết họ tên của mỗi
người ghi trên 1 dòng
A Assign(f,'hocsinh.dat'); rewrite(f);
for i:=1 to 20 do begin write('nhap ho ten hoc sinh thu ',i,':'); readln(ht); write(f,ht); end;
B Assign(f,'hocsinh.dat'); rewrite(f);
for i:=1 to 20 do write('nhap ho ten hoc sinh thu ',i,':'); readln(ht); writeln(f,ht);
C Assign(f,'hocsinh.dat'); rewrite(f);
for i:=1 to 20 do begin write('nhap ho ten hoc sinh thu ',i,':'); readln(ht); writeln(f,ht); end;
D Assign(f,'hocsinh.dat'); reset(f);
for i:=1 to 20 do begin readln(f,ht); write(ht); end;
Câu 16: Khai báo xâu nào sau đây là hợp lệ?
A Var st : string[256]; B Var st: string[255]; C Var: st: string; D Var st string; Câu 17: Xét chương trình sau, rồi chọn đáp án đúng?
Var t,m,c,d: word;
Trang 3Function ucln(a,b:word):word;
Begin
While a<>b do
if a>b then a:=a-b else b:=b-a;
end;
Begin
Write('nhap tu va mau cua phan so:'); readln(t,m);
c:=t div ucln(t,m); d:=m div ucln(t,m);
writeln('ket qua la:',c,'/',d);
End
A a, b, t, m là tham số thực sự B a, b là tham số thực sự còn t, m là tham số hình thức
C a, b, t, m là tham số hình thức D a, b là tham số hình thức còn t, m là tham số thực sự
Câu 18: Chọn phương án đúng, phương án nào sau đây là thực hiện chương trình con?
A Max(a,b:real):real; B Max(var a,b:byte):byte; C Max(a,b); D Max(a,b:byte):byte; Câu 19: Cho mảng A gồm 8 phần tử Biến F nhận giá trị nào sau khi chạy đoạn chương trình sau đây:
begin
A[1]:=1; A[2]:=1;
for i:= 3 to 8 do A[i]:=A[i-2]+A[i-1];
F:=A[i];
end;
A 33 B 21 C 52 D 2 Câu 20: Hãy chọn khai báo biến cho các biến trong thân chương trình sau:
Begin
Assign(f1,'data.txt'); Reset(f1); Assign(f2,'ketqua.txt'); Rewrite(f2);
While not eof(f1) do
Begin
Read(f1,a); if a mod 2 =0 then write(f2,a,' ');
End;
Close(f1); Close(f2);
End
A Var f1,f2:text; a:integer; B Var f1,f2,a:text;
C Var data.txt: text; ketqua.txt: text; a:char; D Var f1,f2:text; a:char;
Câu 21: Để khai báo một biến tệp, khai báo nào sau đây hợp lệ ?
A Var :f text; B Var f: byte; C Var f: text; D Var f = text;
Câu 22: Tệp songuyen.dat lưu n số nguyên của mảng 1 chiều, để in tất cả các số nguyên trong tệp ra màn hình thì
sau khi thực hiện 2 thủ tục Assign(f,'songuyen.dat'); reset(f); ta thực hiện lệnh nào?
A While not eof(f) do begin read(f,a); write(a:5);end; B For i:=1 to n do read(f,a); write(a:5);
C For i:=1 to n do begin read(f,a); write(a:5); end; D While not eof(f) do read(f,a); write(a:5); Câu 23: Cho đoạn chương trình sau:
var f: text; i:byte;
begin
Trang 4assign(f, ‘c:\kq.txt’); rewrite(f);
for i:=1 to 10 do if i mod 2 =1 then write(f, i);
close(f);
readln end
Sau khi thực hiện chương trình trên, nội dung tệp ‘kq.txt’ gồm những phần tử nào?
A 2; 4; 6; 8;10 B 4; 6; 8;10 C 1; 3; 5; 9 D 1; 3; 5; 7; 9
Trang 5Câu 24: Khai báo thủ tục nào sau đây là hợp lệ?
A Procedure vidu(var a: integer); B Procedure (a: integer);
C Procedure vidu(a: integer): integer; D Procedure vidu: integer;
Câu 25: Thủ tục dưới đưa ra hình nào sau đây ?
procedure Tamgiac;
var i, j:byte ;
begin
for i:= 4 downto 1 do
begin
for j:= 1 to i do write( '*':2) ;
writeln;
end ;
end;
A *
* *
* * *
* * * *
B * * * *
* * *
* *
*
C *
* *
* * *
* * * *
D * * * *
* * *
* *
* Câu 26: Giả sử: st:=’abcd’; Sau khi thực hiện thủ tục Insert(‘ab’, st, 2); cho kết quả là:
A ababad B abcdab C ababcd D aabbcd Câu 27: Trong Pascal, với khai báo Var A: Array[1 100] of integer; thì biến A thuộc kiểu dữ liệu nào?
A Integer B mảng 1 chiều C Xâu D Tệp Câu 28: Sự khác nhau cơ bản giữa thủ tục và hàm là:
A Hàm luôn trả về kết quả qua tên còn thủ tục không trả về kết quả;
B Thủ tục không có tham số còn hàm có tham số;
C Thủ tục trả về kết quả qua tên còn hàm không trả về kết quả;
D Hàm không có tham số còn thủ tục có tham số;
Câu 29: Trong Pascal, khai báo nào sau đây là đúng?
A Var i:byte; A:Array[i 100]of integer; B Var A:Array[1 60]of integer;
C Var i:byte; A:Array[1 i]of integer; D Var A:Array[1 60]of integer;
Câu 30: Chọn phương án ghép đúng? Mảng 1 chiều:
A là dãy số nguyên B là dãy hữu hạn các phần tử khác kiểu
C là dãy hữu hạn các phần tử cùng kiểu D là dãy kí tự
- HẾT -
Trang 6SỞ GD & ĐT NINH THUẬN ĐỀ KIỂM TRA HỌC KÌ II, LỚP 11
Môn: TIN Chương trình:CHUẨN
Mã đề: 02 Thời gian làm bài: 45 phút(không kể thời gian phát, chép đề)
PHẦN A- TRẮC NGHIỆM KHÁCH QUAN(6 ĐIỂM) – Khoanh tròn đáp án đúng
Câu 1: Chọn câu đúng trong các câu sau
A Thủ tục delete(s, i, n): Xóa trong xâu s, n kí tự, từ vị trí i
B Thủ tục delete(st, vt, n): Xóa trong xâu s, 5 kí tự, từ vị trí 2
C Thủ tục delete(st, n, vt): Xóa trong xâu s, n kí tự, từ vị trí vt
D Thủ tục delete(n, vt, St): Xóa trong xâu s, n kí tự, từ vị trí vt
Câu 2: Chọn câu đúng
A Hàm pos(s1, s2) trả về vị trí xuất hiện đầu tiên của xâu s2 trong xâu s1
B Hàm pos(s1, s2) trả về vị trí xuất hiện đầu tiên của xâu s1 trong xâu s2
C Hàm pos(s1, s2) trả về vị trí xuất hiện cuối cùng của xâu s2 trong xâu s1
D Hàm pos(s1, s2) trả về vị trí xuất hiện cuối cùng của xâu s1 trong xâu s2
Câu 3: Hàm nào sau đây trả về giá trị là độ dài của xâu S
Câu 4: Cú pháp khai báo nào sau đây sai ?
Câu 5: Cho khai báo biến: Var a: array[1 5] of integer;
Chọn lệnh gán đúng trong các lệnh gán sau đây:
Câu 6: Chọn đáp án đúng:
Câu7: Chọn cú pháp khai báo xâu đúng
A Var S: string; B Var S: string(30); C.Var S: string (255); D Var S: string[1 30];
Trang 7Câu 8: Tệp nguồn Pascal thuộc loại tệp:
Câu 9: Cho xâu St = ‘THPT Phan Boi Chau’, Để có xâu St =’THPT’ ta dung thủ tục nào
sâu đây:
A Delete(St, 5,14 ); B Delete(St, 14, 5 ); C Delete(St, 1, 5 ); D Delete(St,5, 1 );
Câu 10: Để đọc dữ liệu từ tệp ta có thể dùng câu lệnh nào sau đây:
C Readln(<biến tệp>, <danh sách biến>); D Reset(biến tệp);
Câu 11: Để ghi dữ liệu vào tệp ta có thể dùng thủ tục sau:
C Write(<biến tệp>, <danh sách kết quả>); D Rewrite(biến tệp);
Câu 12: Để ghi dữ liệu vào tệp ta phải sử dụng các thao tác theo thứ tự nào sau đây:
A Gắn tên têp ->Mở tệp để đọc -> đóng tệp
B Gắn tên têp ->Mở tệp để ghi -> đóng tệp
C Gắn tên têp ->Mở tệp để ghi -> Ghi dữ liệu vào tệp -> đóng tệp
D Gắn tên têp -> Ghi dữ liệu vào tệp -> đóng tệp
Câu 13: Để đọc dữ liệu từ tệp ta phải sử dụng các thao tác theo thứ tự nào sau đây:
A Gắn tên têp ->Mở tệp để đọc -> đóng tệp
B Gắn tên têp ->Đọc dữ liệu từ têp -> đóng tệp
C Gắn tên têp ->Mở tệp để đọc -> Đọc dữ liệu từ tệp -> đóng tệp
D Gắn tên têp -> Ghi dữ liệu vào tệp -> đóng tệp
Câu 14: Chọn đáp án sai trong các đáp án sau:
A Tệp có độ dài tùy í, còn mảng có độ dài xác định
B Tại một thời điểm không thể vừa đọc vừa ghi dữ liệu trên cùng 1 tệp
C Không thể dùng phép gán 2 tệp cùng kiểu
D Độ dài của tệp được định trước
Câu 15: Để gắn tên tệp có tên ‘KQ.TXT’ cho biến tệp f ta sử dụng lệnh sau:
A f:= ‘KQ.TXT’ ; B ‘KQ.TXT’:= f; C.Assign(f, ‘KQ.TXT’); D.Assign(‘KQ.TXT’, f);
Trang 8Câu 16: Thủ tục Insert(s1,s2,vt) dùng để:
A Chèn xâu s2 vào xâu s1 từ vị trí vt B.Chèn xâu s1 vào xâu s2 từ vị trí vt
C Tạo xâu s2 gồm n kí từ từ vị trí vt của xâu s1 D Chèn s1 vào xâu s2 từ vị trí bất kì
Câu 17 Chọn đáp án đúng
A Kiểu dữ liệu tệp được lưu trữ trong bộ nhớ RAM
B Kiểu xâu được lưu trữ lâu dài trong bộ nhớ ngoài
C Kiểu dữ liệu mảng một chiều được lưu trữ lâu dài trong bộ nhớ ngoài
D Kiểu dữ liệu tệp được lưu trữ lâu dài trong bộ nhớ ngoài
Câu 18: Chọn đáp án đúng
A Tệp văn bản là tệp lưu dữ liệu dưới dạng các chữ cái và hình ảnh
B Tệp văn bản là tệp lưu dữ liệu dưới dạng các chữ cái
C Tệp văn bản là tệp lưu dữ liệu dưới dạng hình ảnh, âm thanh
D Tệp văn bản là tệp lưu dữ liệu dưới dạng các kí tự ASCII, trong đó bao gồm các kí tự
xuống dòng
Câu 19: Muốn mở tệp ra để đọc dữ liệu từ tệp ra biến ta sử dụng các thủ tục nào sau đây:
(Trong đó dấu chấm trong ngoặc đơn biểu thị các tham số thích hợp của các thủ tục)
Câu 20: Để tham chiếu tới phần tử của biến mảng một chiều ta dùng cú pháp sau:
A <tên biến mảng>[<chỉ số>]; B <tên biến mảng>(<chỉ số>);
C.<tên biến mảng>[<chỉ số1 chỉ số 2>]; D <tên biến mảng>[<chỉ số1: chỉ số 2>];
Trang 9PHẦN B TRẮC NGHIỆP TỰ LUẬN(4 ĐIỂM)
Câu 1: Hãy viết chương trình nhập vào dãy gồm n số nguyên (n<100), đếm xem trong dãy
có bao nhiêu số chia hết cho 3
Câu 2: Viết chương trình nhập vào một xâu họ tên của một người (giả sử xâu nhập vào là
xâu chuẩn - không chứa kí tự trắng dư thừa), cho biết họ của người đó
………
………
………
………
……….…
……… ………
………
……… ………
………
……… ………
……… ………
………
……… ………
………
……… ………
……… ………
……… ………
………
……… ………
………
………… ………
……… ………
……… …
………
……… ………
………
……… ………
………
……… ………
………
………