C Quan xác không gian.. DTạo hình không gian.. Câu 8: Cú pháp khai báo biến mảng trong Pascal là: A... Trong Pascal, giả sử x là biến kiểu số nguyên.. PHẦN TỰ LUẬN: 7 điểm Câu 1: 1 điểm
Trang 1Họ và tên:
Môn: tin học 8
Thời gian làm bài: 45 phút;
I TRẮC NGHIỆM : (3 điểm)
Câu 1: Cú pháp của câu lệnh While…do là:
A While <điều kiện> to <câu lệnh1> do <câu lệnh 2>;
B While <điều kiện> to <câu lệnh>;
C While <điều kiện> do <câu lệnh>;
D While <điều kiện>; do <câu lệnh>;
Câu 2: Lệnh lặp nào sau đây là đúng?
A For <biến đếm>:= <giá trị đầu> to <giá trị cuối> do <câu lệnh>;
B For <biến đếm>:= <giá trị cuối> to <giá trị đầu> do <câu lệnh>;
C For <biến đếm>= <giá trị đầu> to <giá trị cuối> do <câu lệnh>;
D For <biến đếm>: <giá trị đầu> to <câu lệnh> do <giá trị cuối>;
Câu 3: Sau khi thực hiện đoạn chương trình sau, giá trị của biến S bằng bao nhiêu:
s:=1;
for i:=1 to 4 do s := s*i;
Câu 4: Chọn khai báo hợp lệ:
A Var a: array[1,100] of integer; B Var a: array[1.5 100.5] of integer;
C Var a: array[1 100] of integer; D Var a: array[1.5,100.5] of integer;
Câu 5: Để đếm có bao nhiêu số lẻ nhỏ hơn hay bằng n ; em chọn đoạn lệnh:
A for i:=1 to n do if ( I mod 2) =0 then S:=S + 1;
B for i:=1 to n do if ( I mod 2)< >0 then S:=S + 1;
C for i:=1 to n do if ( I mod 2)=0 then S:=S + I;
D for i:=1 to n do if ( I mod 2)=1 then S:=S + I ;
Câu 6: Sau khi thực hiện đoạn chương trình sau
s:= 0; for i:= 1 to 3 do s:=s+i; kết quả giá trị s bằng bao nhiêu?
Câu 7:Phần mềm geogebra dùng để ?
A) Luyện gõ nhanh B) Học vẽ hình học C) Quan xác không gian D)Tạo hình không gian
Câu 8: Cú pháp khai báo biến mảng trong Pascal là:
A var <Tên mảng> : array [<chỉ số đầu> <chỉ số cuối>] of <kiểu dữ liệu >;
B var <Tên mảng> : aray [<chỉ số đầu>…<chỉ số cuối>] of <kiểu dữ liệu >;
C var <Tên mảng> : array [<chỉ số đầu>…<chỉ số cuối>] for <kiểu dữ liệu >;
D var <Tên mảng> ; array [<chỉ số đầu> <chỉ số cuối>] of <kiểu dữ liệu >;
Câu 9: Cho các câu lệnh sau hay chỉ ra câu lệnh đúng:
A for i:=1 to 10; do x:=x+1 B for i:=1 to 10 do x:=x+1
C for i:=10 to 1 do x:=x+1 D for i:= 1 to 10 for j:=1 to 10 do x:=x+1
Trang 2
Câu 10: Để tính tổng S=2 + 4 + 6 … + n; em chọn đoạn lệnh:
A For i:=1 to n do if ( i mod 2)=0 then S:=S + i;
B For i:=1 to n do S:= S + i ;
C For i:=1 to n do if ( i mod 2)=1 then S:=S + i;
D for i:=1 to n do if ( i mod 2)<>0 then S:=S + i;
Câu 11 Chọn câu lệnh đúng ?
A) x While x:= 10 do x:= x+5; B) x:=10 While x:= 10 do x:= x+5; C) x While x:= 10 do x:= x+5; D) While x < 10 do x:= x+5;
Câu 12 Trong Pascal, giả sử x là biến kiểu số nguyên Phép gán nào sau đây đúng?
A x:=20.5 B x:=30 C x:= ‘30’ D x:=’Truong THCS’
-II PHẦN TỰ LUẬN: (7 điểm)
Câu 1: (1 điểm) Chương trình sau đây có hợp lệ không? Nếu không hãy chỉnh sửa lại cho
hoàn chỉnh
Program tinhhieu;
Begin
Writeln (‘Nhap sp nguyen duong a: ‘); Readln (a);
Writeln (‘Nhap sp nguyen duong b: ‘); Readln (b);
S:= a - b Writeln (‘Hieu hai so nguyen duong a va b la: ‘,S:2:2) Readln
Var a, b: integer;
S: real;
Câu 2: ( 2 điểm) Viết chương trình in ra số lớn hơn trong hai số (được nhập từ bàn phím) Câu 3: ( 2 điểm) Dữ liệu kiểu mảng là gì? Hãy nêu cách khai báo biến mảng trong Pascal
và các thành phần của nó
Câu 4: (2 điểm) Viết chương trình nhập dãy n số và in ra tổng các số lẻ trong dãy số vừa
nhập
-Hết -bj)
xxcsc -
Trang 3
Bài tập 2.1:
Viết chương trình in ra số lớn hơn trong hai số (được nhập từ bàn phím).
a Hướng dẫn:
- Nhập hai số vào hai biến a, b.
- Nếu a > b thì in a Nếu a <= b thì in b.
- Hoặc: Nếu a > b thì in a Ngược lại thì in b.
b Mã chương trình:
Program SO_SANH1;
uses crt;
var a,b: real;
begin
clrscr;
write('nhap so thu nhat: '); readln(a);
write('nhap so thu hai: '); readln(b);
if a> b then writeln(' So lon la:',a);
if a<= b then writeln(' So lon la:',b:10:2); readln
end.
Hoặc:
Program SO_SANH2;
uses crt;
var a,b: real;
begin
clrscr;
write('nhap so thu nhat: '); readln(a);
write('nhap so thu hai: '); readln(b);
if a> b then writeln(' So lon la:',a:10:2)
else writeln(' So lon la:',b:10:2);
readln
end.
Bài tập 5.2
Viết chương trình nhập dãy n số và in ra tổng các số lẻ trong dãy số vừa nhập.
a Hướng dẫn:
b Mã chương trình:
Program Mang_Tong_Le;
uses crt;
var i,n:byte;
M:array[1 100] of integer;
tong:longint;
begin
write('Nhap so phan tu cua day: ');readln(n); for i:=1 to n do
begin
write('M[',i,']'); readln(M[i]);
end;
tong:=0;
for i:=1 to n do if M[i] mod 2 =1 then tong:=tong+M[i];
write('Tong cac so le trong day la: ',tong);
Trang 4
readln
end.