a/ Là các đại lượng có giá trị không thay đổi khi thực hiện chương trình.b/ Dịch và thực hiện từng câu lệnh một, nếu còn câu lệnh tiếp theo thì quá trình này tiếp tục.. c/ Là những đại l
Trang 11/ Chương trình viết bằng chương trình bậc cao không có những đặc điểm nào trong các đặc điểm sau :
a/ Không phụ thuộc vào loại máy, chương trình có thể thực hiện trên nhiều máy
b/ Ngắn gọn, dể hiểu, dễ nâng cấp
c/ Kiểu dữ liệu và cách tổ chức dữ liệu đa dạng, thuận tiện cho mô tả thuật toán
d/ Máy tính có thể hiểu và thực hiện trực tiếp chương trình này
2/ Chương trình dịch không có khả năng nào trong các khả năng sau :
a/ Phát hiện được lỗi ngữ nghĩa
b/ Phát hiện được cú pháp
c/ Thông báo lỗi cú pháp
d/ Tạo được chương trình đích
3/ Nhận biết tên đúng sai trong Pascal
a/ Bai tap
b/ PT_B2
c/ Const
d/ Vi-du
4/ Cách đặt tên trong Pascal là :
a/ Chiều dài tối đa là 127 gồm chữ cái chữ số được bắt đầu bằng chữ cái hoặc chữ số b/ Chiều dài tối đa là 127 gồm chữ cái chữ số và dấu gạch dưới được bắt đầu bằng chữ cái hoặc chữ số
c/ Chiều dài tối đa là 127 gồm chữ cái chữ số và dấu gạch dưới được bắt đầu bằng dấu gạch dưới hoặc chữ số
d/ Chiều dài tối đa là 127 gồm chữ cái chữ số và dấu gạch dưới được bắt đầu bằng dấu gạch dưới hoặc chữ cái
5/ Tên dành riêng là :
a/ c/ Chiều dài tối đa là 127 gồm chữ cái chữ số và dấu gạch dưới được bắt đầu bằng dấu gạch dưới hoặc chữ số
b/ Được dùng với ý nghĩa riêng không được dùng với ý nghĩa khác
c/ Dùng với ý nghĩa nhất định, khi cần dùng với ý khác thì phải khai báo
d/ Cần khai báo trước khi sử dụng
6/ Tên chuẩn là :
a/ c/ Chiều dài tối đa là 127 gồm chữ cái chữ số và dấu gạch dưới được bắt đầu bằng dấu gạch dưới hoặc chữ số
b/ Được dùng với ý nghĩa riêng không được dùng với ý nghĩa khác
c/ Dùng với ý nghĩa nhất định, khi cần dùng với ý khác thì phải khai báo
d/ Cần khai báo trước khi sử dụng
7/ Tên do người lập trình đặt :
a/ Chiều dài tối đa là 127 gồm chữ cái chữ số và dấu gạch dưới được bắt đầu bằng dấu gạch dưới hoặc chữ số
b/ Được dùng với ý nghĩa riêng không được dùng với ý nghĩa khác
c/ Dùng với ý nghĩa nhất định, khi cần dùng với ý khác thì phải khai báo
d/ Cần khai báo trước khi sử dụng
8/ Biên dịch là :
Trang 2a/ Là các đại lượng có giá trị không thay đổi khi thực hiện chương trình.
b/ Dịch và thực hiện từng câu lệnh một, nếu còn câu lệnh tiếp theo thì quá trình này tiếp tục
c/ Là những đại lượng được đặt tên, dùng để lưu trữ giá trị và giá trị của nó có thể thay đổi trong quá trình thực hiện chương trình
d/ Dịch toàn bộ chương trình nguồn thành một chương trình đích có thể thực hiện trên máyvà có thể sử dụng lại khi cần thiết
9/ Thông dịch là :
a/ Là các đại lượng có giá trị không thay đổi khi thực hiện chương trình
b/ Dịch và thực hiện từng câu lệnh một, nếu còn câu lệnh tiếp theo thì quá trình này tiếp tục
c/ Là những đại lượng được đặt tên, dùng để lưu trữ giá trị và giá trị của nó có thể thay đổi trong quá trình thực hiện chương trình
d/ Dịch toàn bộ chương trình nguồn thành một chương trình đích có thể thực hiện trên máyvà có thể sử dụng lại khi cần thiết
10/ Biến là :
a/ Là các đại lượng có giá trị không thay đổi khi thực hiện chương trình
b/ Dịch và thực hiện từng câu lệnh một, nếu còn câu lệnh tiếp theo thì quá trình này tiếp tục
c/ Là những đại lượng được đặt tên, dùng để lưu trữ giá trị và giá trị của nó có thể thay đổi trong quá trình thực hiện chương trình
d/ Dịch toàn bộ chương trình nguồn thành một chương trình đích có thể thực hiện trên máyvà có thể sử dụng lại khi cần thiết
11/ Hằng là :
a/ Là các đại lượng có giá trị không thay đổi khi thực hiện chương trình
b/ Dịch và thực hiện từng câu lệnh một, nếu còn câu lệnh tiếp theo thì quá trình này tiếp tục
c/ Là những đại lượng được đặt tên, dùng để lưu trữ giá trị và giá trị của nó có thể thay đổi trong quá trình thực hiện chương trình
d/ Dịch toàn bộ chương trình nguồn thành một chương trình đích có thể thực hiện trên máyvà có thể sử dụng lại khi cần thiết
12/ Chương trình viết trên ngôn ngữ bậc cao là :
a/ Là các đại lượng có giá trị không thay đổi khi thực hiện chương trình
b/ Dịch và thực hiện từng câu lệnh một, nếu còn câu lệnh tiếp theo thì quá trình này tiếp tục
c/ Phải được chuyển đổi thành chương trình trên ngôn ngữ máy mới có thể thực hiện d/ Nạp trực tiếp vào bộ nhớ và thực hiện ngay
13/ Hằng gồm :
a/ Hằng xâu, logic, ngữ nghĩa
b/ Hằng xâu, số học, cú pháp
c/ Hằng xâu, logic , ký tự
d/ Hằng logic, ký tự, ngữ nghĩa
14/ Hằng là xâu là hằng :
a/ Có 2 giá trị : TRUE và FLASE
Trang 3b/ Được đặt trong cặp dấu (*… *)
c/ Được đặt trong cặp dấu nháy đơn
d/ Gồm các số thực và số nguyên
15/ Hằng logic là hằng :
a/ Có 2 giá trị : TRUE và FLASE
b/ Được đặt trong cặp dấu (*… *)
c/ Được đặt trong cặp dấu nháy đơn
d/ Gồm các số thực và số nguyên
16/ Ghi chú không thực hiện công việc nào sau đây ?
a/ Làm rõ nội dung khi lập trình
b/ Chương trình dịch và thực hiện các lệnh được ghi trong ghi chú
c/ Đặt trong dấu (* và *)
d/ Đặt trong { và }
17 / Hãy chọn câu sai
a/ 4+6
b/ 6.35E-10
c/ 70,64
d/ 1465
BÀI 3 ( CẤU TRÚC CHƯƠNG TRÌNH )
18/ Chương trình được viết bằng ngôn ngữ lập trình bậc cao thường gồm có các thành phần :
a/ Phần khai báo, tên chương trình, phần thân
b/ Tên chương trình, phần thân
c/ Tên chương trình, khai báo thư viện chương trình
d/ Phần khai báo, phần thân
19/ Trong các khai báo tên chương trình hãy chọn khai báo đúng
a/ Program AB-C ;
b/ Program Vi_du ;
c/ Program Vi du ;
d/ Program Vi_du
20/ Cú pháp khai báo hằng nào sau đây là đúng :
a/ Const < Tên hằng > < giá trị hằng>;
b/ Conts < Tên hằng > = < giá trị hằng > ;
c/ Const < Tên hằng > = < giá trị hằng >
d/ Const < Tên hằng > = < giá trị hằng > ;
21/ Giả sử ta có khai báo hằng như sau :
Const tam= 9; (1)
Delta=2,68; (2)
Begin = ‘True ‘; (3)
Thu = True; (4)
Hãy cho biết dòng sai và lý do ?
(1)
(2)
(3)
Trang 422/ Hãy chọn câu phát biểu đúng
a/ Phần thân của chương trình là thành phần quan trọng nhất bắt buộc phải có, nó được đặt trong cặp từ khóa Begin và End
b/ Phần thân của chương trình là thành phần có thể có hoặc có thể không khi viết chương trình
c/ Phần thân của chương trình là thành phần nằm bên ngoài cặp từ khóa Begin và End d/ Phần thân của chương trình là thành phần quan trọng nhất bắt buộc phải có, nó được đặt trong cặp từ khóa Begin … End và được kết thúc bởi dấu chấm ( )
23/ Trong Pascal cung cấp bao nhiêu kiểu dữ liệu chuẩn ?
a/ 7
b/ 6
c/ 4
d/ 3
24/ Giả sử biến p có kiểu dữ liệu là số nguyên tồn tại trong phạm vi từ 10 đến 256 Cách khai báo P nào sau đây là đúng và tốn ít bộ nhớ nhất
a/ Byte
b/ Integer
c/ Longint
d/ Word
25/ Ta có khai báo sau :
Var
a,b,c : integer;
d: Real;
e,f : char;
g: Boolean;
Với khai báo trên thì máy tính sẽ cấp phát bộ nhớ là bao nhiêu byte ?
a/ 15
b/ 17
c/ 20
d/ 23
26/ Hãy chọn cú pháp khai báo biến đúng
a/ Var < danh sách biến > < kiểu dữ liệu > ;
b/ Var < danh sách biến > = < kiểu dữ liệu > ;
c/ Var < danh sách biến > : < kiểu dữ liệu > ;
d/ < Danh sách biến > : < kiểu dữ liệu > ;
27/ Trong các biểu thức sau, biểu thức nào không phải là biểu thức của Pascal :
a/ ( 8 div 5 >=2 ) and ( 8 <=2)
b/ (a+x)(b+y)/2
c/ Int(18.387) >= 10
d/ Not (True)
28/ Thủ tục Read dùng để :
a/ Nhập một giá trị từ bàn phím, con nháy không xuống dòng
Trang 5b/ Nhập một hoặc nhiều giá trị từ bàn phím tùy theo biến của nó, bấm dấu cách để nhập cho biến tiếp theo
c/ Xuất một giá trị ra màn hình
d/ Xuất nhiều giá trị ra màn hình
29/ Thủ tục Readln dùng để
a/ Nhập một giá trị từ bàn phím, con nháy xuống dòng
b/ Nhập một hoặc nhiều giá trị từ bàn phím tùy theo biến của nó, bấm Enter để nhập cho biến tiếp theo
c/ Xuất một giá trị ra màn hình
d/ Xuất nhiều giá trị ra màn hình
30/ Thủ tục Write dùng để :
a/ Đưa dữ liệu ra màn hình, con nháy xuống dòng
b/ Đưa dữ liệu ra màn hình, con nháy không xuống dòng
c/ Nhập dữ liệu từ bàn phím, con nháy xuống dòng
d/ Nhập dữ liệu từ bàn phím, con nháy không xuống dòng
31/ Thủ tục Writeln dùng để :
a/ Đưa dữ liệu ra màn hình, con nháy xuống dòng
b/ Đưa dữ liệu ra màn hình, con nháy không xuống dòng
c/ Nhập dữ liệu từ bàn phím, con nháy xuống dòng
d/ Nhập dữ liệu từ bàn phím, con nháy không xuống dòng
32/ Giả sử biến a được khai báo là Real và có giá trị là 10 thì lệnh Write(a:7:2) đưa kết quả ra màn hình là :
a/ 00
b/ 10
c/ 10.00
d/ 10.0
33/ Tổ hợp phím Ctrl + F9 có chức năng :
a/ Dịch chương trình
b/ Lưu trương trình
c/ Thực hiện chương trình
d/ Mở chương trình
34/ Hãy điền vào khoảng trống
If ……… then ……… ;
35/ Hãy điền vào khoảng trống :
If ……… Then ……… else ……… ;
36/ Hãy điền vào khoảng trống :
While ……… do ……… ;
37/ Hãy điền vào khoảng trống :
For ……… to ……… do ……… ;
38/ Hãy điền vào khoảng trống :
For ……… downto ……… do ……… ;
39/ Hãy cho biết kết quả của đoạn lệnh sau :
A:=8;
If a>0 then
Trang 6A:= a+1;
Else
A:=A+2;
Write(a);
a/ 8
b/ 9
c/10
d/ Chương trình lỗi
40/ Cho biết kết quả của đoạn chương trình N:=5;tong:=0;
For i:=1 to n do
If ( i mod 3=0) then
Tong:=tong+i;
Write(tong);
a/ 5
b/ 15
c/ 3
d/ 10
41/ Cho biết kết quả của đoạn chương trình N:=5;tong:=0;
For i:=n downto 1 do
If ( i mod 3=0) then
Tong:=tong+i;
Write(tong);
a/ 5
b/ 15
c/ 3
d/ 10
42/ Cho biết kết quả của đoạn chương trình N:=5; i:=1; tong:=0;
While (i<=n) then
begin
If ( i mod 3=0) then
I:=i+1;
End;
Write(tong);
a/ 5
b/ 15
c/ 3
d/ 10
43/ Cho biết kết quả của đoạn chương trình i:=5; tong:=0;
While (i>0) then
Trang 7begin
If ( i mod 3=0) then
I:=i-1;
End;
Write(tong);
a/ 5
b/ 3
c/ 15
d/ 10
44/ Hãy chọn cú pháp khai báo đúng trong các khai báo sau :
a/ Var <tên mảng > :< Kiểu dữ liệu>;
b/ Var < tên biến mảng >: [ kiểu chỉ số ] of < kiểu phần tử>;
c/ Var < tên biến mảng >: array [ kiểu chỉ số ] of < kiểu phần tử>;
d/ Var < tên biến mảng >: array [ kiểu chỉ số ] < kiểu phần tử>;
45/ Khi nào sử dụng đến kiểu dữ liệu mảng ?
a/ Khi cần sử dụng các phần tử khác nhau nhưng có cùng kiểu
b/ Khi cần sử dụng các phần tử khác nhau nhưng khác kiểu
c/ Khi cần sử dụng một phần tử rời rạc
d/ Khi cần sử dụng để lưu trữ cho tương lai
46/ Để khai báo một mảng A có 15 phần tử có kiểu phần tử là số nguyên ta khai báo, nhưng mỗi phần tử không vượt quá 5000 :
a/ A :array [1 …15] of byte;
b/ A:array [1 15] of byte;
c/ A:array [1 … 15] of integer;
d/ A:array [ 1 15] of integer;
47/ Giả sử ta có mảng A như sau :
Để có giá trị là 35 ta truy xuất như sau :
a/ 35
b/ A[35]
c/ [35]
d/ A[7]
48/ Hãy cho biết cú pháp khai báo nào sau đây là đúng :
a/ < tên biến > : string[độ dài lớn nhất của xâu ];
b/ Var string[độ dài lớn nhất của xâu ];
c/ Var < tên biến > string[độ dài lớn nhất của xâu ];
d/ Var < tên biến > string[độ dài lớn nhất của xâu ];
49/ Giả sử xâu A là :’ABCD’ khi đó lệnh write(A) có kết quả là :
a/ AB
b/ BC
c/ CD
d/ ABCD
50/ Giả sử xâu A là :’ABCD’ khi đó lệnh write(A[1]) có kết quả là :
Trang 8a/ D
b/ B
c/ A
d/ C
51/ Giả sử : st:=’abcd’; thủ tục Delete(st,2,2); có kết quả là :
a/ ad
b/ cd
c/ bc
d/ bd
52/ Giả sử : st:=’abcd’; thủ tục Insert(‘ab’,st,2); có kết quả là :
a/ abcdab
b/ ababad
c/ ababcd
d/ aabbcd
53/ Giả sử : st:=’Thuan Hoa’; hàm copy(st,7,3); có kết quả là :
a/ Hoa
b/ uan Hoa
c/ n Ho
d/ an Hoa
54/ Giả sử : st:=’Thuan Hoa’; hàm length(st); có kết quả là :
a/ 6
b/ 8
c/ 9
d/ 10
55/ Giả sử : st:=’Thuan Hoa’; hàm Pos(‘m’,st); có kết quả là :
a/ 0
b/ 2
c/ 3
d/ 4
BÀI TẬP
1/ Cho một dãy số bất kỳ gồm n số Hãy viết chương trình tính tổng các số không là bội số của 2 hoặc 3 Với n là một số nguyên dương được nhập từ bàn phím
2/ Hãy tính và tổng của dãy số sau : 1, , , , ,1 1 1 1
2 3 4 n Với n là một số nguyên dương được nhập từ bàn phím
3/ Lập trình tính M= 50
1
1 1
n= n+
∑ sau đó xuất kết quả ra màn hình
4/ Lập trình tính M= 50
n
n n
= +
∑ sau đó xuất kết quả ra màn hình
5/ Viết chương trình tìm n để An >=100.Với A là một số nguyên được nhập từ bàn phím 6/ Viết chương trình tìm X để X3 <= 3000
7/ Viết chương trình tính để thỏa mãn điều kiện 1 1 1 1 0,00325
2 3 4x x x x n<=
Trang 98/ Một con heo có trọng lượng ban đầu có trọng lượng là 5kg Cứ mỗi ngày trọng lượng của heo tăng lên 0.05kg Hỏi sau bao nhiêu ngày thì heo đạt đến trọng lượng vừa lớn hơn hoặc bằng 120kg