NEW
Font size
WorksheetsTin 11 - Ôn HK 1
Total questions: 68
Worksheet time: 1hrs 6mins
Chọn câu sai.
program Bai_vi_du;
proram BaiTap;
program Bai-tap1;
Chọn phát biểu đúng nhất:
Kết thúc chương trình chính là end.
Kết thúc đoạn chương trình con là end.
Kết thúc chương trình chính là end;
Tất cả đều đúng.
Từ nào dưới đây là từ khóa dùng để khai báo tên chương trình
program
const
var
uses
Từ nào dưới đây là từ khóa dùng để khai báo biến
char
var
integer
const
Tên nào sau đây là tên dành riêng:
integer
Abs
byte
uses
Trong các tên sau đây tên nào là tên chuẩn:
var
const
real
program
Những tên do người lập trình đặt nào dưới đây là đúng:
A BC
Bai-tap
const
_45AB
Tìm khẳng định sai:
Phần tên chương trình không nhất thiết phải có.
Phần khai báo có thể có hoặc không.
Phần thân chương trình nhất thiết phải có.
Phần thân chương trình có thể có hoặc không
Trong những kiểu dữ liệu dưới đây, chọn kiểu dữ liệu có miền giá trị lớn nhất:
longint
integer
byte
word
Giả sử trong thân chương trình chính ta có: ch:=’a’; ta sẽ khai báo biến ch có kiểu:
byte
word
char
boolean
Giả sử trong thân chương trình chính ta có: a:=2.5; ta sẽ khai báo biến a có kiểu:
integer
real
word
byte
Chọn câu đúng cú pháp:
Var m,n : integer;
x1, x2 : real;
Var m,n= integer;
x1, x2 = real;
Var m,n := integer;
x1, x2 := real;
Var m,n =: integer;
x1, x2 =: real;
Chọn lệnh đúng:
const a = 100;
const a : 100;
Const a := 100;
cons a =100;
Biểu thức nào sau đây có giá trị TRUE :
(2 > 4 div 2) or not (49.5 + 2 < 5)
(78 > 76) and ('B' < 'A')
4*(3+5) < 18 div 4*4
(49.5 + 2 < 5) and (2 < 4 div 2)
Chọn câu lệnh xuất giá trị false
write(4+2 mod 3 = 2 div 3 + 3);
write((10 mod 2)-3 < 9/3);
write(2*3 div 2 < 3 mod 2 * 7);
write(10 div 2 > 3 + 4 mod 3);
Cho khai báo biến
Var x : integer;
a,b : real;
x:= b*a;
x:= 12/2;
b:= 1.0 + 2.0;
a:= ‘1 + 2’;
16) Cho khai báo biến
Var x : integer;
a,b : real;
Chọn lệnh đúng:
x:= b*a;
x:= a+b;
x:= 27/3;
b:= a+x;
Cho khai báo biến:
Var x : integer;
a, b : real;
Chọn lệnh sai:
x:= 4 div 2;
b:= 4 - 1;
x:= 4.0 - 1.0;
b:= a/x;
Biến x khai báo là kiểu integer. Lệnh nào sai:
x := sqrt(49);
x := 10 div 3;
x := abs(-453);
x := 10 mod 4;
Cho khai báo biến:
Var m, n : integer;
x, y : real;
lệnh nào sai:
m := -4;
n := 3.5;
x :=6;
y := +10.5;
Chọn lệnh đúng với khai báo biến:
Var t : char;
t:= ‘Hoa’;
t:= 1;
t:= ‘7’;
t:= “a”;
Giả sử D:=476 mod 5; kết quả của D là
95
2
1
4
Ta có: x:= 7=1; ta sẽ khai báo biến x có kiểu dữ liệu:
real
integer
boolean
Tất cả đều sai.
Ta có: x:= abs(20/3); ta sẽ khai báo biến x có kiểu dữ liệu:
real
integer
word
char
Để xuất (in) ra màn hình ký tự I (sau đó con trỏ xuống đầu dòng dưới)
writeln(I);
writeln(‘I’);
readln(‘I’);
write(‘I’);
Với x là biến kiểu số nguyên. Muốn xuất giá trị của x ra màn hình output, chọn câu nào:
writen(x:5);
write(x:5);
write(x:5:2);
write(‘x’);
Chọn lệnh đúng?
readln(a+b);
writeln(‘Tong :’, a+b);
writen(a+b);
writeln(‘Tong :’, t:=a+b);
Để nhập vào cho biến x một giá trị bất kỳ từ bàn phím ta có thể sử dụng câu lệnh:
readln x ;
read(‘x’);
readln(‘x’);
read(x);
Với x là biến kiểu số thực. Muốn nhập 1 số thực từ bàn phím chọn câu nào:
read (‘x’);
read(nhap so thuc, x);
read(x);
write(‘Nhap so thuc’); read(‘x’);
Cho đoạn chương trình
Var a, b, c:integer;
Begin
a:=7; c:=6;
c:=a*5;
writeln(‘c =’, c-a)
End.
Kết quả xuất trên màn hình:
c = 2835
c = 35-7
c = 28
Tất cả đều sai.
Lệnh nào sau đây in ra màn hình số lớn nhất giữa a và b:
if a > b then write(b) else write(a);
if a > b then write(a) else write(b);
if a > b then writeln(b) else writeln(b);
if a > b then Readln(a) else Readln(b);
Kiểm tra nếu ba số a, b, c đều lớn hơn 1 thì in số 1, chọn lệnh nào:
if (a>1) and (b>1) and (c>1) then write(‘1’);
if a>1 and b>1 and c>1 then write(‘1’);
if (a>1) or (b>1) or (c>1) then write(‘1’);
if a,b,c > 1 then write(‘1’);
Lệnh nào sau đây in ra màn hình giá trị a nếu a≠0:
if a <>0 then write(a);
if a ><0 then write(a);
if a#0 then writeln(a);
if a ><0 then write(‘a’);
Khi chạy chương trình:
Var a,b,c: integer;
Begin
a:=2; b:=4; c:=6;
if(b<a) then c:= (a+c)*2
else if (b=a) then c:= a*b+2
else c:=2*a+b;
end.
Giá trị sau cùng của c là:
16
8
10
6
Khi chạy chương trình:
Var a, b, c, n : integer;
begin
n := 546;
a := n div 100;
b := (n mod 100) div 10;
c := n mod 10 +2;
write(a+b+c);
end.
Kết qua in ra:
7
546
15
17
Để xuất nhiều lần ký tự A ta có thể sử dụng câu lệnh:
for i:=1 to n/2 then write(‘A’);
for i:=1 to n div 2 then write(‘A’);
for i:=1 to n:2 then write(‘A’);
Khi ta thực hiện câu lệnh sau thì trên màn hình hiện ra gì
FOR i:=4 TO 3 DO write(i);
3
4
43
Không hiện ra gì cả
Cho S và i biến kiểu nguyên. Khi chạy đoạn chương trình:
S:= 0; i:= 1;
while i<= 6 do
begin
S:= S + i;
i:= i + 2;
end;
Giá trị sau cùng của S là :
6
11
9
0
Cho chương trình :
Var A : Real;
Begin
. . .
While A = 0 do
begin
write ('nhap A # 0:');
Readln (A);
end;
End.
Để lệnh Readln(A) không thực hiện lần nào, phải điền vào chỗ ... lệnh nào trong các lệnh dưới đây?
A:= 0;
A:= 1;
A= -1;
A <> 0;
Trong Pascal với khai báo như sau:
Type mang=array[1..100] of integer;
Var a,b:mang;
c:array[1..100] of real;
Câu lệnh nào dưới đây đúng:
a:=b;
b:=c;
c:=b;
a:=c;
Chọn đáp án ghép phù hợp nhất. Ngôn ngữ lập trình là:
Phương tiện để soạn thảo văn bản trong đó có chương trình.
Ngôn ngữ Pascal hoặc C.
Phương tiện diễn đạt thuật toán để máy tính thực hiện công việc.
Phương tiện diễn đạt thuật toán.
Con người chỉ dẫn cho máy tính thực hiện công việc thông qua?
Các thao tác trên chuột
Các lệnh
Các hoạt động.
Các thao tác trên bàn phím
Chương trình dịch không có khả năng nào trong các khả năng sau ?
Phát hiện được lỗi ngữ nghĩa
Phát hiện được lỗi cú pháp
Thông báo lỗi cú pháp
Tạo được chương trình đích
Phát biểu nào dưới đây là hợp lí nhất ?
Biến là đại lượng nhận giá trị trước khi chương trình thực hiện .
Biến là đại lượng được đặt tên và có giá trị thay đổi trong quá trình thực hiện chương trình.
Biến có thể lưu trữ nhiều loại giá trị khác nhau.
Biến có thể đặt hoặc không đặt tên gọi.
Trong các cách khai báo Hằng sau đây, cách khai báo nào là đúng ?
Const Pi = 3,14;
Const = Pi;
Const Pi = 3.1;
Pi = 3.14
Phát biểu nào sau đây là đúng về tên chuẩn ?
Tên chuẩn là tên do người lập trình đặt
Tên chuẩn là tên đã được NNLT qui định dùng với ý nghĩa riêng xác định, không được sử dụng với ý nghĩa khác.
Tên chuẩn là tên đã được NNLT qui định dùng với ý nghĩa riêng xác định, có thể được định nghĩa lại.
Tên chuẩn là các hằng hay biến.
Hãy chọn biểu diễn tên đúng trong những biểu diễn sau
‘*****’
-tenkhongsai
(bai_tap)
Tensai
Chỉ sử dụng 2 chữ cái A và B , người ta có thể viết được mấy tên đúng có độ dài không quá 2 chữ cái
2
4
6
8
Các tên sau đây, nhóm nào là các từ khoá?
End, Mod, Var, Readln;
Begin, Uses, Write; Or
Begin, Program, Uses, And.
Begin, Readln, Or, Uses
Trong chương trình viết bằng Pascal nội dung trong phần chú thích được:
Chương trình dịch không dịch.
Chương trình dịch có dịch nhưng không thi hành.
Chương trình dịch có dịch và thi hành bình thường như các câu lệnh.
Chương trình dịch không hiểu
Chọn câu sai. Trong một chương trình Pascal, có thể không có:
Phần thân chương trình.
Phần khai báo biến.
Phần đầu chương trình.
Phần khai báo hằng.
Trong Pascal, khai báo nào sau đây là đúng?
Var tb: real;
Type 4hs: integer;
const x: real;
Var R = 30;
<AL1> Để biên dịch chương trình ta sử dụng tổ hợp nào:
a. Ctrl – F9
b.
c. F9
d.
Ctrl – F9
Alt – F8
F9
Ctrl – Shitf – F9
Biểu thức toán học (a2 + b)(1 + c)3 được biểu diễn trong Pascal như thế nào?
(a*a + b)(1+c)(1 + c)(1 + c)
(a.a + b)(1 + c)(1 + c)(1 + c)
(a*a + b)*(1 + c)*(1 + c)*(1 + c)
(a2 + b)(1 + c)3
Trong NNLT Pascal, với câu lệnh như sau: Writeln (‘KQ là:’, a); cái gì sẽ in ra màn hình?
Ket qua la: a
Không đưa ra gì cả
KQ la a
KQ la: <giá trị của biến a>
Cho x, y là hai biến số thực, lệnh gán nào sau đây đúng:
Readln(x,5);
Readln(‘ x=’,x);
Readln(x;5:2);
Readln(x,y);
Xác định giá trị của biểu thức:
S := (135 div 100) + (135 mod 100) div 10 + (135 mod 10);
S := 4;
S:=9;
S:=6;
S:=10;
Chọn phương án ghép đúng cho phát biểu : câu lệnh IF <biểu thức điều kiện> Then <câu lệnh1> Else <Câu lệnh2>
Thực hiện câu lệnh 1 khi biểu thức điều kiện không đúng
Thực hiện câu lệnh 1 khi biểu thức điều kiện sai
Thực hiện câu lệnh 2 khi biểu thức điều kiện đúng
Thực hiện câu lệnh 2 khi biểu thức điều kiện sai
Câu lệnh IF lồng nhau được sử dụng khi phải lựa chọn một khả năng thỏa mãn trong
Một khả năng
Một trong hai khả năng
Một trong nhiều khả năng
Tất cả đều đúng
Cho biết câu lệnh sau sai ở đâu? IF DTB>5 then Write(‘Đỗ’); Else Write(‘Trựơt’);
Đồng thời viết cả giá trị Đỗ, trượt
Chưa biết giá trị của ĐTB
Có hai dấu chấm phẩy (trong một câu lệnh)
Thừa dấu chấm phẩy (trước từ khóa Else)
Vòng lặp kiểm tra điều kiện trước khi thực hiện công việc là:
For …to…do…
For …downto…do…
While…do…
Repeat…Until…
Biến đếm của vòng lặp với số lần lặp biến trước thường có kiểu
Sô nguyên
Số thực
Ký tự
Logic
Với i là kiểu dữ liệu char. Đoạn chương trình sau in ra kết quả nào?: For i:=’a’ to ‘c’ do write(i);
Chữ cái a, b, c
Chữ cái c, b, a
Bảng chữ cái a..z
Cả ba lựa chọn đều sai
Phát biểu nào dưới đây về kiểu mảng là phù hợp?
Là một tập hợp các số nguyên;
Độ dài tối đa của mảng là 255;
Là một dãy hữu hạn các phần tử cùng kiểu;
Mảng không thể chứa kí tự;
Phát biểu nào sau đây về mảng là không chính xác?
Chỉ số của mảng không nhất thiết bắt đầu từ 1.
Có thể xây dựng mảng nhiều chiều.
Xâu kí tự cũng có thể xem như là một loại mảng.
Độ dài tối đa của mảng là 255.
Mảng table dưới đây chứa bao nhiêu phần tử?
CONST COLUMNS = 3; ROWS = 4;
VAR table : ARRAY [ 0..COLUMNS + 1] of INTEGER;
3
4
5
6
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 giá trị phần tử của mảng trên?
for k := 1 to 16 do write(a[k]);
for k := 16 downto 0 do write(a[k]);
for k:= 0 to 15 do write(a[k]);
for k := 16 down to 0 write(a[k]);
Cho khai báo mảng và đoạn chương trình như sau :
Var a : array[0..50] of real ;
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 ?
Tìm phần tử nhỏ nhất trong mảng;
Tìm phần tử lớn nhất trong mảng;
Tìm chỉ số của phần tử lớn nhất trong mảng;
Tìm chỉ số của phần tử nhỏ nhất trong mảng;
