SỞ GIÁO DỤC VÀ ĐÀO TẠO HÀ NỘI SỞ GIÁO DỤC VÀ ĐÀO TẠO HÀ NỘI CỤM THPT GIA LÂM – LONG BIÊN ĐỀ CHÍNH THỨC ĐỀ THI OLYMPIC NĂM HỌC 2010 2011 MÔN TIN HỌC LỚP 11 Ngày thi 16 tháng 03 năm 2011 Thời gian làm b[.]
Trang 1SỞ GIÁO DỤC VÀ ĐÀO TẠO HÀ NỘI
CỤM THPT GIA LÂM – LONG BIÊN
-
ĐỀ CHÍNH THỨC
ĐỀ THI OLYMPIC NĂM HỌC 2010-2011
MÔN: TIN HỌC- LỚP 11 Ngày thi: 16 tháng 03 năm 2011 Thời gian làm bài: 90 phút.
PHẦN A TRẮC NGHIỆM (8 điểm)
Câu 1: Chương trình viết bằng ngôn ngữ bậc cao có ưu điểm
A Tốc độ thực hiện nhanh hơn so với chương trình được viết bằng ngôn ngữ máy
B Viết dài và mất nhiều thời gian so với chương trình viết bằng ngôn ngữ máy
C Khai thác được tối đa các khả năng của máy
D Ngắn gọn, dễ hiểu, dễ hiệu chỉnh và nâng cấp, không phụ thuộc vào loại máy
Hãy chọn phương án ghép hợp lý nhất
Câu 2: Trong turbo pascal, để lưu 1 chương trình
A Nhấn phím F2 B Nhấn tổ hợp phím Alt+F2
C Nhấn phím F5 D Nhấn tổ hợp phím Alt+F5
Hãy chọn phương án đúng nhất
Câu 3: Trong Turbo Pascal, mở nhiều chương trình một lúc, để chuyển đến một cửa sổ
chương trình khác
A Nhấn F5 B Nhấn F6 C Nhấn F7 D.Nhấn F8
Câu 4: Trong Turbo Pascal, muốn thực thi chương trình đến vị trí con trỏ
Câu 5: Trong Turbo Pascal, để mở cửa sổ Watch theo dõi giá trị các biến
A Nhấn Ctrl+F5 B Nhấn Ctrl+F6 C Nhấn Ctrl+F7 D Nhấn Ctrl+F8
Câu 6: Trong ngôn ngữ lập trình pascal, về mặt cú pháp câu lệnh nào sau đây là đúng với
cấu trúc lặp For có một lệnh con?
A For i:=1 to 100 do a:=a-1; B For i:=1 to 100; a:=a-1;
C For i:=1 to 100 do a:=a-1 D For i:=1 to 100; do a:=a-1;
Câu 7: Trong lập trình Pascal, một học sinh có viết
Var i,n:real;
……
Begin
…
For i:=1 to n do
…
End
Đề thi Olympic cụm Gia Lâm – Long Biên lớp 11 môn Tin học Trang 1/ tổng số 4 trang
Khi thực hiện chương trình, máy báo lỗi Em hãy sửa lại lỗi đó giúp bạn để chương trình không báo lỗi
Trang 2Đề thi Olympic cụm Gia Lâm – Long Biên lớp 11 môn Tin học Trang 2/ tổng số 4 trang
Chương trình đã sửa:
………
………
………
………
………
………
Câu 8: Trong lập trình Pascal, hãy cho biết giá trị của M sau khi thực hiện đoạn chương trình sau với a=10 và b=12? M:=a; If a<b then M:=b; A M=10 B M=12 C M nhận cả hai giá trị D M không nhận gái trị nào Câu 9: Trong lập trình Pascal, hãy cho biết đoạn chương trình sau làm công việc gì? I:=0; T:=0; While I<10000 do Begin T:=T+i; I:=I+12 End; A Tính tổng các số tự nhiên nhỏ hơn hoặc bằng 10000 B Tính tổng các số tự nhiên chẵn nhỏ hơn hoặc bằng 10000 C Tính tổng các số tự nhiên chẵn nhỏ hơn 10000 D Tính tổng các số tự nhiên nhỏ hơn 10000 Câu 10: Trong lập trình Pascal, Về mặt cú pháp câu lệnh nào sau đây là đúng với cấu trúc lặp For có nhiều lệnh con? A For i:=1 to 100 do a:= a-1; b:=a-c; EndFor; C For i:=1 to 100 do a:= a-1; b:=a-c; B For i:=1 to 100 do begin
a:= a-1; b:=a-c; D For i:=1 to 100 do begin
a:= a-1;
b:=a-c;
End;
Trang 3Đề thi Olympic cụm Gia Lâm – Long Biên lớp 11 môn Tin học Trang 3/ tổng số 4 trang
Câu 11: Trong ngôn ngữ lập trình Pascal, về mặt cú pháp câu lệnh nào sau đây là đúng
A Var a:array[A F, D T] of word; C Var a_1:array[1 10,-10 -1] of word;
B var mang2:array[10 1,1 10] of string; D type mang:array(1 10,1 20) of Integer;
Câu 12: Chọn đáp án đúng:
Trong ngôn ngữ lập trình Pascal, với khai báo mảng
A:array[1 10] of Array[1 10] of byte; thì việc truy xuất đến các phần tử như sau:
A A[i],[j]; B A[i][j] C A[i;j] D A[i,j];
Câu 13: Để chuyển biến kí tự c thuộc bảng chữ cái tiếng Anh thành kí tự thường ta viết
lệnh:
A If (c>= ‘A’) and (c<= ‘Z’) then c:= Chr(ord(c)-32);
B If (c>= ‘A’) and (c<= ‘Z’) then c= Chr(ord(c)+32);
C If (c>= ‘A’) and (c<= ‘Z’) then c:= Ord(chr(c)+32);
D c:= Upcase(c);
E Tất cả đều sai
Câu 14 Cho dãy lệnh:
If a[1]>a[2] then write(a[1]:4);
If a[n]>a[n-1] then write(a[n]:4);
For i:=2 to n-1 do
if(a[i]>a[i-1])and(a[i]>a[i+1])then write(a[i]:4);
Chọn đáp án đúng nhất:
A In ra màn hình các số lớn nhất
B In ra màn hình các số nhỏ nhất
C In ra màn hình các cực đại địa phương
D.In ra màn hình các cực tiểu địa phương
E Tất cả đều sai
Câu 15: Cho câu lệnh: For i:= 1 to length(a) do if a[i] = ‘ ’ then delete(a,i,1); writeln(a);
Trong đó ‘ ’ là xâu chứa 1 dấu cách Chọn đáp án đúng:
A Câu lệnh dùng để xoá các dấu cách trong xâu a
B Tạo xâu mới là các dấu cách trong xâu a
C Không thực hiện công việc gì
D Tất cả đều sai
Câu 16: Cho đoạn chương trình sau:
s:= ‘chao’; x:= ‘cac ban’;
Insert(x,s,6);
Giá trị của xâu s sau khi thực hiện lệnh là:
A ‘chao cac ban’
Trang 4Đề thi Olympic cụm Gia Lâm – Long Biên lớp 11 môn Tin học Trang 4/ tổng số 4 trang
B ‘chaocac ban’
C Câu lệnh bị báo lỗi
D Giá trị của S không thay đổi
PHẦN B TỰ LUẬN (12 điểm)
Câu 1: (8 điểm) Viết chương trình đọc vào một xâu (xâu bao gồm chữ cái, chữ số, dấu chấm, dấu phẩy)
- Dòng 1: Chuẩn hoá xâu như sau: Đầu câu viết hoa, dấu chấm, dấu phẩy phải sát với từ đằng trước và cách đằng sau, mỗi từ chỉ cách nhau một dấu cách
- Dòng 2: Hiển thị các chữ số nếu có trong xâu
- Dòng 3: Tính tổng các chữ số nếu có trong xâu
OUTPUT ‘Thi olympic tin hoc 11 Nam hoc 2010-2011’
1120102011
9 (1+1+2+0+1+0+2+0+1+1)
Câu 2: (4 điểm) Viết chương trình nhập vào mảng một chiều gồm n phần tử, các phần tử
của mảng là kiểu số thực, xác định số lượng các phần tử kề nhau mà:
- Cả hai số đều dương
- Cả hai số đều cùng dấu đồng thời số đứng trước có giá trị tuyệt đối lớn hơn số đứng sau
- Cả hai số trái dấu nhau
-Hết -
Cán bộ coi thi không giải thích gì thêm
Họ và tên thí sinh: Số báo danh: