ĐỀ KIỂM TRA GIỮA HK II KHỐI 11 NĂM HỌC 2021 2022 Tên Chủ đề Nhận biết Thông hiểu Vận dụng Cộng Cấp độ thấp Cấp độ cao TNK Q T L TNKQ TL TNK Q T L TNK Q TL TN KQ TL Cấu trúc lặp và rẽ nhá nh Sử dụng[.]
Trang 1ĐỀ KIỂM TRA GIỮA HK II KHỐI 11 NĂM HỌC: 2021-2022
Tên Chủ đề
Nhận
biết Thơng hiểu
Trang 4Phịng Giáo dục và Đào tạo Đề thi Giữa kì 2
Năm học 2021 - 2022 Bài thi môn: Tin học lớp 11
Thời gian làm bài: 45 phút (không kể thời gian phát đề)
Trang 5I TRẮC NGHIỆM (7 điểm; mỗi câu 0,3 điểm)
Khoanh tròn vào chữ cái in hoa đứng trước câu trả lời đúng tương ứng với các câu hỏi
Câu 1 Hãy chọn phương án ghép đúng Độ dài tối đa của xâu kí tự trong
PASCAL là A 256; B 255; C 65535; D Tùy ý;
Câu 2 Hãy chọn phương án ghép đúng Cho xâu S là ‘Hanoi-Vietnam’ Kết quả của hàm Length(S) là
A 12; B 13 C 14 D 15
Câu 3 Hãy chọn phương án ghép đúng Cho xâu S là ‘Hanoi-Vietnam’ Kết quả của hàm Pos(‘Vietnam’,S) là
A 5; B 6; C 7; D 8;
Câu 4 Cho khai báo sau: Var hoten : String;
Phát biểu nào dưới đây là đúng ?
A Câu lệnh sai vì thiếu độ dài tối đa của xâu; B Xâu có độ dài lớn nhất là 0;
Trang 6D Cần phải khai báo kích thước của xâu sau đó;
Câu 5 Hãy chọn phương án ghép đúng nhất Thủ tục chuẩn Insert(S1,S2,vt)
thực hiện
A chèn xâu S1 vào S2 bắt đầu từ vị trí vt ; B chèn xâu S2 vào S1 bắt đầu từ vị trí vt ; C nối xâu S2 vào S1;
D sao chép vào cuối S1 một phần của S2 từ vị trí vt ;
Câu 6 Đoạn chương trình sau in ra kết quả nào?
A 6;
B 7; C 10;
D Chương trình có lỗi;
Câu 7 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 xâu ra màn hình;
Trang 7C In từng kí tự ra màn hình theo thứ tự ngược, trừ kí tự đầu tiên; D In từng kí tự ra màn hình theo thứ tự ngược;
Câu 8 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ì
A Dịch chuyển các kí tự của xâu về sau 1 vị trí; B Dịch chuyển các kí tự của sâu lên trước một vị trí; C Khởi tạo lại mọi kí tự của xâu bằng kí tự đầu tiên; D Khởi tạo lại mọi kí tự của xâu bằng kí tự cuối cùng;
Câu 9 Hãy chọn phương án ghép đúng nhất Kiểu dữ liệu có cấu trúc
A là kiểu dữ liệu chuẩn do mỗi ngôn ngữ lập trình cho sẵn, người lập trình chỉ cần khai báo nhờ các tên chuẩn;
B là kiểu dữ liệu do người lập trình xây dựng từ những kiểu dữ liệu đã có; C trong mỗi ngơn ngữ lập trình đều có cách thức xây dựng giống nhau; D trong ngơn ngữ lập trình bậc cao chỉ là kiểu mảng, bản ghi và xâu;
Câu 10 Trong ngơn ngữ lập trình Pascal, xâu kí tự là?
A Mảng các ký tự;
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 Tập hợp các chữ cái và các chữ số trong bảng chữ cái tiếng Anh;
Câu 11 Trong ngơn ngữ lập trình Pascal, cách khai báo xâu kí tự nào sau
đây là đúng?
Trang 8C S : string;
D Cả 3 câu đều đúng ;
Câu 12 Trong ngôn ngữ lập trình Pascal, xâu kí tự có tối đa?
A 8 kí tự; B 256 kí tự; C 16 kí tự; D 255 kí tự;
Câu 13 Trong ngơn ngữ lập trình Pascal, xâu kí tự khơng có kí tự nào gọi là?
A Xâu khơng; B Xâu rỗng; C Xâu trắng;
D Không phải là xâu kí tự;
Câu 14 Trong ngơn ngữ lập trình Pascal, phần tử đầu tiên của xâu ký tự
mang chỉ số là? A 0
B Do người lập trình khai báo C 1
D Khơng có chỉ số
Câu 15 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;
Trang 9Câu 16 Trong ngơn ngữ lập trình Pascal, thủ tục Delete(c, a, b) thực hiện
cơng việc gì trong các việc sau?
A Xóa trong xâu kí tự c a kí tự bắt đầu từ vị trí b; B Xóa trong xâu a b kí tự từ vị trí c;
C Xóa trong xâu c b kí tự bắt đầu từ vị trí a; D Xóa trong xâu b c kí tự bắt đầu từ vị trí a;
Câu 17 Trong ngơn ngữ lập trình Pascal, hàm Length(S) cho kết quả gì ?
A Độ dài xâu S khi khai báo;
B Số ký tự hiện có của xâu S khơng tính các dấu cách; C Số ký tự của xâu không tính dấu cách cuối cùng D Số ký tự hiện có của xâu S
Câu 18 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 Ha Noi Mua thu;
B Mua thu Ha Noi mua thu; C Mua thu Ha Noi; D Ha Noi;
Câu 19 Phát biểu nào dưới đây về kiểu mảng là phù hợp?
A Là một tập hợp các số nguyên; B Độ dài tối đa của mảng là 255;
Trang 10Câu 20 Hãy chọn phương án ghép đúng nhất Để khai báo số phần tử của mảng trong PASCAL, người lập trình cần
A khai báo một hằng số là số phần tử của mảng; B khai báo chỉ số bắt đầu và kết thúc của mảng; C khai báo chỉ số kết thúc của mảng;
D không cần khai báo gì, hệ thống sẽ tự xác định;
Câu 21 Phát biểu nào dưới đây về chỉ số của mảng là phù hợp nhất?
A Dùng để truy cập đến một phần tử bất kì trong mảng; B Dùng để quản lí kích thước của mảng;
C Dùng trong vòng lặp với mảng;
D Dùng trong vịng lặp với mảng để quản lí kích thước của mảng;
II TỰ LUẬN: (3 điểm)
Câu 1: Cho mảng A gồm N phần tử thuộc kiểu nguyên dương (N≤500)? Viết
chương trình thực hiện tính tổng các số chia hết cho 3 hoặc cho 5
ĐÁP ÁN ĐỀ KIỂM TRA NĂM HỌC 2021-2022 (ĐỀ SỐ 1) MÔN: TIN HOC
THỜI GIAN: 45 PHÚT I TRẮC NGHIỆM (7 điểm; mỗi câu 0,3 điểm)
Câu 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 ĐA B B C C A B D C B B C D B C C A D C C B A
II T Ự LUẬN: (3 điểm)
Program Tinhtong; Uses crt;
Trang 11Const Nmax=500; Var A: array[1 Nmax] of integer; I,n: integer; Tong: longint; BEGIN
Write(‘Nhap so luong phan tu cua mang: ‘); readln(n); For i:=1 to n do
Begin
Write(‘Nhap phan tu thu ‘,i,’ =’); readln(a[i]); End;
Tong:=0;
For i:=1 to n do
If (a[i] mod 3=0 or a[i] mod 5=0) then tong:=tong+a[i]; Writeln(‘Tong= ‘,tong:9); Readln END 0.5 điểm 0.5 điểm 0.5 điểm 0.5 điểm 0.5 điểm ……………………………………………………
Trang 12Đề thi Giữa kì 2 Năm học 2021 - 2022 Bài thi mơn: Tin học lớp 11
Thời gian làm bài: 45 phút (không kể thời gian phát đề)
(Đề số 2) I TRẮC NGHIỆM (7 điểm; mỗi câu 0,3 điểm)
Khoanh tròn vào chữ cái in hoa đứng trước câu trả lời đúng tương ứng với các câu hỏi
Câu 1 Cho xâu s1:= 'Truong'; s2:= 'TQT'; s3 := 'Khoi 11'; để được xâu mới
'Khoi 11 Truong TQT' ta thực hiện:
A s3 + ' ' + s1 + ' ' s2 ; B s3 + s1 + s2 ;
C 's3' + 's1' + 's2' ; D 's3' + ' ' + 's1' + ' ' 's2' ;
Câu 2 Để tìm ước số chung lớn nhất của 2 số nguyên dương a, b ta dùng cấu
trúc lặp:
A Có thể dùng While - Do hoặc For - Do B Đáp án khác
C Chỉ có thể dùng cấu trúc lặp For - Do D Chỉ có thể dùng cấu trúc lặp While - Do
Câu 3 Trong câu lệnh lặp với số lần chưa biết trước khẳng định nào sau đây
là đúng
Trang 13D Phải có ít nhất một câu lệnh làm thay đổi giá trị biểu thức điều kiện
Câu 4 Đoạn chương trình sau thực hiện i:=1; S:=0; While (i < N) Do begin
S:=S+i; i := i+2; end; Write('S = ',S);
A Tính tổng các số lẻ từ 1 đến N -1 B Tính tổng các số từ 1 đến N
C Tính tổng các số chẵn từ 1 đến N D Tính tổng các số lẽ từ 1 đến N
Câu 5 Cho mảng B một chiều, đoạn chương trình sau làm gì? S: = 0; For i:=
1 to N do If ((B[i] mod 2 ) < > 0) and (B[i] mod 3) = 0 then S:= S + B[i];
A Tính tổng các phần tử có giá trị là lẽ là ước của 3 B Tính tổng các phần tử có thứ tự là lẽ và chia hết cho 3
C Tính tổng các phần tử có giá trị là lẽ và bội của 3 D Tính tổng các phần tử có giá trị là chẵn và bội của 3
Câu 6 Cho biết kết quả của đoạn chương trình sau N:=10975; While (N >=10)
Do N := N div 10; Writeln('N = ',N)
A N = 1 B N = 0 C N = 5 D N = 10
Câu 7 Cách khai báo mảng nào sau đây là đúng A Var D : array [ 1.2 20] of integer; B Var A : array [ -10 10] of char;
C Var B : array [ 100 20] of byte; D Var C : array [ n m] of real;
Câu 8 Trong cấu trúc lặp với số lần chưa trước khẳng định nào sau đây là
Trang 14A Câu lệnh sau Do phải là câu lệnh ghép
B Câu lệnh sau Do phải có ít nhất một câu lệnh làm thay đổi biểu thức điều
kiện
C Câu lệnh sau Do phải là câu lệnh đơn
D Câu lệnh còn được thực hiện (lặp) khi điều kiện có giá trị là sai
Câu 9 Với i là các biến nguyên Ðoạn chương trình sau cho kết quả nào ?i:=1;
while (i > 5) do i := i +1; write(i,' ');
A 1 2 3 4 5 B 5
C 1 D 2 3 4 5
Câu 10 Cho a,b,z là các biến nguyên, cho ðoạn chương trình: a:=5:
b:=8; While (b>=a) Do a:=a+1; Write('a=',a,', b=',b); cho kết quả của a, b là:
A a=8, b=8 B đáp án khác C a=9, b=8 D a=5, b=8
Câu 11 Những tên nào sau đây là tên các hàm xử lý xâu trong Pascal A Pos; Copy; length;
B Copy; Insert; Length; Upcase
C Pos; Delete; Upcase; Copy D Tất cả đều đúng
Trang 15C Var C : array [ 20 200] of string; D Var B : array [ -10 200] of char;
Câu 13 Trong ngôn ngữ lập trình Pascal muốn chuyển đổi xâu S từ chữ
thường sang chữ in hoa ta dùng:
A Tất cả đều sai B Upcase(S); C Length(S); D Pos(S)
Câu 14 Câu Lệnh While <điều kiện> Do <Câu lệnh> thực hiện như thế nào ? A Trong khi điều kiện cịn đúng thì câu lệnh sau từ khóa "Do" cịn được thực
hiện
B Nếu điều kiện đúng thì <câu lệnh> sau từ khóa "Do" khơng được thực hiện C Nếu điều kiện sai thì <câu lệnh> sau từ khóa "Do" được thực hiện
D Trong khi điều kiện cịn sai thì câu lệnh sau từ khóa "Do" cịn được thực
hiện
Câu 15 Trong câu lệnh lặp for - do (dạng lùi), câu lệnh còn được thực hiện
(lặp) khi nào ?
A giá trị cuối > giá trị của biến đếm >= giá trị đầu B giá trị cuối > giá trị của biến đếm > giá trị đầu
C giá trị cuối >= giá trị của biến đếm >= giá trị đầu D giá trị cuối > giá trị của biến đếm = giá trị đầu
Câu 16 Với A[1]:=4; A[2]:=5; A[3]:=3; A[4]:=7; A[5]:=2; S: = 0; For i:= 5 Downto
1 do If ((i mod 2)<>0 then) S:=S + A[i]; Write('S=',S); cho giá trị
Trang 16D 7;
Câu 17 Cho biết kết quả của đoạn chương trình sau Dem:=1; While (Dem <
5) Do Dem:=Dem+1; Writeln('Dem = ',Dem)
A Dem =5 B Dem = 6 C Dem = 1 D Dem = 4
Câu 18 Chọn khẳng định đúng khi dùng vòng lặp giải bài tốn sau: Tính
tổng:S = 1+1/2 +1/3 + + 1/1000
A Sử dụng được cả hai câu lênh While do và For do B Không thể dùng lệnh For do
C Không thể sử dụng While do D Chỉ dùng được lệnh For do
Câu 19 Trong câu lệnh lặp for - do (dạng tiến), câu lệnh còn được thực hiện
(lặp) khi nào ?
A giá trị đầu <= giá trị của biến đếm < giá trị cuối B giá trị đầu < giá trị của biến đếm <= giá trị cuối C giá trị đầu < giá trị của biến đếm < giá trị cuối D giá trị đầu <= giá trị của biến đếm <= giá trị cuối
Câu 20 Ðoạn chương trình sau cho kết quả gì? T:=0; for i:=1 to n do if (i
mod 3=0) then T:=T+i*i;
A Tính tổng bình phương các số lẽ trong phạm vi từ 1đến n B Tính tổng các số chia hết cho 3 từ 1đến n
Trang 17Câu 21 Cho S là một xâu bất kỳ Đoạn chương trình sau có chức năng gì For
i:=1 to length(s) Do s[i]:=Upcase(s[i]);
A chuyển đổi các ký chữ cái trong xâu S thành chữ in hoa B đáp án khác
C báo lỗi D khơng có chức năng gì
II TỰ LUẬN: (3,0 điểm)
Câu 1(1.5đ) Mảng một chiều là gì? Với mảng một chiều ta quan tâm đến
những gì?
Câu 2(1.5đ) Em hãy điền vào chỗ trống dưới đây:
GIÁ TRỊ BIỂU THỨC KẾT QUẢ
‘Mua he den roi’ Copy(S,8,7) …………
‘Cong nghe’ Upcase(S) …………
ĐÁP ÁN ĐỀ KIỂM TRA NĂM HỌC 2021-2022 (ĐỀ SỐ 2) MÔN: TIN HOC
THỜI GIAN: 45 PHÚT I TRẮC NGHIỆM (7 điểm; mỗi câu 0,3 điểm)
Câu 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 ĐA A A D A C A B B C D A B A A C B A A D C A
II TỰ LUẬN: (3 điểm)
Trang 18ĐÁP ÁN ĐIỂM
CÂU 1
- Mảng một chiều là một dãy hữu hạn các phần tử có cùng kiểu Mảng được đặt tên và mỗi phần tử mang một chỉ số Để mô tả mảng một chiều cần xác định kiểu của các phần tử và cách đánh chỉ số các phần tử
- Với mảng một chiều ta quan tâm đến: Tên kiểu mảng một chiều
Số lượng phần tử trong mảng Kiểu dữ liệu của phần tử Cách khai báo biến mảng Cách tham chiếu đến phần tử 0,75đ 0,75đ CÂU 2 GIÁ TRỊ BIỂU THỨC KẾT QUẢ KẾT QUẢ ‘Mua he den roi’ Copy(S,8,7) ‘den roi’ ………… ‘Cong nghe’ Upcase(S) ‘CONG NGHE’ ………… 0,75đ 0,75đ ……………………………………………………
Phòng Giáo dục và Đào tạo Đề thi Giữa kì 2
Năm học 2021 - 2022 Bài thi môn: Tin học lớp 11
Thời gian làm bài: 45 phút (không kể thời gian phát đề)
Trang 19I TRẮC NGHIỆM (7 điểm; mỗi câu 0,3 điểm)
Khoanh tròn vào chữ cái in hoa đứng trước câu trả lời đúng tương ứng với các câu hỏi
Câu 1 Để 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 eof(f) B eoln(f)
C eof(f, ‘trai.txt’) D foe(f)
Câu 2 Trong NNLT Pascal, khai báo nào sau đây là đúng khi khai báo tệp văn
bản? A Var f: String; B Var f: byte; C Var f = record D Var f: Text; Câu 3 Câu lệnh dùng thủ tục đọc có dạng: A Read(<biến tệp>); B Read(<biến tệp>,<danh sách biến>);
C Read(<danh sách biến>, <biến tệp>); D Read(<danh sách biến>);
Câu 4 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:
Trang 20D Read(‘x’, ‘y’, ‘z’);
Câu 5 Trong kiểu dữ liệu kiểu mảng, khẳng định nào sau đây là sai
A Mảng được đặt tên và mỗi phần tử của nó có một chỉ số B Có 2 cách để khai báo mảng một chiều
C Là một dãy vô hạn các phần tử cùng kiểu D Các phần tử trong mảng có cùng kiểu dữ liệu
Câu 6 Câu lệnh dùng thủ tục ghi có dạng:
A Writeln(<biến tệp>); B Writeln(<danh sách kết quả>,(<biến tệp>); C Writeln(<biến tệp>, <danh sách kết quả>); D Writeln(<danh sách kết quả>);
Câu 7 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(f, a,b,c);
B Write(a, ‘ ’, b, ‘ ’, c); C Write(f, a, ‘ ’, bc); D Write(f, a ‘’, b‘’, c);
Câu 8 Trong Pascal để khai báo ba biến tệp văn bản f1, f2, f3 cần sử dụng
cách viết nào sau đây? A Var f1 f2 f3:text; B Var f1,f2,f3:text; C Var f1; f2;f3:text; D Var f1:f2:f3:text;
Trang 21
Phương án nào dưới đây chỉ phần tử thứ 10 của mảng? A a[10];
B a(10); C a[9]; D a(9);
Câu 10 Hãy chọn phương án ghép đúng nhất Mảng là kiểu dữ liệu biểu diễn một dãy các phần tử thuận tiện cho
A chèn thêm phần tử;
B truy cập đến phần tử bất kì; C xóa một phần tử
D chèn thêm phần tử và xóa phần tử;
Câu 11 Phát biểu nào sau đây là đúng ?
A Mảng một chiều là một dãy hữu hạn các số nguyên
B Mảng một chiều là một dãy hữu hạn các phần tử cùng kiểu dữ liệu
C Có thể dùng bất cứ một kiểu dữ liệu chuẩn nào để đánh chỉ số cho các phần tử của mảng một chiều
D Khi xây dựng kiểu mảng một chiều, người lập trình khơng cần khai báo kiểu dữ liệu của phần tử của mảng
Câu 12 Phát biểu nào sau đây là sai ?
A Mỗi phần tử của mảng một chiều đều được đánh chỉ số, được chỉ định nhờ chỉ số tương ứng của nó
B Với khai báo xây dựng kiểu mảng một chiều, không thể biết được mảng chứa tối đa bao nhiêu phần tử
Trang 22D Chỉ số được đánh tuần tự, liên tiếp cho các phần tử kề nhau của mảng một chiều, từ phần tử đầu tiên cho đến phần tử cuối
Câu 13 Hãy chọn phương án hợp lý nhất Trong ngơn ngữ lập trình Pascal
A Các phần tử của mảng một chiều được sắp thứ tự theo chỉ số; B Các phần tử của mảng một chiều được sắp thứ tự theo giá trị giảm dần; C Các phần tử của mảng một chiều được sắp thứ tự theo giá trị tăng dần; D Các phần tử của mảng một chiều không sắp thứ tự
Câu 14 Trong ngơn ngữ lập trình Pascal, để đổi giá trị hai phần tử mảng một
chiều A tại hai vị trí i và j , ta viết mã lệnh như sau : A A[i] := Tag; A[i] := A[j]; A[j] := Tag; B Tag := A[i]; A[i] := A[j]; A[j] := Tag; C Tag := A[i]; A[j] := A[i]; A[j] := Tag; D Tag := A[i]; A[i] := A[j]; Tag := A[j];
Câu 15 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 ;
Trang 23A Tính tổng các phần tử của mảng A; B In ra màn hình mảng A;
C Đếm số phần tử của mảng A;
D Không thực hiện việc nào trong 3 việc trên
Câu 16 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 a := b ;
B b := c ; C c := b ; D a := c ;
Câu 17 Trong ngơn ngữ lập trình Pascal, đoạn chương trình sau làm cơng
việc gì: i := pos(‘ ’, X) ; while i <>0 do Begin Delete(X, i, 1) ; End;
A Xóa tất cả các dấu cách trong xâu X ;
Trang 24Câu 18 Trong ngơn ngữ lập trình Pascal, sau khi thực hiện đoạn chương trình
sau, biến X có giá trị là gì?
S := ‘Hoang Anh Tuan’ ; X := ‘ ’ ; i := length(S) ; while S[i] <> ‘ ’ do Begin X := X + S[i] ; i := i + 1 ; End ; A Xâu rỗng B ‘Hoang’ C ‘Anh’ D ‘Tuan’
Câu 19 Trong ngơn ngữ lập trình Pascal, để in một xâu kí tự ra màn hình
theo thứ tự ngược lại của các ký tự trong xâu (vd : abcd thi in ra là dcba), đoạn chương nào sau đây thực hiện việc gì ?
A For i := 1 to length(S) do write(S[i])
B For i := length(S) downto 1 do write(S[i]) C For i := length(S) downto 1 do write(S) D For i := 1 to length(S) div 2 do write(S[i])
Câu 20 Trong ngơn ngữ lập trình Pascal, đoạn chương trình sau thực hiện
Trang 25A Xóa đi các dấu cách trong xâu; B Đếm số ký tự có trong xâu;
C Đếm số dấu cách có trong xâu; (*) D Xóa đi các ký tự số;
Câu 21 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 Đếm số ký tự là ký tự số trong xâu S;
B Đếm xem có bao nhiêu ký tự số trong xâu S; C Xóa đi các chữ số có trong S;
D Xóa đi ký tự đầu tiên trong S;
II TỰ LUẬN: (3,0 điểm)
Câu 1(2.0đ): Trình bày cấu trúc và ý nghĩa các thành phần trong khai báo biến
mảng một chiều
Câu 1 (1.0 đ) Viết chương trình nhập từ bàn phím mảng A có 100 phần tử
cùng kiểu dữ liệu là số thực, đưa ra màn hình các phần tử trong mảng
ĐÁP ÁN ĐỀ KIỂM TRA NĂM HỌC 2021-2022 (ĐỀ SỐ 3) MÔN: TIN HOC
THỜI GIAN: 45 PHÚT
Trang 26ĐA
B D B A C C A B C B B B A B A A A D B C A
II T Ự LUẬN: (3 điểm)
CÂU ĐÁP ÁN THANG
ĐIỂM Câu 1
(2.0đ)
- Cách 1: 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ử>;
- Cách 2: Khai báo 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>; - Trong đó:
+ Kiểu chỉ số thường là một đoạn số nguyên liên tục có dạng n1 n2 (n1<n2; n1, n2 là các hằng hoặc biểu thức)
Trang 27Câu 2 (1.0đ)
I, n: integer; BEGIN
Write(‘Nhap so luong phan tu cua mang: ‘); readln(n);
For i:=1 to n do Begin
Write(‘Nhap phan tu thu ‘,i,’ =’); Readln(a[i]); End; 0.25 0.25 0.25 …………………………………………………
Phòng Giáo dục và Đào tạo Đề thi Giữa kì 2
Năm học 2021 - 2022 Bài thi môn: Tin học lớp 11
Thời gian làm bài: 45 phút (không kể thời gian phát đề)
(Đề số 4) I TRẮC NGHIỆM (7 điểm; mỗi câu 0,3 điểm)
Khoanh tròn vào chữ cái in hoa đứng trước câu trả lời đúng tương ứng với các câu hỏi
Câu 1 trong câu lệnh While <biểu thức điều kiện> Do <Câu lệnh>; câu lệnh
sau từ khóa Do là :
Trang 28D Câu lệnh đơn hoặc ghép và có nhiều hơn 1 câu lệnh làm thay đổi biểu thức điều kiện
Câu 2 Cho biết kết quả của đoạn chương trình sau Dem:=1; While (Dem < 5)
Do Dem:=Dem+1; Writeln('Dem = ',Dem)
A Dem = 4 B Dem = 6 C Dem =5 D Dem = 1
Câu 3 Trong câu lệnh lặp với số lần biết trước, giá trị của biến đếm :
A có kiểu nguyên hoặc thực B không tự động điều chỉnh
C tự động điều chỉnh sau khi thực hiện câu lệnh sau từ khóa Do D có thể là chữ hoặc số
Câu 4 Ðoạn chương trình sau:For i:=1 to 5 do If ((i mod 2) <> 0) then
Write(i,', '); writeln(i); Cho kết quả là A 1, 3, 5, 5
B 2, 4 C 1, 3 D 1, 3, 5
Câu 5 Trong câu lệnh lặp for - đo khẳng định nào sau đây là sai
A Giá trị đầu <= giá trị cuối B Biến đếm là biến đơn, thường có kiểu nguyên
C Câu lệnh sau Do phải có câu lệnh làm thay đổi giá trị của biến đếm D Câu lệnh sau Do là câu lệnh đơn hoặc ghép
Câu 6 Cho S là một xâu bất kỳ Đoạn chương trình sau có chức năng gì For
Trang 29A đáp án khác B báo lỗi
C khơng có chức năng gì D chuyển đổi các ký chữ cái trong xâu S thành chữ in hoa
Câu 7 Trong ngơn ngữ lập trình Pascal muốn chuyển đổi xâu S từ chữ thường
sang chữ in hoa ta dùng: A Pos(S) B Tất cả đều sai C Length(S); D Upcase(S);
Câu 8 Trong câu lệnh For <biến đếm:=giá trị đầu> To <giá trị cuối> Do <câu
lệnh>; thì <biến đếm> phải có giá trị như thế nào? A là biến đơn, thường có kiều nguyên B là biến đơn, có kiểu dữ liệu là kiểu thực
C có giá trị đầu lớn hơn giá trị cuối
D là biến đơn, thường có kiểu dữ liệu là nguyên hoặc thực
Câu 9 Để tìm ước số chung lớn nhất của 2 số nguyên dương a, b ta dùng cấu
trúc lặp:
A Có thể dùng While - Do hoặc For - Do B Chỉ có thể dùng cấu trúc lặp While - Do
C Chỉ có thể dùng cấu trúc lặp For - Do D Đáp án khác
Câu 10 Trong ngơn ngữ lập trình Pascal, cho 2 xâu s1:= 'abd'; s2:='abcde'
khi so sánh 2 xâu đáp án nào là đúng A đáp án khác
Trang 30C s1 > s2 D s2 > s1
Câu 11 Cho mảng B một chiều, đoạn chương trình sau làm gì?
S: = 0; For i:= 1 to N do If ((B[i] mod 2 ) < > 0) and (B[i] mod 3) = 0 then S:= S + B[i];
A Tính tổng các phần tử có giá trị là chẵn và bội của 3 B Tính tổng các phần tử có thứ tự là lẽ và chia hết cho 3
C Tính tổng các phần tử có giá trị là lẽ và bội của 3 D Tính tổng các phần tử có giá trị là lẽ là ước của 3
Câu 12 Ðoạn chương trình sau cho kết quả gì? T:=0; for i:=1 to n do if (i mod
3=0) then T:=T+i*i;
A Tính tổng bình phương các số là bội của 3 từ 1đến n B Tính tổng các số chia hết cho 3 từ 1đến n
C Tính tổng bình phương các số lẽ trong phạm vi từ 1đến n D Tính tổng bình phương các số là ước của 3 từ 1đến n
Câu 13 Với i là các biến nguyên Ðoạn chương trình sau cho kết quả nào
?i:=1; while (i > 5) do i := i +1; write(i,' ');
A 1 2 3 4 5 B 1
C 5
D 2 3 4 5
Câu 14 Cho biết kết quả của đoạn chương trình sau N:=10975; While (N
>=10) Do N := N div 10; Writeln('N = ',N)
Trang 31D N = 1
Câu 15 Trong câu lệnh lặp for - do (dạng lùi), câu lệnh còn được thực hiện
(lặp) khi nào ?
A giá trị cuối > giá trị của biến đếm > giá trị đầu B giá trị cuối > giá trị của biến đếm = giá trị đầu C giá trị cuối > giá trị của biến đếm >= giá trị đầu D giá trị cuối >= giá trị của biến đếm >= giá trị đầu
Câu 16 Cách khai báo mảng nào sau đây là đúng
A Var D : array [ 1.2 20] of integer; B Var C : array [ n m] of real;
C Var A : array [ -10 10] of char; D Var B : array [ 100 20] of byte;
Câu 17 Trong cấu trúc lặp với số lần chưa biết trước khẳng định nào sau đây
là đúng
A Câu lệnh sau Do phải là câu lệnh đơn
B Câu lệnh sau Do phải có ít nhất một câu lệnh làm thay đổi biểu thức điều kiện
C Câu lệnh sau Do phải là câu lệnh ghép
D Câu lệnh còn được thực hiện (lặp) khi điều kiện có giá trị là sai
Câu 18 Trong kiểu dữ liệu kiểu mảng, khẳng định nào sau đây là sai
A Mảng được đặt tên và mỗi phần tử của nó có một chỉ số B Có 2 cách để khai báo mảng một chiều
C Là một dãy vô hạn các phần tử cùng kiểu D Các phần tử trong mảng có cùng kiểu dữ liệu
Câu 19 Đoạn chương trình sau thực hiện i:=1; S:=0; While (i < N) Do begin
Trang 32A Tính tổng các số lẽ từ 1 đến N -1 B Tính tổng các số chẵn từ 1 đến N
C Tính tổng các số từ 1 đến N D Tính tổng các số lẽ từ 1 đến N
Câu 20 Câu Lệnh While <điều kiện> Do <Câu lệnh> thực hiện như thế nào ?
A Trong khi điều kiện cịn đúng thì câu lệnh sau từ khóa "Do" cịn được thực hiện
B Trong khi điều kiện cịn sai thì câu lệnh sau từ khóa "Do" cịn được thực hiện
C Nếu điều kiện sai thì <câu lệnh> sau từ khóa "Do" được thực hiện
D Nếu điều kiện đúng thì <câu lệnh> sau từ khóa "Do" khơng được thực hiện
Câu 21 Với i,j là các biến nguyên Cho ðoạn chương trình sau: For i:=1 to 3
do For j:=i downto 1 do Write( j -1,' '); Cho kết quả là A 0 1 1 1 1 0
B 0 1 2 3 2 1 0 C 0 1 0 2 1 0 D 0 1 0 3 2 1 0
II TỰ LUẬN: (3,0 điểm)
Câu 1 (3.0 điểm) Viết chương trình nhập từ bàn phím mảng A có 10 phần tử
cùng kiểu dữ liệu là số nguyên Đưa ra màn hình: 1 Mảng A vừa nhập
2 Các phần tử lẻ
ĐÁP ÁN ĐỀ KIỂM TRA NĂM HỌC 2021-2022 (ĐỀ SỐ 4) MÔN: TIN HOC
Trang 33I TRẮC NGHIỆM (7 điểm; mỗi câu 0,3 điểm) Câu 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 ĐA C C C A D D B A A C C A B D D C B C A A C
II TỰ LUẬN: (3 điểm)
CÂU ĐÁP ÁN THANG ĐIỂM
Câu 1 (3.0đ) Program Tinhtong; Uses crt; Const m=10; Var A: array[1 m] of integer; I, n: integer; Tong: longint; BEGIN
Write(‘Nhap so luong phan tu cua mang: ‘); readln(n);
For i:=1 to n do Begin