Hoc247 xin giới thiệu đến các em tài liệu ôn thi môn Tin học lớp 11 của chương trình học kỳ 2. Tài liệu tổng hợp các kiến thức trọng tâm, các câu hỏi trắc nghiệm và bài tập tự luận về mảng một chiều, kiểu xâu, tệp và chương trình con. Hi vọng tài liệu này sẽ một phần nào giúp các em ôn thi thật hiệu quả để tự tin bước vào kỳ thi sắp tới. Mời các em cùng tham khảo.
ĐỀ CƯƠNG ÔN TẬP HỌC KỲ II – MÔN TIN HỌC 11
NĂM HỌC 2016-2017
A. LÝ THUYẾT
CHƯƠNG 4: KIỂU DỮ LIỆU CÓ CẤU TRÚC
I. Mảng một chiều:
1. Khái niệm: Mảng một chiều là dãy hữu hạn các phần tử cùng kiểu. Mảng được đặt tên và mỗi phần tử chỉ có một chỉ số.
2. Cú pháp khai báo:
- Trực tiếp: var < tên biến mảng >: array [ kiểu chỉ số] of [ kiểu phần tử];
- Gián tiếp:
type < tên kiểu mảng > = array[ kiểu chỉ số ] of [ kiểu phần tử ];
var < tên biến mảng > : < tên kiểu mảng > ;
3. Cách tham chiếu phần tử: tên biến [ chỉ số phần tử ];
II. Kiểu xâu:
1. Khái niệm: Xâu là dãy các kí tự trong bộ mã ASCII
2. Cú pháp khai báo: var < tên biến >: STRING [độ dài tối đa của xâu];
3. Các thao tác xử lý xâu:
- Ghép xâu: Kí hiệu là: +, cho phép ghép nhiều xâu thành một xâu
- Phép so sánh xâu: =, <>, >, <, <=, >= có thứ tự ưu tiên thấp hơn ghép xâu.So sánh hai xâu bằng cách so sánh kí tự khác nhau đầu tiên của hai xâu( tính từ trái sang phải) kí tự của xâu nào có bộ mã ASCII lớn hơn ( bé hơn) là xâu đó lớn hơn ( bé hơn).
4. Các thủ tục:
- Thủ tục Delete(st, vt, n) thực hiện việc xóa n kí tự của biến xâu st, bắt đầu từ vị trí vt.
- Thủ tục insert(s1, s2, vt) thực hiện việc chèn xâu s1 vào xâu s2 bắt đầu từ vị trí vt.
- Hàm Copy(s, vt, n) tạo xâu gồm n kí tự liên tiếp bắt đầu từ vị trí vt của xâu s.
- Hàm Length(s) cho giá trị là độ dài xâu s.
- Hàm Pos(s1, s2) cho vị trí xuất hiện đầu tiên của xâu s1 trong xâu s2.
- Hàm Upcase(ch) cho chữ cái in hoa tương ứng với chữ cái trong ch.
CHƯƠNG 5: TỆP VÀ THAO TÁC VỚI TỆP
I. Tệp:
1. Vai trò và đặc điểm kiểu tệp:
2. Khai báo biến tệp: Var < tên biến tệp >: Text ;
II. Thao tác với tệp:
1. Đọc tệp:
- Đặt tên tệp: Assign( < tên biến tệp > , < tên tệp > );
- Mở tệp: Reset ( < tên biến tệp > );
- Đọc tệp: Read/ readln( < tên biến tệp > , );
- Đóng tệp : Close( < tên biến tệp > );
2. Ghi tệp:
- Đặt tên tệp: Assign( < tên biến tệp > , < tên tệp > );
- Mở tệp: Rewrite( < tên biến tệp > );
- Ghi tệp: Write/ writeln( < tên biến tệp > , < danh sách kết quả > );
- Đóng tệp : Close( < tên biến tệp > );
Hình. Sơ đồ thao tác với tệp
3. Một số hàm thường dùng đối với tệp văn bản:
- Hàm EOF( < tên biến tệp > );
- Hàm EOLN( < tên biến tệp > );
CHƯƠNG 6: CHƯƠNG TRÌNH CON VÀ LẬP TRÌNH CÓ CẤU TRÚC
1. Khái niệm chương trình con:
2. Khái niệm hàm và thủ tục:
- Hàm (function) là chương trình con thực hiện một số thao tác nào đó và trả về một giá trị qua tên của nó.
- VD:sin(x), sqrt(x),.....
- Thủ tục (procedure) là chương trình con thực hiện một số thao tác nhất định và không trả về giá trị qua tên của nó.
- VD: Writeln, delete,...
3. Cấu trúc của chương trình con:
a. Cấu trúc của hàm:
Function < tên hàm > ( [ < danh sách tham số > ] ) : kiểu dữ liệu ;
[ < phần khai báo > ]
Begin
[ < dãy lệnh > ]
End;
- Trong thân hàm phải có câu lệnh gán giá trị cho tên hàm:
< tên hàm > : = < biểu thức > ;
b. Cấu trúc của thủ tục:
Procedure < tên thủ tục > ( [ < danh sách tham số >] );
[ < phần khai báo > ]
Begin
[ < dãy lệnh > ]
End;
4. Thực hiện chương trình con:
Tên chương trình con [ ( danh sách tham số ) ]
5. Các khái niệm: Tham số thực sự, tham số hình thức, tham biến, tham trị, biến cục bộ, biến toàn bộ
B. BÀI TẬP
I. Trắc nghiệm:
Câu 1: Cách viết nào sau đây là đúng khi khai báo mảng một chiều?
A. Var < kiểu chỉ số > : array [ tên biến mảng ] of < kiểu phần tử > ;
B. Var < tên biến mảng > : array [ kiểu chỉ số ] of < kiểu phần tử > ;
C. Var < array > of < kiểu phần tử > ;
D. Var < kiểu phần tử > : array [ kiểu chỉ số ] of < tên biến mảng > ;
Câu 2: Trong ngôn ngữ lập trình Pascal, đoạn chương trình sau thực hiện công việc:
Readln(s); k:= length(S); for i:= k downto 1 do write(S[i]);
A. in ra màn hình xâu S
B. in ra màn hình độ dài xâu S
C. in ra màn hình xâu S đảo ngược
D. đưa ra màn hình xâu S
Câu 3: Cách tham chiếu đến phần tử của mảng:
A. < tên biến mảng > [ < chỉ số > ] ;
B. < tên biến mảng > [ < kiểu chỉ số > ] ;
C. < tên biến mảng > [ < kiểu mảng > ] ;
D. < tên biến mảng > [ < kiểu phần tử > ]
Câu 4: Với khai báo A: array[1..100] of integer; thì việc truy xuất đến phần tử thứ 7 như sau:
A. A(7) B. A[7] C. A7 D. A 7
Câu 5: Trong Pascal, để khai báo biến tệp văn bản ta sử dụng cú pháp:
A. Var < tên tệp > : text; B. Var < tên biến tệp > : text;
C. Var < tên tệp > : string; D. Var < tên biến tệp > string : string;
Câu 6: Cho s=’abcdefghi’ hàm copy(s,2,3) cho giá trị bằng:
A. bcd B. ‘bcd’ C. ‘cd’ D. cd
Câu 7: Cho s=’Kon Tum Viet Nam’, hàm length(s) cho giá trị bằng:
A. 16 B. 15 C. ‘16’ D. ‘15’
Câu 8: Thủ tục insert(‘123’,’abc’,2) sẽ cho xâu kết quả nào sau đây?
A. a123bc B. 1abc23 C. 12abc D. ab123
Câu 9: Cho xâu s=’abcdefghi’ sau khi thực hiện thủ tục delete(s,3,4) thì:
A. s=’abchi’ B. s=’abcdi’ C. s=’abghi’ D. s=”
Câu 10: Cho A=’abc’; B=’ABC’; khi đó A+B cho kết quả nào?
A. ‘aAbBcC’ B. ‘abcABC’ C. ‘AaBbCc’ D. ‘ABCabc’
Câu 11: Trong các khai báo sau, khai báo nào đúng?
A. var hoten : string[27]; B. var diachi : string(100);
C. var ten= string[30]; D. var ho = string(20);
Câu 12: Sau khi thực hiện đoạn lệnh sau:
S:=0; For i:=1 to 4 do S:=S+i;
S có giá trị là:
A. 10 B. 4 C. 1 D. 8
Câu 13: Từ khoá của chương trình con là:
A. Procedure
B. Function
C. Program
D. Procedure và Function
Câu 14: Các biến của chương trình con là:
A. Biến toàn cục B. Biến cục bộ. C. Tham số hình thức. D. Tham số thực sự
Câu 15: Cho CTC sau:
Procedure thutuc(a,b: integer);
Begin
......
End;
Trong chương trình chính có thể gọi lại chương trình con như thế nào là hợp lệ:
A. thutuc; B. thutuc(5,10);
C. thutuc(1,2,3); D. thutuc(5);
Câu 16: Khi viết một chương trình muốn trả về một giá trị duy nhất ta nên dùng:
A. Hàm.
B. Thủ tục.
C. Chương trình con.
D. Thủ tục hoặc hàm
Câu 17: Cách khai báo nào sau đây là hợp lệ:
A. Function Ham(x,y: integer): integer; B. Function Ham(x,y: integer);
C. Function Ham(x,y: real): integer; D. Function Ham(x,y: real): Longint;
Câu 18: Trong lời gọi thủ tục, các tham số hình thức được thay bằng các giá trị cụ thể gọi là:
A. Tham số giá trị B. Tham số hình thức
C. Tham số biến D. Tham số thực sự.
Câu 19: Cho thủ tục sau:
Procedure Thutuc(x,y,z: integer); Các biến x,y,z được gọi là:
A. Tham số hình thức. B. Tham số thực sự.
C. Biến toàn cục D. Biến cục bộ.
Câu 20: Trong chương trình chính, khi gọi một thủ tục các tham số biến phải:
A. Khác kiểu, khác số lượng biến. B. Khác kiểu, cùng số lượng biến
C. Cùng kiểu, khác số lượng biến. D. Cùng kiểu, cùng số lượng biến.
Câu 21: Cho chương trình sau
Program VD;
Var x, y : integer
Procedure CT( Var m,n: integer);
Var a, b: Integer;
Begin
......
End;
......
Trong chương trình trên các biến cục bộ là:
A. x, y B. a, b
C. m,n D. a, b, m, n
Câu 22 : Để khai báo hàm trong Pascal bắt đầu bằng từ khóa:
A. Procedure B. Function
C. Program D. Var
II. Tự luận:
PHẦN 1: VIẾT CHƯƠNG TRÌNH CON
1.Tìm GTLN, GTNN, UCLN của hai số:
Function GTNN( a, b: integer) : integer; Begin If a > b then GTNN: =a else GTNN: =b; End; |
Function GTLN( a, b: integer) : integer; Begin If a < b then GTLN: = b else GTLN: = a; End; |
Function UCLN( a, b: integer) : integer; Begin If a > b then UCLN: = a mod b else UCLN := b mod a; End; |
2.Tính xn, n! :
Function LT( x, n: integer) : longint; Var i: integer ; P: longint; Begin P: = 1; For i : = 1 to n do P:= P*i; LT: =P; End; |
Function GT( n: integer) : longint; Var i: integer ; P: longint; Begin P: = 1; For i : = 1 to n do P:= P*i; GT: =P; End; |
3.Đổi thường thành hoa, hoa thành thường, đếm số lượng kí tự:
Function INHOA( S: string) : string; Var i: integer ; S1: string; Begin S1: =’’; For i:= 1 to length(S) do S1:= S1+ upcase(S[i]); INHOA: =S1; End; |
Đổi thường thành hoa: ................................................................. ................................................................. ................................................................. ................................................................. ................................................................. |
|||
Function THUONG( S: string) : string; Var i: integer ; S1: string; Begin S1: =’’; For i:= 1 to length(S) do S1:= S1+ not ( upcase(S[i])); THUONG: =S1; End; |
Đổi hoa thành thường: ....................................................... ....................................................... ....................................................... ....................................................... ....................................................... |
|||
Function DEMSO( S: string) : string; Var i, d: integer ; Begin d: =0; For i:= 1to length(S) do If A[i] in[‘0’ .. ‘9’] then d :=d + 1; DEMSO: =d; End; |
.......................................................................... .......................................................................... .......................................................................... .......................................................................... .......................................................................... .......................................................................... .......................................................................... |
|||
Function DEMHOA( S: string) : string; Var i, d: integer ; Begin d: =0; For i:= 1to length(S) do If A[i] in[‘A’ .. ‘Z’] then d :=d + 1; DEMHOA: =d; End; |
Function DEMTH( S: string) : string; Var i, d: integer ; Begin d: =0; For i:= 1to length(S) do If A[i] in[‘a’ .. ‘z’] then d :=d + 1; DEMTH: =d; End; |
|||
4.Tính S= an + bm +cp : 5.Tính S= 1! + 2! + 3! +...n! :
Var a,b,c,n,m,p: integer; S:longint; Function LT( a,b,c: integer) : longint; Var i: integer ; P: longint; Begin P: = 1; For i : = 1 to n do P:= P*i; LT: =P; End; Begin Readln(a,b,c,n,m,p); S:=0; S:=LT(a,n) + LT(b,m)+ LT(c,p); Write(s); Readln End. |
Var n, i: integer; S:longint; Function GT( n: integer) : longint; Var P: longint; Begin P: = 1; For i : = 1 to n do P:= P*i; GT: =P; End; Begin Read(n); S:=0; For i:= 1 to n do S:= S + GT(n); Write(s); Readln End. |
6. Tính S= an + n! + m! Var a,n,m: integer; S:longint; Function T( a,n,m: integer) : longint; Var i: integer ; P: longint; Begin P: = 1; For i : = 1 to n do P:= P*i; T: =P; End; Begin Readln(a,n,m); S:=0; S:= T(a,n) + T(n) + T(m); Write(s); Readln End. |
7.Đổi xâu S thành INHOA: Var S: string; Function INHOA( S: string) : string; Var i: integer ; S1: string; Begin S1: =’’; For i:= 1 to length(S) do S1:= S1+ upcase(S[i]); INHOA: =S1; End; Begin Read(S); S:= INHOA; Write(S); Readln End. |
8. Tính S = : Var m,n: integer; S: real; Function TI ( m,n: integer) : longint; Var i: integer ; P: longint; Begin P: = 1; For i : = 1 to n do P:= P*i; TI: =P; End; Begin Readln(m,n); S:= sqrt( 1/TI(m) + 1/TI(n)); Write(s); Readln End. |
............................................................................ ............................................................................ ............................................................................ ............................................................................ ............................................................................ ............................................................................ ............................................................................ ............................................................................ ............................................................................ ............................................................................ ........................................................................... |
{-- xem đầy đủ nội dung ở phần xem online hoặc tải về --}
Trên đây chỉ trích dẫn một phần của nội dung ôn tập học kỳ 2 môn Tin học lớp 11, để xem đầy đủ nội dung của tài liệu thì các em vui lòng chọn chức năng xem online hoặc đăng nhập tài khoản trên trang Hoc247.net để tải tài liệu về máy tham khảo nhé.
Các em quan tâm có thể tham khảo tài liệu cùng chuyên mục: 5 Đề thi học kì 2 môn Tin học lớp 11 có đáp án năm 2017
Chúc các em ôn tập thật tốt và đạt kết quả thật cao!