Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (155.05 KB, 8 trang )
<span class='text_page_counter'>(1)</span>PHÒNG GIÁO DỤC VÀ ĐÀO TẠO THÀNH PHỐ MỸ THO TRƯỜNG THCS TÂN MỸ CHÁNH. NỘI DUNG ÔN TẬP HKII NĂM HỌC 2016 – 2017 MÔN: TIN HỌC 8. ÔN TẬP HK II TIN HỌC 8 NĂM HỌC 2015-2016 --------------------------------------------------. I./ TRẮC NGHIỆM: Câu 1: Câu lệnh viết đúng cú pháp là: A. While <điều kiện> to <câu lệnh>; B. For <biến đếm>:= <giá trị đầu> to <giá trị cuối> do <câu lệnh>; C. While <điều kiện> to <câu lệnh1> do <câu lệnh 2>; D. While <điều kiện>; do <câu lệnh>; Câu 2: Cú pháp đầy đủ của câu lệnh lặp for là ? A. If (điều kiện) then (câu lệnh); B. For <biến đếm>:=<giá trị đầu> to <giá trị cuối> do <câu lệnh>; C. Var n, i:interger; D. Phải kết hợp cả a, b và c. Câu 3: Hoạt động nào sau đây lặp với số lần nhất định: A. Gọi điện tới lúc có người nhấc máy B.Trong 1 tuần đi tập đàn 4 lần. C. Học cho tới khi thuộc bài D.Nhặt từng cọng rau cho tới khi xong Câu 4: Chọn khai báo hợp lệ: A. Var a,b: array[1..n] of real; C. Var a,b: array[1:n] of real; B. Var a,b: array[1..100] of real; D. Var a,b: array[1…n] of real; Câu 5: Trong ngôn ngữ lập trình Pascal câu lệnh nào sau đây là đúng: A. If a=5 then a:=d+1; else a:=d+2; B. If a=5 then a:=d+1 else a:=d+2; C. If a=5 then a=d+1; else a=d+2; D. If a:=5 then a:=d+1else a:=d+2. Câu 6: Vòng lặp sau thực hiện bao nhiêu lần lặp: For i := 1 to 5 do a := a + 1; A. 3 lần. B. 4 lần. C. 5 lần.. D. 6 lần.. Câu 7: Vòng lặp sau cho kết quả S bằng bao nhiêu: S := 0; For i := 1 to 4 do S := S + 2; A. S = 8 B. S = 10 C. S = 12. D. S = 14. Câu 8: Vòng lặp sau cho kết quả S bằng bao nhiêu: S := 1; For i := 1 to 3 do S := S * 2; A. S = 6 B. S = 8 C. S = 10. D. S = 12. Câu 9: Số lần lặp được tính như thế nào? A. Giá trị đầu – giá trị cuối C. Giá trị cuối – giá trị đầu. B. Giá trị đầu – giá trị cuối + 1 D. Giá trị cuối – giá trị đầu + 1. Câu 10: Trong câu lệnh lặp, kiểu dữ liệu của biến đếm là: A. Real B. String C. Integer Câu 11: 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. Char D. Var.
<span class='text_page_counter'>(2)</span> Câu 12: Vòng lặp sau cho kết quả bằng bao nhiêu: i := 0; T := 0; While i < 3 do begin T := T + 1; i := i + 1; end; A. T = 2 B. T = 3 C. T = 4. D. T = 5. Câu 13: Từ khóa nào sau đây dùng để khai báo biến: A. Uses B. Begin C. Var. D. Writeln. Câu 14: Khai báo biến kiểu mảng nào sau đây là hợp lệ: A. Var A, B: array [1..50] of integer; B. Var A, B: array [1..N] of real; C. Var A: array [100..1] of integer; D. Var B: array[1.5..10.5] of real; Câu 15: Tổ hợp phím nào dùng để lưu tệp? A. Ctrl + P B. Ctrl + A. C. Ctrl + N. D. Câu a,b,c đều sai.. Câu 16: Trong câu lệnh While...do…, nếu điều kiện đúng thì: A. Thực hiện công việc và thoát ra ngoài. D. Thoát khỏi vòng lặp C. Lặp 10 lần. B. Thực hiện công việc và trở lên kiểm tra điều kiện. Câu 17: Hãy cho biết đâu là đoạn lệnh lặp while ... do… để tính tổng S:= 1+2+…+10? A. S:=0; while i<10 DO S:= S+i; B. S:=0; i:= 0; while i<11 DO S:= S+1; i:=i+1; C. S:=0; i:=1 while i DO begin S:= S+i; i:=i+1; end; D. S:=0; i:=1; while i <=10 DO begin S:= S+i; i:=i+1; end; Câu 18: Trong các khai báo mảng dưới đây, những kiểu nào là không hợp lệ? A. var tuoi: array[21..100] of integer; B. var chieucao: array[1.2..50] of real; C. var diem: array[1..50] of real; D.var X: array[5..10] of integer; Câu 19: Đoạn lệnh sau đây sẽ cho kết quả gì? so:=1; While so < 10 do writeln(so); so:=so + 1; A. In ra voâ haïn caùc soá 1, moãi soá treân moät doøng; B. In ra các số từ 1 đến 10; C. In ra các số từ 1 đến 9; D. Không phương án nào đúng Câu 20: Với câu lệnh for <biến đếm>:= <giá trị đầu> to <giá trị cuối> do <câu lệnh>; khi thực hiện ban đầu biến đếm nhận giá trị là 1 sau mỗi vòng lặp biến đếm tăng thêm? a. Một đơn vị B. hai đơn vị C. ba đơn vị D. bốn đơn vị Câu 21: Trong chương trình Pascal sau đây: Var x : integer ; Begin X:= 3 ; If (45 mod 3) =0 then x:= x +2; If x > 10 then x := x +10 ; End. X có giá trị mấy? A) 3 B) 5 C) 15 D)10.
<span class='text_page_counter'>(3)</span> Câu 22: Câu lệnh sau đây cho kết quả như thế nào? For i:=1 to 10 do Writeln(‘A’); A. In dãy số từ 10 đến 1 ra màn hình B. In dãy số từ 1 đến 10 ra màn hình C. In 20 ký tự A ra màn hình D. In 10 ký tự A ra màn hình Câu 23: Trong câu lệnh For ... do…, biến đếm của câu lệnh tăng lên bao nhiêu sau mỗi lần lặp? A. 1 B. 4 C. 2 D. 3 Câu 24: Cú pháp đầy đủ của câu lệnh lặp với số lần biết trước: A. For ... to... do B. For <biến đếm>:=<giá trị cuối> to <giá trị đầu> do <câu lệnh>; C. For ... do D. For <biến đếm>:=<giá trị đầu > to <giá trị cuối > do <câu lệnh>; Câu 25: Chọn phát biểu đúng: A. Lặp vô hạn lần có thể xảy ra ở câu lệnh lặp với số lần biết trước B. Lặp vô hạn lần là lặp 1000 lần C. Lặp vô hạn lần có thể xảy ra ở câu lệnh điều kiện D. Lặp vô hạn lần có thể xảy ra ở câu lệnh lặp với số lần chưa biết trước Câu 26: Cho biết số lần lặp của câu lệnh sau? For i:=1 to 20 do.... A. 21 B. 19 C. 20 D. 22 Câu 27: Chọn câu lệnh đúng: A. x:=1; while x:= 10 do x:=x+5; C. x:=1; while x<10 do x:=x+5;. B. x:=1; while x> 10 do x:x+5; D. x:=10; while x< 10 do x=x+5;. Câu 28: 5! = ? (năm giai thừa) A. 5 B. 10. C. 25. D. 120. Câu 29: Trong câu lệnh For ... do…, sau từ khóa “Do” có hai câu lệnh trở lên ta “gói” chúng trong: A. Begin...readln; B. Begin...and; C. End...Begin D. Begin... end; Câu 30: Nhặt thóc ra khỏi gạo đến khi trong gạo không còn thóc là : A. Lặp 10 lần B. Lặp vô số lần C. Lặp với số lần chưa biết trước D. Lặp với số lần biết trước Câu 31: Nếu tính tổng của các số tự nhiên sao cho tổng của nó nhỏ hơn 100 thì ta dùng điều kiện gì ở câu lệnh While…do… A. While S=100 do... B. While s+100 do... C. While S<=100 do... D. While S>=100 do... Câu 32: Giá trị đầu và cuối của câu lệnh lặp For...do… có kiểu dữ liệu:.
<span class='text_page_counter'>(4)</span> A. Số thực. B. Số nguyên. C. a, b đúng. D. a, b sai. Câu 33: Cho biết ý nghĩa của câu lệnh sau: For i:=1 to 10 do Readln(a[i]); A. In dãy số trong mảng a B. Nhập dãy số cho mảng a C. Nhập giá trị cho biến i D. In giá trị cho biến i Câu 34: Cho biết cú pháp câu lệnh lặp với số lần biết trước? A. For <giá trị cuối> to <giá trị đầu> do <câu lệnh>; B. For <biến đếm> :=<chỉ số đầu> to <chỉ số cuối> do <câu lệnh>; C. While <điều kiện> do <câu lệnh>; D. While <giá trị đầu> then <giá trị cuối> do <câu lệnh>; Câu 35: Chọn phát biểu đúng: A. Một vài trường hợp, ta có thể thay câu lệnh for…to…do… bằng while …do… và ngược lại B. Không thể thay câu lệnh for…do bằng while …do và ngược lại C. Có thể thay câu lệnh for… do và while… do bằng biến mảng D. Mọi trường hợp đều có thể thay câu lệnh for…do bằng while …do và ngược lại Câu 36: Trong câu lệnh while…do… nếu điều kiện sai thì: A. Tiếp tục vòng lặp B. Lặp 1 lần C. Lặp vô hạn lần D. Thoát khỏi vòng lặp Câu 37: Cho biết cú pháp khai báo biến mảng A. <tên mảng>:array [<chỉ số đầu> …. <chỉ số cuối>] of <kiểu dữ liệu>; B. <tên mảng>:array [<chỉ số đầu> .. <chỉ số cuối>] for <kiểu dữ liệu>; C. <tên mảng>:array [<chỉ số đầu>.. <chỉ số cuối>] of <kiểu dữ liệu>; D. <tên mảng>:array [<chỉ số đầu> ... <chỉ số cuối>] of <kiểu dữ liệu>; Câu 38: Hãy cho biết đâu là câu lệnh lặp for ...do… để in 10 ký tự "A": A. For i:=100 to 1 do write(‘A’); B. For i:=1 to 15 do write(‘A’); C. For i:=1.5 to 10.5 do write(‘A’); D. For i:=1 to 10 do write(‘A’); Câu 39: Trong các khai báo mảng dưới đây, kiểu nào là hợp lệ? A. var X: array[10..15] of integer; B. var X: array[1..25.5] of real; C. var X: array[3.2..8.2] of integer; D.var X: array[10..1] of integer; Câu 40: Để đếm có bao nhiêu số lẻ nhỏ hơn hay bằng n ; em chọn đoạn lệnh: C) for i:=1 to n do A) for i:=1 to n do if ( i mod 2) =0 then S:=S + i; if ( i mod 2)<>0 then S:=S + 1; B) for i:=1 to n do D) for i:=1 to n do if ( i mod 2)=0 do S:=S + i ; if ( i mod 2)=0 then S:=i + i; Câu 41: Lần lượt thực hiện các lệnh trong đọan lệnh: a[1]:=2; a[2]:=3; t:=a[1]+a[2]+1; Giá trị của t là: A) t=1 B) t=3 C) t=2 D) t=6 Câu 42: Sau đoạn chương trình X:= 5; If (45 mod 3) = 0 then x:= x + 1; giá trị của biến x là: A. 5 B. 4 C. 6 D. 10.
<span class='text_page_counter'>(5)</span> Câu 43: Cho đoạn chương trình sau: i:=0; j:= 1; While i<6 do begin i:= i+1;j:= j+2; end;write(i,j); Hãy cho biết kết quả của s sau khi chạy chương trình: A. 6 11 B. 3 6 C. 6 13 D.4 2. Câu 44: Phát biểu nào sau đây là đúng: A. Cấu trúc lặp được sử dụng để chỉ thị cho máy tính thực hiện lặp lại một vài hoạt động nào đó cho đến khi một điều kiện nào đó được thoả mãn. b. Chỉ ngôn ngữ lập trình Pascal mới có các câu lệnh lặp để thể hiện cấu trúc lặp. c. Ngôn ngữ Pascal chỉ thể hiện cấu trúc lặp bằng câu lệnh for…do... d. Câu B và C đúng. Câu 45: Trong các câu lệnh Pascal sau, câu nào được viết đúng: a. for i<>1 to 10 do B. for i:=1 to 10 do; c. for i=1 to 10 do d. for i:1 to 10 do Câu 46: Để thoát khỏi chương trình Pascal ta dùng tổ hợp phím: a. Ctrl + X, b. Ctrl+ F9, c. Alt + F9,. D. Alt +X.. Câu 47: Trong các hoạt động dưới đây, đâu là hoạt động lặp với số lần chưa biết trước: a. Mỗi buổi học đúng 5 tiết. b. Mỗi ngày ăn cơm 3 buổi. C. Mỗi ngày phải học bài cho đến khi thuộc. d. Rằm tháng Giêng là Tết Nguyên tiêu. Câu 48: Cho câu lệnh sau: S:=S+1/i ; Cho biết kiểu dữ liệu cần khai báo cho biến S là: a.integer b. byte c. longint D. real Câu 49 : Trong Pascal, khai báo nào sau đây đúng? A. var tb: real; b. var 4hs: integer; c. var r=30; d. const x: real; Câu 50: Em học vẽ hình học động với phần mềm: a. Turbo Pascal B. Geometer's Sketchpad (GSP) c. Sun Times d. Finger Break Out Câu 51: Các câu lệnh sau, câu lệnh nào hợp lệ ? a. For i=1 to 10 do; write (‘a’) B. For i:=1 to 10 do write (‘a’); c. var x:real; begin for x:1 to 10 do write (‘a’); end. Câu 52: Cho đoạn chương trình: J:= 0; For i:= 1 to 5 do J:= j + i; Sau khi thực hiện đoạn chương trình trên, giá trị của biến J bằng bao nhiêu? A. 12 B. 22 C. 15 D. 42 Câu 53: Tính giá trị cuối cùng của b, biết rằng: a:= 3; b:= 5; while a<0 do b:= a + b; a:=a+1; a. b= 8 b. b=3 C. b= 5 d. b= 0.
<span class='text_page_counter'>(6)</span> II./ Bài tập: Dùng ngôn ngữ lập trình Pascal, viết chương trình theo yêu cầu sau: Bài 1. Tính n! (tính tích n số tự nhiên liên tiếp từ 1 đến n). Bài 2. Tính tổng n số tự nhiên liên tiếp đầu tiên. Bài 3. Tìm số lần được lặp và tính tổng các số tự nhiên liên tiếp sao cho tổng đó lớn hơn 100. Bài 4. Viết cửu chương (từ cửu chương 2 -> 9), Bài 5. Nhập dãy số, hiện dãy số. tìm max, min, tính tổng dãy số, sắp xếp tăng dần, giảm dần -----Hết----chương trình minh họa: Bài 1./ Program tinh_giai_thua; Uses crt; Var n,i : integer; P: longint; Begin clrscr; P:=1; Write(‘Vui long nhap mot so n: ’); readln(n); For i:= 1 to n do P:= P * i ; writeln(n, ‘! =’, P); Readln End. Bài 2./ Program tinh_tong; Uses crt; Var n,i : integer; S: longint; Begin clrscr; S:=0; Write(‘Vui long nhap so n can tinh tong: ’); readln(n); For i:= 1 to n do S:= S + i ; writeln(‘Ket qua cua ’,n, ‘so tu nhien dau tien S = ’, S); Readln End. Bài 3./ Program tinh_tong_lon_hon_100;.
<span class='text_page_counter'>(7)</span> Uses crt; Var S,n : integer; Begin clrscr; S:=0 ; n:= 1; While S< 100 do Begin S:= S + n ; n:= n + 1; End; Writeln(‘So n nho nhat de tong > 100 la ’ , n); Writeln(‘Tong cua ’ , n , ‘ so dau tien > 100 la ’ , S); readln End. Bài 4./ Program cuu_chuong_tu_2_den_5; Uses crt; Var x,i : integer; Begin clrscr; Write(‘Vui long nhap cuu chuong: ‘); readln(x); Wrieln; If (x>=2) and (x<=5) then For i:= 1 to 10 do writeln( x, ‘x’, i, ‘=’, x*i) else writeln(‘Ban nhap loi. Vui long nhap lai (cuu chuong tu 2 ->5)’ ); readln End. Bài 5./ Program cuu_chuong_chan_le; Uses crt; Var x,i : integer; Begin clrscr; Write(‘Vui long nhap cuu chuong: ’); readln(x); Writeln; If (x>=2) and (x<=9) and (x mod 2<>0) then For i:= 1 to 10 do writeln( x, ‘x’, i, ‘=’, x*i) else writeln(‘Ban nhap loi. Vui long nhap lai (cuu chuong le moi chay)’ ); readln End..
<span class='text_page_counter'>(8)</span>
<span class='text_page_counter'>(9)</span>