Bài kiểm tra 45 phút môn Tin học Lớp 11 - Năm học 2015-2016 - Trường THPT Tháp Chàm (Có đáp án)

. Yêu cầu  
a. Kiến thức  
* Biết được:  
• Biết xâu là một dãy ký tự (có thể coi xâu là mảng một chiều).  
• Biết cách khai báo xâu, truy cập phần tử của xâu  
• Biết khái niệm về kiểu dữ liệu tệp.  
• Biết khái niệm tệp định kiểu và tệp văn bản.  
• Biết các lệnh khai báo tệp định kiểu và tệp văn bản.  
• Biết vai trò của chương trình con trong lập trình.  
• Biết sự phân loại chương trình con: thủ tục và hàm  
• Biết các bước làm việc với tệp: gán tên cho biến tệp, mở tệp, đọc/ghi tệp, đóng tệp.  
• Biết một số hàm và thủ tục chuẩn làm việc với tệp  
• Biết cấu trúc một thủ tục, hàm danh sách vào/ra hình thức.  
• Biết mối liên quan giữa chương trình, thủ tục và hàm  
• Biết gọi một thủ tục, hàm  
* Hiểu được:  
• Hiểu khái niệm mảng một chiều.  
• Hiểu cách khai báo và truy cập đến các phần tử của mảng  
* Vận dụng: Viết được chương trình đơn giản  
b. Kỹ năng:  
• Cài đặt được thuật toán của một số bài toán đơn giản với kiểu dữ liệu mảng một chiều.  
• Thực hiện được khai báo mảng, truy cập, tính toán các phần tử của mảng.  
• Sử dụng được một số thủ tục, hàm thông dụng về xâu.  
• Cài đặt được một số chương trình đơn giản có sử dụng xâu.  
• Khai báo đúng tệp văn bản.  
• Sử dụng được một số hàm và thủ tục chuẩn làm việc với tệp  
• Nhận biết được các thành phần trong đầu của thủ tục, hàm.  
• Sử dụng được lời gọi một thủ tục, hàm.  
• Viết được thủ tục, hàm đơn giản  
II. Ma trận đề.  
Nhận biết  
Vận dụng  
Tổng  
Thông hiểu  
TN KQ BT  
Thấp  
TN KQ  
Thực hiện  
tính toán các  
phần tử trong  
mảng  
Cao  
BT  
Chủ đề  
TN  
BT  
TNKQ  
BT  
KQ  
Biết  
khai  
Hiểu khai báo  
báo mảng 1  
chiều.  
mảng  
chiều;  
một  
truy  
Kiểu mảng  
Biết  
cập đến một  
phần tử  
truy  
cập phần tử  
mảng  
chiều  
một  
trong mảng.  
Số câu: 7  
Số điểm: 2.1  
Tỉ lệ:  
Số câu: 2  
Số câu: 3  
Số câu: 2  
Số điểm:  
0.6  
Số điểm: 0.9  
Số điểm: 0.6  
Biết k/niệm  
về xâu; khai  
Thực  
được  
đoạn  
thực  
hiện  
các  
lệnh  
hiện  
Hiểu ý nghĩa  
hàm, thủ tục  
trong xâu  
báo  
xâu;  
Kiểu xâu  
truy cập đến  
phần  
tử  
xâu đơn giản  
trong xâu.  
Số câu: 9  
Số điểm: 2.7  
Tỉ lệ:  
Số câu: 3  
Số câu: 4  
Số câu: 2  
Số điểm:  
0.9  
Số điểm: 1.2  
Số điểm: 0.6  
Thực  
được  
đoạn lệnh về  
kiểu dự liệu  
tệp..  
hiện  
các  
Kiểu dữ liệu Biết  
đặc  
Hiểu thao tác  
cơ bản làm  
việc với tệp  
tệp – Thao  
tác với tệp  
điểm, vai  
trò kiểu tệp  
Số câu: 8  
Số điểm: 2.4  
Tỉ lệ:  
Số câu: 2  
Số câu: 4  
Số câu: 2  
Số điểm:  
0.6  
Số điểm: 1.2  
Số điểm: 0.6  
Chương trình Biết  
khái  
Hiểu tham số  
Viết  
các  
tục/hàm.  
được  
thủ  
con và phân niệm, cấu  
loại – Ví dụ trúc chương  
cách viết sử trình con,  
hình  
thức,  
tham số thực  
sự; biến toàn  
cục, biến cục  
bộ.  
Thực  
được được  
các đoạn  
hiện  
dụng chương  
Biết k/niệm  
trình con  
tham  
số  
Nhận biết  
Vận dụng  
Tổng  
Thông hiểu  
Thấp  
TN KQ  
Cao  
BT  
Chủ đề  
TN  
BT  
TNKQ  
BT  
TN KQ  
BT  
KQ  
hình thức,  
chương trình  
tham  
số  
con  
thực sự.  
Số câu: 9  
Số điểm: 2.7  
Tỉ lệ:  
Số câu: 4  
Số điểm: 1.2  
Số câu: 3  
Số câu: 2  
Số điểm:  
0.9  
Số điểm: 0.7  
T.số câu: 33  
T.số điểm:  
10  
Tỉ lệ 100%  
SỞ GD&ĐT TỈNH NINH THUẬN  
TRƯỜNG THPT THÁP CHÀM  
ĐỀ KIỂM TRA HỌC KỲ 2 LỚP 11  
NĂM HỌC: 2015 - 2016  
Môn: Tin học. Chương trình chuẩn  
Thời gian làm bài : 45 phút  
(Không kể thời gian phát)  
Câu 1: Số phần tử của một mảng một chiều là:  
A. Có giới hạn;  
B. Vô hạn;  
C. Có nhiều nhất là 100 phần tử;  
D. Có nhiều nhất là 1000 phần tử;  
Câu 2: Trong Pascal, đoạn chương trình sau thực hiện công việc gì ?  
For i := length(S) downto 1 do If S[i] = ‘ ’ then Delete(S, i, 1) ;  
A. Xóa mọi dấu cách của xâu  
B. Xóa dấu cách thừa trong xâu ký tự S  
D. Xóa dấu cách tại vị trí cuối cùng của  
C. Xóa dấu cách đầu tiên trong xâu ký tự S  
xâu S  
Câu 3: Trong ngôn ngữ lập trình Pascal, với khai báo như sau :  
Type mang = ARRAY[1..100] of integer ;  
Var a, b : mang ; c : array[1..100] of integer ;  
Câu lệnh nào dưới đây là hợp lệ ?  
A. c := b ;  
Câu 4: Trong ngôn ngữ lập trình Pascal, xâu kí tự có tối đa ?  
A. 16 kí tự; B. 255 kí tự; C. 256 kí tự;  
B. a := b ;  
C. a := c ;  
D. b := c ;  
D. 8 kí tự;  
Câu 5: Trong ngôn ngữ lập trình Pascal, đoạn chương trình sau thực hiện việc nào trong các  
việc sau (A là mảng số có N phần tử) ?  
S := 0 ; For i := 1 to N do S := S + A[i] ;  
A. Không thực hiện việc nào trong 3 việc trên. B. Đếm số phần tử của mảng A;  
C. Tính tổng các phần tử của mảng A;  
D. In ra màn hình mảng A;  
Câu 6: Trong ngôn ngữ lập trình Pascal, đoạn chương trình sau thực hiện công việc gì?  
d := 0 ;  
For i := 1 to length(S) do if ( S[i] >= ‘ 0 ’ ) AND ( S[i] <= ‘ 9 ’ ) then d  
:= d + 1 ;  
A. Xóa đi các chữ số có trong S;  
C. Đếm số ký tự là ký tự số trong xâu S;  
B. Xóa đi ký tự đầu tiên trong S;  
D. Đếm xem có bao nhiêu ký tự số trong  
xâu S;  
Câu 7: Với khai báo A : Array [1 .. 100] Of Integer; thì việc truy xuất đến phần tử thứ 5 như  
sau:  
A. A 5;  
B. A(5);  
C. A5;  
D. A[5];  
Câu 8: Cú pháp để khai báo biến mảng một chiều trực tiếp là:  
A. Type <tên biến mảng> : Array [kiểu chỉ số] <kiểu phần tử>;  
B. Var <tên biến mảng> : Array [kiểu chỉ số] <kiểu phần tử>;  
C. Type <tên biến mảng> : Array [kiểu chỉ số] Of <kiểu phần tử>;  
D. Var <tên biến mảng> : Array [kiểu chỉ số] Of <kiểu phần tử>;  
Câu 9: Cho sâu s1 = ‘123’; s2 = ‘abc’ sau khi thực hiện thủ tục Insert(s1,s2,2) thì:  
A. s1 = ‘123’; s2 = ‘12abc’  
B. s1 = ‘1abc23’; s2 = ‘abc’  
D. s1 = ‘123’; s2 = ‘a123bc’  
C. s1 = ‘ab123; s2 = ‘abc’  
Câu 10: Trong Pascal, cho đoạn chương trình sau:  
S := 0; For I := 1 To 5 Do If (I mod 2 = 0) Then s := s + a[1];  
Với mảng a có các giá trị là: 3  
cho kết quả là:  
6
7
9
4. Đoạn chương trình trên  
D. S = 12  
A. S = 13  
B. S = 14  
C. S = 6  
Câu 11: Cho s = ‘123456789’ hàm Copy(s,2,3) cho giá trị bằng:  
A. 234; B. ‘234’; C. 34;  
D. ‘34’;  
Câu 12: Trong Pascal, để tìm vị trí xuất hiện đầu tiên của xâu ‘hoa’ trong xâu S ta có thể viết  
bằng cách nào trong các cách sau ?  
A. i := pos(‘hoa’, S) ;  
C. i := pos(S, ’hoa’) ;  
B. S1 := ‘hoa’ ; i := pos(S1, ‘hoa’) ;  
D. i := pos(‘hoa’, ‘hoa’);  
Câu 13: Cho str là một xâu kí tự, đoạn chương trình sau thực hiện công việc gì?  
for i := length(str) downto 1 do write(str[i]) ;  
A. In từng kí tự ra màn hình theo thứ tự ngược;  
B. In từng kí tự ra màn hình theo thứ tự ngược, trừ kí tự đầu tiên;  
C. In xâu ra màn hình;  
D. In từng kí tự xâu ra màn hình;  
Câu 14: Trong các phát biểu sau, phát biểu nào là Sai?  
A. Có thể tham chiếu đến từng kí tự trong xâu.  
B. Xâu có chiều dài không được vượt quá 250;  
C. Thao tác nhập xuất đối với dữ liệu kiểu xâu như nhập xâu hay xuất giá trị của biến kiểu  
dữ liệu chuẩn;  
D. Xâu không có kí tự nào được gọi là xâu rỗng;  
Câu 15: Cho xâu s = ‘123456789’, sau khi thực hiện thủ tục delets(s,3,4) thì:  
A. S = ‘’;  
Câu 16: Cho A = ‘abc’; B = ‘ABC’; Khi đó A + B cho kết quả nào?  
A. ‘AaBbCc’; B. ‘ABCcbc’; C. ‘aAbBcC’;  
B. S = ‘1256789’;  
C. S = ‘12789’;  
D. S = ‘123789’;  
D. ‘abcABC’;  
Câu 17: Cho khai báo mảng và đoạn chương trình như sau:  
Var a : array[0..50] of real;  
k := 0 ;  
Đoạn chương trình trên thực hiện công việc gì dưới đây ?  
A. Tìm chỉ số của phần tử nhỏ nhất trong mảng; B. Tìm chỉ số của phần tử lớn nhất trong  
for i := 1 to 50 do  
if a[i] > a[k] then k := i ;  
mảng;  
C. Tìm phần tử nhỏ nhất trong mảng;  
D. Tìm phần tử lớn nhất trong mảng;  
Câu 18: Để khai báo kiểu xâu trực tiếp ta sử dụng cú pháp nào?  
A. Var <tên biến> = <tên kiểu>;  
B. Var <tên biến> : String[độ dài của lớn nhất của xâu] ;  
C. Var <tên biến> : <tên kiểu> ;  
D. Var <tên biến> = String[độ dài lớn nhất của xâu];  
Câu 19: Hãy điền vào chổ trống để đoạn chương trình sau thực hiện đếm các phẩn tử có giá  
trị bằng 10?  
Dem := 0;For I := 1 To n Do If ………………Then inc(dem); Write(‘Dãy có ’, dem, ‘phần  
tử có giá trị bằng 10’);  
A. a(i) = 100  
B. a[i] := 100  
C. a[i] : 100  
D. a[i] = 10  
Câu 20: Trong ngôn ngữ lập trình Pascal, xâu kí tự là ?  
A. Tập hợp các chữ cái và các chữ số trong bảng chữ cái tiếng Anh;  
B. Dãy các kí tự trong bảng mã ASCII;  
C. Tập hợp các chữ cái trong bảng chữ cái tiếng Anh;  
D. Mảng các ký tự;  
Câu 21: Xâu ‘ABBA’ lớn hơn xâu:  
A. ‘BABA’;  
B. ‘ABC’;  
C. ‘ABABA’;  
D. ‘ABCBA’;  
Câu 22: Cú pháp câu lệnh nào sau đây là đúng?  
A. Var mang : Array [1 - 100] Of Char ;  
B. Var mang1c : Array (1 .. 100) Of  
Char ;  
C. Var mang : Array [1 .. 100] Of Char ;  
D. Var mang : Array (1 – 100) Of Char ;  
Câu 23: Đoạn chương trình sau in ra kết quả nào?  
Program Welcome ;  
Var a : string[10];  
Begin  
a := ‘tinhoc ’; writeln(length(a));  
End.  
A. 10;  
B. Chương trình có lỗi; C. 7;  
D. 6;  
Câu 24: Trong ngôn ngữ lập trình Pascal, khai báo nào trong các khai báo sau là sai khi khai  
báo xâu kí tự ?  
A. S : string;  
Câu 25: Trong ngôn ngữ lập trình Pascal, đoạn chương trình sau thực hiện công việc gì?  
d := 0 ; For i := 1 to length(S) do if S[i] = ‘ ’ then d := d + 1 ;  
B. X1 : string[100];  
C. S : string[256];  
D. X1 : string[1];  
A. Đếm số dấu cách có trong xâu;  
C. Đếm số ký tự có trong xâu;  
B. Xóa đi các ký tự số;  
D. Xóa đi các dấu cách trong xâu;  
Câu 26: Cho đoạn chương trình sau:  
D := 0;For I := 1 To 5 Do If (a[i] > 10) and (a[i] < 100) and (a[i] mod 3 = 0)Then d :=  
d + 1;Write(d);  
Với mảng a: 9  
12  
20  
15  
210  
100. Hỏi đoạn chương trình trên sau khi  
thực hiện với mảng a kết quả là?  
A. 2 B. 4  
Câu 27: Cho s = ‘500 ki tu’, hàm Length(s) cho giá trị bằng:  
A. ‘5’ B. ‘50’; C. 50;  
C. 0  
D. 3  
D. 9;  
Câu 28: Hỏi đoạn chương trình sau có chức năng gì?  
M := a[1];For I := 2 To n Do If ( a[i] < m) Then m := a[i];Write(m);  
A. Đếm phần tử trong mảng  
B. So sánh giá trị các phần t trong mảng.  
D. Tìm phần tử nhỏ nhất trong mảng  
C. Tìm phần tử lớn nhất trong mảng  
Câu 29: Trong ngôn ngữ lập trình Pascal, sau khi chương trình thực hiện xong đoạn chương  
trình sau, giá trị của biến S là ?  
S := ‘Ha Noi Mua thu’; Delete(S,7,8); Insert(‘Mua thu’, S, 1);  
A. Mua thu Ha Noi;  
B. Ha Noi;  
C. Mua thu Ha Noi mua thu;  
D. Ha Noi Mua thu;  
Câu 30: Thủ tục delete(st,p,n) thực hiện:  
A. Xóa n kí tự của biến xâu st bắt đầu từ vị trí p;  
B. Xóa p kí tự của biến xâu st bắt đầu từ vị trí n;  
C. Xóa các kí tự của biến xâu st bắt đầu tử vị trí p đến vị trí p;  
D. Xóa các kí tự của biến xâu st bắt đầu từ vị trí n đến vị trí n;  
Câu 31: Cho s1 = ‘010’; s2 = ‘1001010’ hàm pos(s1,s2) cho giá trị bằng:  
A. 3;  
B. 4;  
C. 5;  
D. 0;  
Câu 32: Trong ngôn ngữ lập trình Pascal, đoạn chương trình sau thực hiện công việc gì ? (giá  
trị của biến đếm)  
d := 0 ; For ch := ‘a’ to ‘z’ do  
If pos(ch,S) <> 0 then d := d + 1 ;  
A. Đếm số lượng ký tự là chữ cái in hoa của xâu S  
B. Đếm số lượng chữ cái thường khác nhau có trong xâu  
C. Đếm số lượng ký tự là chữ cái thường trong xâu S  
D. Đếm số lượng ký tự khác dấu cách của xâu S  
Câu 33: Cho khai báo sau: Var a : array[0..16] of integer; Câu lệnh nào dưới đây sẽ in ra  
tất cả các phần tử của mảng trên ?  
A. for k := 16 downto 0 do write(a[k]);  
C. for k := 16 down to 0 write(a[k]);  
B. for k := 1 to 16 do write(a[k]);  
D. for k:= 0 to 15 do write(a[k]);  
doc 8 trang Thùy Anh 9480 Free
Bạn đang xem tài liệu "Bài kiểm tra 45 phút môn Tin học Lớp 11 - Năm học 2015-2016 - Trường THPT Tháp Chàm (Có đáp án)", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

File đính kèm:

  • docbai_kiem_tra_45_phut_mon_tin_hoc_lop_11_nam_hoc_2015_2016_tr.doc