Mọi người làm hộ em ạ
ĐỀ CƯƠNG ÔN TẬP TIN HỌC 8 KÌ II
Năm học 2020 - 2021
I. LÝ THUYẾT
Chọn đáp án đúng trong các đáp án sau.
1. Trong Pascal vòng lặp nào sau là vòng lặp có bước lặp xác định (biết trước).
A. While … do B. Repeat … Until
C. For .. to .. do D. Case.. of
2. Phương án nào dưới đây là khai báo mảng hợp lệ ?
A. mang : array[0..10] of integer; B. mang : array[0..10] : integer;
C. mang : integer of array[0..10]; D. mang : array(0..10) : integer;
3. Cho khai báo sau :
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 := 1 to 16 do write(a[k]); B. for k := 16 downto 0 do write(a[k]);
C. for k:= 0 to 15 do write(a[k]); D. for k := 16 down to 0 write(a[k]);
4. Cho khai báo sau:
Var a : array[0..10] of integer ;
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);
5. Chọn khai báo đúng:
A. Var A: array[1..10] of integer; B. Var A= array[1..10] of integer;
C. Var A:= array[1..10] of integer; D. Var A: array[1,10] of integer;
6. Cho khai báo: Var a : array[0..50] of real; và đoạn chương trình:
k := 0 ;
for i := 1 to 50 do
if a[i] < a[k] then k := i ;
Đoạn chương trình trên thực hiện công việc gì dưới đây ?
A.Tìm phần tử nhỏ nhất trong mảng;
B.Tìm phần tử lớn nhất trong mảng;
C.Tìm chỉ số của phần tử lớn nhất trong mảng;
D.Tìm chỉ số của phần tử nhỏ nhất trong mảng;
7. Cho S va i là biến nguyên. Khi chạy đoạn chương trình:
S:=0;
For i:=1 to 10 do s:=s+i;
Writeln(s);
Kết quả in lên màn hình là:
A. s=11 B. s=55 C. s=100 D. s=101
8. Câu lệnh cho phép ta nhập giá trị của a từ bàn phím là:
A. readln(a); B. Writeln(a);
C. Write(‘nhap gia tri cua a:’); D. Write(a);
9. Câu lệnh lặp với số lần chưa biết trước bắt đầu bằng từ khóa:
A. For B. While C. If D. Var
10. Cho S và i là biến nguyên. Khi chạy đoạn chương trình :
s:=0;
for i:=1 to 3 do s := s + i;
writeln(s);
Kết quả in lên màn hình của S là :
A. 6 | B. 3 | C. 0 | D. 5 |
11. Khai báo biến kiểu mảng nào sau đây là hợp lệ:
A. Var A: array[1.5..10.5] of real; B. Var A: array[1…N] of real;
C. Var A: array[100..1] of integer; D. Var A: array[1..50] of integer;
12. Khi chạy chương trình:
Var S, i, j: Integer;
Begin
S:=0;
for i:= 1 to 3 do
for j:= 1 to 4 do S:=S+1;
End.
Giá trị sau cùng của S là:
A. 4 B. 3 C. 12 D. 0
13. Một số kiểu dữ liệu trong passcal:
A. Integer, real, byte, char… | B. Writeln, readln, integer, begin... |
C. For, while, array, to… | D. While, do, real… |
14. Câu lệnh lặp while…do nào dưới đây là đúng:
A. While i:=10 do S := S+1/i; B. While i > 1 do S = S+1/i;
C. While 10 do S := S+1/i; D. While i do S = S+1/i;
15. Cho khai báo: Var a : array[0..50] of real ; và đoạn chương trình
k := 0 ;
for i := 1 to 50 do
if a[i] > a[k] then k := i ;
Đoạn chương trình trên thực hiện công việc gì dưới đây ?
A. Tìm phần tử nhỏ nhất trong mảng;
B. Tìm phần tử lớn nhất trong mảng;
C. Tìm chỉ số của phần tử lớn nhất trong mảng;
D. Tìm chỉ số của phần tử nhỏ nhất trong mảng;
II. TỰ LUẬN
Câu 1. Viết chương trình nhập n số nguyên từ bàn phím, in dãy số nguyên đó ra màn hình và tìm giá trị lớn nhất trong dãy.
Câu 2. Viết chương trình nhập n số nguyên từ bàn phím, in dãy số nguyên đó ra màn hình và tìm giá trị nhỏ nhất trong dãy.
Câu 3. Viết chương trình nhập một dãy gồm n số thực từ bàn phím. Tính tổng và trung bình cộng các số đó. In kết quả tính được ra màn hình.
Câu 4. Viết chương trình nhập một dãy gồm n số nguyên từ bàn phím, đếm xem có trong đó có bao nhiêu số là số chẵn. Tính tổng các số chẵn đó. In kết quả tính được ra màn hình.
I: Trắc nghiệm
Câu 1:C
Câu 2: A
II: Tự luận
Câu 1:
uses crt;
var a:array[1..100]of integer;
i,n,max:integer;
begin
clrscr;
write('Nhap n='); readln(n);
for i:=1 to n do
begin
write('A[',i,']='); readln(a[i]);
end;
max:=a[1];
for i:=1 to n do
if max<a[i] then max:=a[i];
writeln(max);
readln;
end.
Câu 2:
uses crt;
var a:array[1..100]of integer;
i,n,min:integer;
begin
clrscr;
write('Nhap n='); readln(n);
for i:=1 to n do
begin
write('A[',i,']='); readln(a[i]);
end;
min:=a[1];
for i:=1 to n do
if min>a[i] then min:=a[i];
writeln(min);
readln;
end.
Câu 3:
uses crt;
var a:array[1..100]of integer;
i,n,t:integer;
begin
clrscr;
write('Nhap n='); readln(n);
for i:=1 to n do
begin
write('A[',i,']='); readln(a[i]);
end;
t:=0;
for i:=1 to n do
t:=t+a[i];
writeln('Tong la: ',t);
writeln('Trung binh la: ',t/n:4:2);
readln;
end.
Câu 4:
uses crt;
var a:array[1..100]of integer;
i,n,dem,t:integer;
begin
clrscr;
write('Nhap n='); readln(n);
for i:=1 to n do
begin
write('A[',i,']='); readln(a[i]);
end;
dem:=0;
t:=0;
for i:=1 to n do
if a[i] mod 2=0 then
begin
inc(dem);
t:=t+a[i];
end;
writeln('So so chan la: ',dem);
writeln('Tong cac so chan la: ',t);
readln;
end.