Full - Trắc nghiệm Tin học 11 (Có đáp án) cập nhật theo giảm tải chương trình Tin học phổ thông. Định dạng file WORD tải về có thể tùy chỉnh và sử dụng ngay.
Trang 1Chương I: MỘT SỐ KHÁI NIỆMCâu 1: Ngôn ngữ lập trình là gì?
A Ngôn ngữ Pascal hoặc C;
B Phương tiện để soạn thảo văn bản trong đó có chương trình;
C Phương tiện diễn đạt thuật toán để máy tính thực hiện công việc;
D Phương tiện diễn đạt thuật toán;
Câu 2: Chương trình dịch là chương trình có chức năng
A Chuyển đổi chương trình được viết bằng ngôn ngữ lập trình bậc cao thành
chương trình thực hiện được trên máy
B Chuyển đổi chương trình được viết bằng ngôn ngữ lập trình Pascal thành
chương trình thực hiện được trên máy
C Chuyển đổi chương trình được viết bằng ngôn ngữ máy thành chương trình
thực hiện được trên máy
D Chuyển đổi chương trình được viết bằng ngôn ngữ lập trình bậc cao thành
chương trình hợp ngữ
Câu 3: Hãy chọn phát biểu sai?
A Các biến đều phải được khai báo và mỗi biến chỉ khai báo một lần
B Chương trình dịch có hai loại: thông dịch và biên dịch
C Sau từ khóa var có thể khai báo nhiều danh sách biến khác nhau
D Một chương trình luôn luôn có hai phần: phần khai báo và phần thân
Câu 4: Các thành phần của ngôn ngữ lập trình là
A Tên dành riêng, tên chuẩn và tên do người lập trình định nghĩa
B Chương trình dịch, bảng chữ cái, cú pháp, ngữ nghĩa
C Bảng chữ cái, cú pháp, ngữ nghĩa
D Chương trình thông dịch và chương trình biên dịch
Câu 5: Hãy chọn phương án ghép sai Ngôn ngữ lập trình bậc cao là ngôn ngữ
A có thể diễn đạt được mọi thuật toán;
B thể hiện thuật toán theo những quy ước nào đó không phụ thuộc vào các máy
tính cụ thể;
C sử dụng từ vựng và cú pháp của ngôn ngữ tự nhiên (tiếng Anh);
Trang 2D mà máy tính không hiểu trực tiếp được, chương trình viết trên ngôn ngữ bậc cao
trước khi chạy phải dịch sang ngôn ngữ máy;
Câu 6: Có mấy loại hằng?
Câu 7: Phát biểu nào dưới đây đúng?
A Trong chế độ thông dịch, mỗi câu lệnh của chương trình nguồn được dịch thành
một câu lệnh của chương trình đích
B Chương trình là dãy các lệnh được tổ chức theo các quy tắc được xác định bởi
ngôn ngữ lập trình cụ thể
C Nếu chương trình nguồn có lỗi cú pháp thì chương trình đích cũng có lỗi
cú pháp
D Mọi bài toán đều có chương trình để giải trên máy tính.
Câu 8: Trong tin học, hằng là đại lượng
A Được đặt tên
B Có thể thay đổi giá trị hoặc không thay đổi giá trị tùy thuộc vào bài toán
C Có giá trị không thay đổi trong quá trình thực hiện chương trình
D Có giá trị thay đổi trong quá trình thực hiện chương trình
Câu 9: Phát biểu nào dưới đây là hợp lí nhất?
A Hằng là đại lượng nhận giá trị trước khi chương trình thực hiện.
B Hằng 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
C Hằng có thể lưu trữ nhiều loại giá trị khác nhau.
D Hằng được chương trình dịch bỏ qua.
Câu 10: Chọn ý kiến đúng trong các ý kiến sau đây:
A Chương trình cho kết quả đúng khi thực hiện đủ 20 test/20 test thì chương trình
đó đúng;
B Khi dịch chương trình không thấy lỗi thì có thể kết luận chương trình là đúng.
C Bộ test với kích thước dữ liệu lớn có nhiều khả năng phát hiện lỗi sai của
chương trình hơn là các bộ test với kích thước dữ liệu nhỏ;
D Chương trình cho kết quả sai khi thực hiện 1 test thì chương trình đó sai;
Trang 3Câu 11: Phát biểu nào dưới đây là hợp lí nhất?
A Biến là đại lượng nhận giá trị trước khi chương trình thực hiện.
B 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
C Biến có thể lưu trữ nhiều loại giá trị khác nhau.
D Biến có thể đặt hoặc không đặt tên gọi.
Câu 12: Hãy chọn biểu diễn hằng đúng trong các biểu diễn sau:
Câu 13: Hãy chọn biểu diễn tên đúng trong những biểu diễn sau
A (bai_tap) B –tenkhongsai C ‘*****’ D Tensai
Câu 14: Chương trình viết bằng hợp ngữ không có đặc điểm nào trong các đặc điểm sau:
A Gần với ngôn ngữ máy
B Sử dụng trọn vẹn các khả năng của máy tính
C Tốc độ thực hiện nhanh hơn so với chương trình được viết bằng ngôn ngữ
bậc cao
D Dễ lập trình hơn so với ngôn ngữ bậc cao
Câu 15: Trong Pascal, các đoạn chú thích được đặt giữa cặp dấu nào?
A [ và ] B { và } C ( và ) D /* và */ Câu 16: Phát biểu nào dưới đây chắc chắn sai?
A Chương trình dịch giúp người lập trình có thể lập trình trên một ngôn ngữ lập
trình gần với ngôn ngữ tự nhiên hơn, do đó giảm nhẹ được nỗ lực lập trình, tăngcường hiệu suất lập trình;
B Chương trình dịch cho phép chuyển chương trình viết bằng một ngôn ngữ lập
trình nào đó sang chương trình trên ngôn ngữ máy để máy có thể thực hiện được màvẫn bảo toàn được ngữ nghĩa của chương trình nguồn;
C Chương trình dịch giúp tìm ra tất cả các lỗi của chương trình;
D Một ngôn ngữ lập trình có thể có cả chương trình thông dịch và chương trình
biên dịch;
Câu 17: Chương trình dịch không có khả năng nào trong các khả năng sau?
Trang 4A Thông báo lỗi cú pháp B Tạo được chương trình đích
C Phát hiện được lỗi ngữ nghĩa D Phát hiện được lỗi cú pháp
Câu 18: Tên nào không đúng trong ngôn ngữ Pascal
Câu 19: Phát biểu nào sau đây chắc chắn sai?
A Không thể viết được chương trình để giải một bài toán nếu như không biết
thuật toán để giải bài toán đó;
B Chương trình là một mô tả thuật toán bằng một ngôn ngữ lập trình;
C Một bài toán có thể có nhiều thuật toán để giải;
D Mọi bài toán đều có thể giải được bằng máy tính;
Câu 20: Khai báo nào sau đây là đúng về tên chuẩn?
A 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
B Tên chuẩn là các hằng hay biến
C Tên chuẩn là tên do người lập trình đặt
D 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
Câu 21: Phát biểu nào dưới đây là đúng?
A Một ngôn ngữ lập trình bậc cao có thể có nhiều chương trình dịch khác nhau;
B Mỗi ngôn ngữ lập trình bậc cao đều có đúng một chương trình dịch;
C Máy tính chỉ nhận biết được kí tự 0 và kí tự 1 nên chương trình bằng ngôn ngữ
máy cũng phải được dịch sang mã nhị phân;
D Chương trình dịch gồm hợp dịch, thông dịch, biên dịch;
Câu 22: Phát biểu nào dưới đây là đúng?
A Ngoài bảng chữ cái, cú pháp, ngữ nghĩa, một ngôn ngữ lập trình còn có các quy
tắc để khai báo biến, hằng,…;
B Chương trình có lỗi cú pháp có thể được dịch ra ngôn ngữ máy nhưng không
thực hiện được;
C Ngoài bảng chữ cái, có thể dùng các kí tự thông dụng trong toán học để viết
chương trình;
Trang 5D Cú pháp là bộ quy tắc dùng để chương trình;
Câu 23: Hợp ngữ là ngôn ngữ
A không viết bằng mã nhị phân, được thiết kế cho một số loại máy có thể chạy
trực tiếp dưới dạng kí tự
B mà máy tính có thể thực hiện được trực tiếp không cần dịch;
C có các lệnh được viết bằng kí tự nhưng về cơ bản mỗi lệnh tương đương với
một lệnh máy Để chạy được cần dịch ra ngôn ngữ máy;
D mà các lệnh không viết trực tiếp bằng mã nhị phân;
Câu 24: Phát biểu nào sau đây chắc chắn sai?
A Máy tính điện tử có thể chạy các chương trình;
B Mọi người sử dụng máy tính đều phải biết lập chương trình;
C Một bài toán có thể có nhiều thuật toán để giải;
D Để giải bài toán bằng máy tính phải viết chương trình mô tả thuật toán giải
bài toán đó;
Câu 25: Phát biểu nào dưới đây chắc chắn sai?
A Lập trình là viết chương trình;
B Lập trình và chương trình là hai khái niệm tương đương, đều là cách mô tả
thuật toán bằng ngôn ngữ lập trình;
C Chương trình chưa chắc là đã đúng nếu cho kết quả đúng với rất nhiều bộ
dữ liệu vào;
D Chương trình được tạo thành từ tổ hợp các câu lệnh và các khai báo cần thiết về
biến, hằng, hàm, … ;
Câu 26: Trong các cách khai báo Hằng sau đây, cách khai báo nào là đúng?
A Const Pi = 3,14; B Const = Pi; C Const Pi = 3.1; D Pi = 3.14
Câu 27: Phát biểu nào dưới đây là hợp lí nhất?
A Tên gọi có thể lưu trữ nhiều loại giá trị khác nhau.
B Tên gọi do người lập trình tự đặt theo quy tắc do từng ngôn ngữ lập trình
xác định
C Tên gọi 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
Trang 6D Tên gọi là đại lượng nhận giá trị trước khi chương trình thực hiện.
Câu 28: Trong ngôn ngữ Pascal, từ khóa CONST dùng để khai báo
A Tên chương trình B Thư viện C Biến D Hằng
Câu 29: Ngôn ngữ lập trình là ngôn ngữ
A diễn đạt thuật toán để có thể giao cho máy tính thực hiện;
B cho phép thể hiện các dữ liệu trong bài toán mà các chương trình sẽ phải xử lí;
C dưới dạng nhị phân để máy tính có thể thực hiện trực tiếp;
D có tên là “ngôn ngữ thuật toán” hay còn gọi là “ngôn ngữ lập trình bậc cao” gần
với ngôn ngữ toán học cho phép mô tả cách giải quyết vấn đề độc lập với máy tính;
Câu 30: Ngôn ngữ máy là
A Diễn đạt thuật toán để có thể giao cho máy tính thực hiện;
B Bất cứ ngôn ngữ lập trình nào mà có thể diễn đạt thuật toán để giao cho máy
tính thực hiện
C Ngôn ngữ để viết các chương trình mà mỗi chương trình là một dãy lệnh máy
trong hệ nhị phân;
D Các ngôn ngữ mà chương trình viết trên chúng sau khi dịch ra hệ nhị phân thì
máy có thể chạy được;
Câu 31: Bằ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
Câu 32: Phát biểu nào dưới đây là đúng?
A Các ngôn ngữ lập trình đều có chung một bộ chữ cái;
B Cú pháp của một ngôn ngữ lập trình là bộ quy tắc cho phép người lập trình viết
chương trình trên ngôn ngữ đó;
C Mỗi ngôn ngữ lập trình đều có 3 thành phần là bảng chữ cái, cú pháp và ngữ
nghĩa, nên việc khai báo kiểu dữ liệu, hằng, biến,… được áp dụng chung như nhaucho mọi ngôn ngữ lập trình;
D Ngữ nghĩa trong ngôn ngữ lập trình phụ thuộc nhiều vào ý muốn của người lập
trình tạo ra;
Câu 33: Trong ngôn ngữ Pascal, từ khóa USES dùng để khai báo
Trang 7A Tên chương trình B Biến C Hằng D Thư viện
Câu 34: Trong những biểu diễn dưới đây, biểu diễn nào là từ khóa trong Pascal?
Câu 35: Khái niệm nào sau đây là đúng về tên dành riêng?
A Tên dành riêng là tên do người lập trình đặt
B Tên dành riêng 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
C Tên dành riêng là tên đã được NNLT qui định đúng với ý nghĩa riêng xác định,
có thể được định nghĩa lại
D Tên dành riêng là các hằng hay biến
Câu 36: Phát biểu nào dưới đây là hợp lí nhất?
A Biến dùng trong chương trình phải khai báo.
B Biến được chương trình dịch bỏ qua.
C Biến có thể lưu trữ nhiều loại giá trị khác nhau.
D Biến là đại lượng nhận giá trị trước khi chương trình thực hiện.
Câu 37: Phát biểu nào dưới đây là sai khi nói về biên dịch và thông dịch?
A Chương trình dịch của ngôn ngữ lập trình bậc cao gọi là biên dịch còn thông
dịch là chương trình dịch dùng với hợp ngữ;
B Thông dịch lần lượt dịch và thực hiện từng câu lệnh còn biên dịch phải dịch
trước toàn bộ chương trình sang mã nhị phân thì mới có thể thực hiện được;
C Biên dịch và thông dịch đều kiểm tra tính đúng đắn của câu lệnh;
D Một ngôn ngữ lập trình có thể có cả chương trình thông dịch và chương trình
biên dịch;
Trang 8
-Chương II: CHƯƠNG TRÌNH ĐƠN GIẢN
Câu 1: Trường hợp nào dưới đây không phải là tên biến trong Pascal?
Câu 2: Thực hiện chương trình Pascal sau đây:
Ta thu được kết quả nào?
Câu 3: Trong NNLT Pascal, để chạy chương trình ta dùng tổ hợp phím
A Alt + F9 B Shift + F9 C Ctrl + F9 D Ctrl + Alt + F9 Câu 4: Trong Pascal, phép toán DIV với số nguyên có tác dụng gì?
A Thực hiện phép chia B Chia lấy phần nguyên
Câu 5: Cấu trúc của chương trình được mô tả như sau:
END.
Trang 9<phần thân>
Câu 6: Cho khai báo biến sau đây (trong Pascal):
Lệnh gán nào sau đây là sai?
Câu 8: Phát biểu nào dưới đây là sai?
A Trong biểu thức số học, cặp ngoặc tròn “(” “)” khi cần thiết được dùng để xác
định trình tự thực hiện phép toán;
B Để tính giá trị biểu thức, các biến và hằng trong biểu thức phải được xác định
giá trị trước;
C Phép toán trong ngoặc được thực hiện trước Trong dãy các phép toán không
chứa ngoặc nếu một toán hạng có thể tham gia vào hai phép toán ở hai mức với haimức ưu tiên khác nhau thì toán hạng sẽ tham gia vào phép toán có mứa ưu tiên hơn;ngược lại nếu hai phép toán cùng mức ưu tiên thì toán hạng sẽ tham gia vào phéptoán bên trái (quy định của nhiều trình biên dịch)
D Phép toán được thực hiện theo thứ tự từ trái qua phải;
Câu 9: Cho x là biến thực đã được gán giá trị 12.41235 Để thực hiện lên màn hình nội dung “x=12.41” cần chọn câu lệnh nào sau đây?
Trang 10A người lập trình biết phạm vi giá trị cần lưu trữ;
B người lập trình biết có các phép toán nào có thể tác động lên dữ liệu;
C người lập trình không cần đặt thêm các kiểu dữ liệu khác;
D người lập trình biết dung lượng bộ nhớ cần thiết để lưu trữ;
Câu 12: Cho chương trình:
Var x,y: real;
D ( 4 > 2 ) and not( 4 + 2 < 5 ) or ( 2 > 4 div 2 );
Câu 14: Trong Pascal, phép toán MOD với số nguyên có tác dụng gì?
A Chia lấy phần nguyên B Chia lấy phần dư
Trang 11Câu 15: Chọn câu phát biểu hợp lí nhất?
A Khai báo hằng thường được sử dụng cho những giá trị không đổi và xuất hiện
nhiều lần trong chương trình;
B Biến đơn là biến chỉ nhận những giá trị không đổi và xuất hiện nhiều lần trong
chương trình;
C Khai báo hằng thường được sử dụng cho một giá trị tại mỗi thời điểm thực hiện
chương trình;
D Trong Pascal, tất cả các biến trong chương trình đều phải có giá trị không đổi và
xuất hiện nhiều lần trong chương trình;
Câu 16: Cho một chương trình còn lỗi như sau:
Tìm kết luận đúng nhất về lỗi của chương trình trong các kết luận sau:
C Thiếu Begin và không khai biến d D Không có END.
Câu 17: Phát biểu nào dưới đây là sai?
A Hai biến cùng một phạm vi hoạt động (ví dụ như cùng trong một khai báo var)
không được trùng tên;
B Trong Pascal các biến cùng kiểu có thể được khai báo trong cùng một danh sách
biến, các biến cách nhau bởi dấu phẩy;
C Cách khai báo biến trong ngôn ngữ lập trình khác nhau có thể khác nhau;
D Kiểu dữ liệu của biến phải là kiểu dữ liệu chuẩn;
Câu 18: Câu lệnh nào sau đây là khai báo hằng trong Pascal
C Const int max = 50; D Const max 50;
Var
A, b, c: real ;A:= 1; b:= 1; c:= 5 ;d:= b*b – 4*a*c ;writeln(‘d = ’,d);
END.
Trang 12Tài liệu ôn tập TIN HỌC 11
Chọn câu phát biểu hợp lí nhất?
A Khai báo hằng thường được sử dụng cho một giá trị tại mỗi thời điểm thực hiện
chương trình;
B Trong Pascal, tất cả các biến trong chương trình đều phải có một giá trị tại mỗi
thời điểm thực hiện chương trình;
C Khai báo hằng còn xác định cả kiểu của hằng;
D Khai báo hằng còn xác định cả đặt tên và khai báo cho chương trình dịch biết để
lưu trữ và xử lí;
Câu 20: Xét chương trình Pascal cho khung dưới đây:
Chọn phát biểu sai trong các phát biểu dưới đây:
A Khai báo tên chương trình là vi du B Thân chương trình có hai câu lệnh
C Chương trình không có khai báo hằng D Khai báo tên chương trình là vi_du
Câu 21: Cho x, y, z là ba biến nguyên Cách nhập giá trị nào sau đây là sai khi muốn nhập giá trị 3, 4, 5 cho ba biến này từ bàn phím bằng câu lệnh readln(x,y,z);?
A Gõ 3, 4, 5 sau đó nhấn phím Enter (giữa hai số liên tiếp gõ dấu phẩy);
B Gõ 3 sau đó nhấn phím Tab rồi gõ 4 sau đó nhấn phím Tab rồi gõ 5 sau đó nhấn
phím Enter;
C Gõ 3 sau đó nhấn phím Enter rồi gõ 4 sau đó nhấn phím Enter rồi gõ 5 sau đó
nhấn phím Enter;
D Gõ 3, 4, 5 sau đó nhấn phím Enter (giữa hai số liên tiếp gõ một dấu cách);
Câu 22: Chọn phát biểu đúng trong các phát biểu sau:
A Quy định về phạm vi giá trị và kích thước bộ nhớ lưu trữ một giá trị của các
kiểu dữ liệu chuẩn trong mọi ngôn ngữ lập trình là như nhau;
BEGIN
Writeln(‘Xin chao cac ban’);
Writeln(‘Moi cac ban lam quen voi Pascal’);
END.
Trang 13B Mọi ngôn ngữ lập trình đều có các kiểu dữ liệu chuẩn là: kiểu nguyên, kiểu
thực, kiểu kí tự, kiểu lôgic;
C Dữ liệu kiểu byte có 256 giá trị từ 0, 1, 2, …, 255;
D Dữ liệu kiểu kí tự chỉ có 256 giá trị;
Câu 23: Hàm cho giá trị bằng bình phương của x là:
Câu 24: Chọn câu đúng trong các câu sau:
A Dòng khai báo tên chương trình cũng là một dòng lệnh;
B Trong phần khai báo, nhất thiết phải khai báo tên chương trình để tiện ghi nhớ
nội dung chương trình;
C Ngôn ngữ lập trình nào có hệ thống thư viện càng lớn thì càng dễ viết chương
trình;
D Để sử dụng các chương trình lập sẵn trong các thư viện do ngôn ngữ lập trình
cung cấp, cần khai báo các thư viện này trong phần khai báo;
Câu 25: Biểu thức: 25 div 3 +(5 / 2) * 3 có giá trị là:
Câu 27: Cho các gợi ý về khai báo biến như sau:
Nên đặt tên biến sao cho gợi nhớ đến ý nghĩa của biến đó
Không nên đặt tên biến quá ngắn
Không nên đặt tên biến quá dài, dễ mắc lỗi khi gõ tên biến trong chương trình
Khi khai báo biến cần chú ý đến phạm vi giá trị của nó để chọn kiểu biến chophù hợp
Có bao nhiêu gợi ý đúng?
A 4 gợi ý đúng; B 3 gợi ý đúng; C 1 gợi ý đúng; D 2 gợi ý đúng;
Trang 14Câu 28: Trong bài toán giải phương trình bậc hai: ax 2 + bx + c = 0 ( a ≠ 0 ), có thể chọn đặt tên các biến tương ứng cho các đại lượng: hệ số của x 2 , hệ số của x,
hệ số tự do, biệt số delta = b 2 - 4*a*c, hai nghiệm (nếu có) là x1, x2 là:
A a, b, c, delta, x1, x2 ;
B hs1, hs2, hs3, bs, n1, n2;
C heso_xbingphuong, heso_x, bietso_delta, nghiem_thu_nhat, nghiem_thu_hai;
D hs_a, hs_b, hs_c, bietso_delta, nghiem_x1, nghiem_x2;
Câu 29: Cho x là biến đã khai báo kiểu thực Sau khi thực hiện hai câu lệnh sau:
thì kết quả dạng nào sẽ xuất hiện trên màn hình trong những dạng kết quả sau?
Câu 30: Trường hợp nào sau đây không phải là lệnh gán trong Pascal?
A a:= a*2 ; B cd:= 50 ; C a + b:= 1000 ; D a:= 10 ;
Câu 31: Biến X có thể nhận các giá trị 1; 100; 150; 200 và biến Y có thể nhận các giá trị 1; 0,2; 0,3; 1,99 Khai báo nào trong các khai báo sau là đúng?
C Var X: real; Y: byte; D Var X: BYTE; Y: real;
Câu 32: Biểu thức: 25 mod 3 + 5 / 2 * 3 có giá trị là:
Câu 33: Để thực hiện gán giá trị 10 cho biến X Phép gán nào sau đây là đúng?
Câu 34: Trong các kiểu dữ liệu sau, kiểu nào cần bộ nhớ lớn nhất
Câu 35: Trong INTEGER và WORD, phạm vi giá trị của kiểu nào lớn hơn?
A Kiểu WORD có phạm vi giá trị nhỏ hơn kiểu INTEGER.
B Kiểu WORD có phạm vi giá trị lớn hơn kiểu INTEGER.
x:= 10 ;Writeln(x:7:2);
Trang 15C Kiểu INTEGER có phạm vi giá trị lớn hơn kiểu WORD.
D Kiểu INTEGER có phạm vi giá trị bằng với kiểu WORD.
Câu 36: Câu lệnh xóa màn hình trong thư viện CRT có dạng:
A Clear screen; B Clear scr; C Clr scr; D Clrscr;
Câu 37: Biểu diễn biểu thức
2 2 (a b) a bc
a c
a b
+ + +
− +
trong NNLT Pascal là
A (a+b) + sqr( sqrt(a) + 2*b*c) / (c – a / (a+b) )
B (a+b) + sqrt(a*a+2*b*c) / ( c – a / (a+b) )
C (a+b) + sqrt( sqr(a) + 2*b*c / c – a / (a+b)
D (a+b) + sqr(a*a+2*b*c) / c – a / (a+b)
Câu 38: Chọn phát biểu sai trong các phát biểu sau:
A Phần thân chương trình nhất thiết phải có;
B Phần khai báo nhất thiết phải có;
C Nói chung, chương trình thường gồm hai phần: phần khai báo và phần thân;
D Phần thân chương trình có thể không chứa một lệnh nào;
Câu 39: Phát biểu nào dưới đây là đúng?
A Biến số không là biểu thức số học;
B Hằng số không là biểu thức số học;
C Cả 3 mệnh đề trên đều sai;
D Chỉ khi hằng số và biến số liên kết với nhau bởi các phép toán;
Câu 40: Cho S là biến có kiểu xâu (String) và y là biến kiểu thực Trong các cách sau đây, khi thực hiện câu lệnh readln(S,y) nhập giá trị cho S = ‘ Tran Van Thong’ và y = 7.5 từ bàn phím, cách nhập nào đúng?
A Gõ “Tran Van Thong 7.5” sau đó nhấn phím Enter;
B Gõ “Tran Van Thong” sau đó nhấn phím Enter rồi gõ “7.5” sau đó nhấn phím
Enter;
C Gõ “Tran Van Thong ” rồi gõ dấu phẩy rồi gõ “7.5” sau đó nhấn phím Enter;
D Gõ “Tran Van Thong 7.5” sau đó nhấn Enter;
Câu 41: X:= Y ; có nghĩa là
A Gán giá trị X cho Y B Gán giá trị Y cho X
Trang 16C So sánh xem X có bằng Y hay không D Ý nghĩa khác
Câu 42: Để biên dịch chương trình trong Pascal ta dùng tổ hợp phím:
Câu 43: biểu thức số học nào sau đây là hợp lệ?
Câu 44: Câu lệnh nào sau đây dùng để in giá trị lưu trong biến x ra màn hình
Câu 45: Khai báo nào sau đây là sai
A Var a, b, c: integer; B Var 1, 2, 3: integer;
C Var x, y, z: real; D Var a1, b2, c3: char;
Câu 46: Chọn câu phát biểu hợp lí nhất?
A Khai báo hằng thường được sử dụng cho đặt tên và khai báo cho chương trình
dịch biết để lưu trữ và xử lí;
B Trong Pascal, tất cả các biến trong chương trình đều phải có giá trị không đổi và
xuất hiện nhiều lần trong chương trình;
C Biến đơn là biến chỉ nhận một giá trị tại mỗi thời điểm thực hiện chương trình;
D Biến đơn là biến chỉ nhận kiểu của hằng;
Câu 47: Trong các hàm sau, hàm nào cho kiểu đối số thực
Câu 48: Chọn phát biểu sai trong các phát biểu sau đây:
A Trong máy tính, không thể chia một số cho số nhỏ tùy ý (tùy ý sát gần giá trị 0);
B Hầu hết các ngôn ngữ lập trình đều có các phép toán số học và phép toán
Trang 17A X:= x; B X:= 12345; C X:= 123,456; D X:= pi*100; Câu 50: Để tính diện tích S của hình vuông có cạnh A với giá trị nguyên nằm trong phạm vi từ 10 đến 100, cách khai báo S nào dưới đây là đúng và tốn ít bộ nhớ nhất.
A Var S: word; B Var S: real; C Var S: longint; D Var S: integer; Câu 51: Chọn câu phát biểu hợp lí nhất?
A Trong Pascal, tất cả các biến trong chương trình đều phải có một giá trị tại mỗi
thời điểm thực hiện chương trình;
B Trong Pascal, tất cả các biến trong chương trình đều phải đặt tên và khai báo
cho chương trình dịch biết để lưu trữ và xử lí;
C Biến đơn là biến chỉ nhận kiểu của hằng;
D Khai báo hằng thường được sử dụng cho kiểu của hằng;
Câu 52: Cho biết kết quả sau khi thực hiện lệnh:
Câu 53: Cú pháp của thủ tục nhập dữ liệu vào từ bàn phím:
A Write(<tênbiến 1>, <tên biến 2>,…, <tên biến n>);
B Readln<tên biến 1>, <tên biến 2>,…, <tên biến n>;
C Readln(<tên hàng 1>, <tên hàng 2>,…,<tên hằng n>);
D Readln(<tên biến 1>, <tên biến 2>,…,<tên biến n>);
Câu 54: Cú pháp của thủ tục xuất dữ liệu ra màn hình:
A Readln(<danh sách kết quả ra>); B Writeln<danh sách kết quả ra>;
C Writeln(<danh sách kết quả ra>); D Writeln(<danh sách kết quả ra>) Câu 55: Để nhập giá trị cho 2 biến a và b ta dùng lệnh:
A Real(a,b); B Write(a,b); C Readln(a,b); D Read(‘a,b’);
Trang 18Câu 56: Xét biểu thức lôgic: (m mod 100 < 10 ) and (m div 100 > 0), với giá trị nào
của m dưới đây biểu thức trên cho giá trị TRUE.
Trang 19.ÔN TẬP CHƯƠNG I - IICâu 1: Cho biểu thức: (a mod 3 = 0) and (a mod 4 = 0) Số a nhận giá trị nào sau đây
thì biểu thức có kết quả là TRUE?
Câu 4: Hãy chọn khai báo biến hợp lệ:
A Var A: Byte B Var A: Byte; C Var A-B-C: Byte; D Var:A,B;
Câu 5: Máy tính có thể trực tiếp hiểu được ngôn ngữ nào?
Câu 6: Trong ngôn ngữ lập trình Free Pascal, Xét đoạn chương trình sau:
Hãy chọn một trong những kết quả sau đây:
Câu 7: Lệnh sau đây làm gì?
d:=10; r:=7;
writeln('Dien tich =',d*r);
A Tất cả đều sai B In ra màn hình: Dien tich =
C In ra màn hình: Dien tich = 70 D In ra màn hình: Dien tich = d*r Câu 8: Khai báo nào trong các khai báo sau là hợp lệ?
A Const n:=10; B Const: n =16; C Const n=15; D Const n: real;
Trang 20Câu 9: Cấu trúc một chương trình được chia làm mấy phần?
Câu 10: Từ khoá nào sau đây dùng để khai báo tên chương trình
Câu 11: Biểu thức (a MOD 3 = 0) OR (b > 2) là:
A Biểu thức Toán học B Biểu thức quan hệ.
C Biểu thức số học D Biểu thức logic.
Câu 12: Hãy chọn biểu diễn hằng trong những biểu diễn dưới đây:
Câu 13: Xét biểu thức sau: (9x < 80) and (x <=10) Biểu thức cho kết quả True khi x
bằng
Câu 14: Đại lượng có giá trị không đổi trong quá trình thực hiện chương trình gọi là
Câu 15: Phát biểu nào sau đây là sai:
A Phần khai báo có thể có hoặc không
B Phần thân chương trình có thể có hoặc không
C Phần khai báo thư viện có thể có hoặc không
D Phần tên chương trình không nhất thiết phải có
Câu 16: Trong ngôn ngữ lập trình Free Pascal, khi soạn thảo chương trình loại tên
nào có màu trắng:
A Tên do người lập trình đặt B Tên chuẩn.
Câu 17: X có thể nhận các giá trị từ ‘A’ đến ‘Z’, khai báo nào sau đây là đúng trong Pascal?
A Var x: Byte ; B Var x: real; C Var x: Integer; D Var x: char ; Câu 18: Có mấy loại chương trình dịch?
Câu 19: Kiểu Boolean thể hiện được bao nhiêu trạng thái?
Trang 21A 4 B 1 C 2 D 3
Câu 20: Hãy chọn khẳng định đúng về quy tắc đặt tên trong Free Pascal
A Là dãy liên tiếp gồm tối đa 127 kí tự
B Có thể dùng dấu gạch dưới và khoảng trống
C Bắt đầu bằng kí tự bất kỳ
D Không bắt đầu bằng số
Câu 21: Trong Free Pascal phép toán div, mod thuộc phép toán nào sau đây
A Phép toán Logic B Phép toán số học với số nguyên.
C Phép toán số học với số thực D Phép toán quan hệ.
Câu 22: Biểu diễn nào sau đây không phải là Hằng trong Pascal?
Câu 23: Phát biểu nào dưới đây là đúng?
A Đại lượng có giá trị không đổi trong quá trình thực hiện chương trình gọi là
biến
B Khi cần thay đổi ý nghĩa của một từ khóa nào đó người lập trình cần khai báo
theo ý nghĩa mới
C Tên do người lập trình tự đặt không được trùng với từ khóa nhưng có thể trùng
với tên chuẩn
D Trong chương trình tên gọi cũng là một đối tượng không thay đổi nên cũng có
thể xem là hằng
Câu 24: Em hãy cho diễn tả đúng cho phát biểu: a,b,c là độ dài 3 cạnh của tam giác.
A (a+b>c) and (b+c>a) and (a+c>b) B Tất cả đều đúng
C a+b>c and b+c>a and a+c>b D (a+b>c) & (b+c>a) & (a+c>b)
Câu 25: Biểu diễn nào là từ khóa trong Free Pascal
Câu 26: Trong ngôn ngữ lập trình Free Pascal, về mặt cú pháp câu lệnh nào sau đây
là sai?
C x:= (3<5) and (6<8); D x:= (3<5) or (6>8);
Trang 22Câu 27: Để xác định một điểm có tọa độ (x,y) nằm ngoài đường tròn tâm (a,b) bán
kính R ta dùng biểu thức logic:
A (x-a)2+(y-b)2>R2 B sqrt(sqr(x-a)+sqr(y-b))>R
C (x-a)+(y-b)>R D sqrt(sqr(x-a)+sqr(y-b))<=R
Câu 28: Mệnh đề nào sau đây sai:
A Không có thể xác định ý nghĩa các kí tự khác ngoài các kí tự qui định trong
bảng chữ cái
B Các lỗi cú pháp thì khó phát hiện hơn các lỗi ngữ nghĩa
C Cú pháp cho biết cách viết chương trình một chương trình hợp lệ, còn ngữ
nghĩa xác định tính chất, thuộc tính các tổ hợp kí tự trong chương trình
D Ngữ nghĩa xác định ý nghĩa các thao tác cần phải thực hiện ứng với mỗi tổ hợp
kí tự và dựa vào ngữ cảnh của nó
Câu 29: Chương trình dịch không có khả năng nào trong các khả năng sau:
A Tạo được chương trình đích B Thông báo lỗi cú pháp.
C Phát hiện được lỗi ngữ nghĩa D Phát hiện được lỗi cú pháp.
Câu 30: Các thành phần cơ bản của Ngôn ngữ lập trình gồm:
A Bảng chữ cái, ngữ pháp, B Bảng chữ cái, hằng, ngữ nghĩa
C Bảng chữ cái, tên, ngữ nghĩa D Bảng chữ cái, cú pháp, ngữ nghĩa Câu 31: Hàm nào tương ứng với phép tính giá trị tuyệt đối trong Pascal
Trang 23A 2 B Chương trình báo lỗi
Câu 34: Biến A nhận các giá trị: 1; 15; 99; 121 và biến B nhận các giá trị: 1.34; 29;
41.8 Khai báo nào sau đây là đúng:
A var A:Real; B:Byte; B var A:Byte; B:Real;
Câu 35: Để xác định một điểm có tọa độ (x,y) nằm ngoài đường tròn tâm (a,b) bán
kính R ta dùng biểu thức logic:
A (x-a)+(y-b)>R B sqrt(sqr(x-a)+sqr(y-b))<=R
C sqrt(sqr(x-a)+sqr(y-b))>R D (x-a)2+(y-b)2>R2
Câu 36: Trong NNLT Pascal, Biểu thức: 25 mod 3 + 54 / 2 * 3 có giá trị là:
Trang 24A 3.75 B 3.750 C 3.8E+01 D 3.75E+01 Câu 41: Hãy chọn lệnh xuất dữ liệu trên cùng dòng trong Pascal?
Câu 42: Cho bài toán sau: Nhập vào p là số nguyên >0 Hỏi sau khi xếp p viên phấn
vào hộp phấn thì còn dư bao nhiêu viên phấn lẻ bên ngoài (gọi là v1) Biết rằng mộthộp phấn có thể chứa được 10 viên Em có thể tính v1 như thế nào?
A v1:= v1 mod 10; B v1: = p - 10; C v1:= p mod 10; D v1:= p div 10; Câu 43: Cho biết kết quả trả về của biểu thức sau: (20 mod 3) div 2 + (15 div 4)
Câu 44: Kết quả của phép chia: 7 div 5 là?
Câu 45: Tìm khai báo tối ưu cho biến thể hiện số ngày của 12 tháng trong năm:
A var n: real; B var n: integer; C var n: byte; D var n: char; Câu 46: Xét biểu thức logic: (n >0) and (n mod 2 = 0) Khẳng định nào sau đây là
đúng?
A Kiểm tra n là một số nguyên chẵn.
B Kiểm tra n có chia hết cho 2 không.
C Kiểm tra xem n có là một số dương.
D Kiểm tra xem n là một số dương chẵn.
Câu 47: Trong ngôn ngữ lập trình Free Pascal, khi soạn thảo chương trình loại tên
nào có màu trắng:
C Tên do người lập trình đặt D Tên chuẩn.
Câu 48: Trong quá trình dịch chương trình ta sử dụng chương trình nào để phát hiện
lỗi ngữ nghĩa
Câu 49: Biên dịch là:
A Dịch toàn bộ chương trình B Chạy chương trình
C Các đại lượng của Pascal D Dịch từng lệnh
Trang 25Câu 50: Phép gán sau đây hợp lệ không? x1:=-b/2/a:=x2;
Câu 54: Kiểu CHAR thể hiện các kí tự được mã hoá bằng bảng mã nào?
Câu 55: Chương trình sau khi chạy máy báo lỗi gì
IF a>0 then
A:=1;
Writln(‘Gia tri của a là ‘, a);
A Vượt ngoài khả năng tính toán B Sai cú pháp
Câu 56: Biến A nhận các giá trị: 1; 15; 99; 121 và biến B nhận các giá trị: 1.34; 29;
41.8 Khai báo nào sau đây là đúng:
C var A:Real; B:Byte; D var A:Byte; B:Real;
Câu 57: Hãy chọn khai báo tên chương trình hợp lệ?
A Program vidu01; B Program Giai Phuong Trinh Bac 2;
C Program Dien_Tich_Tam-Giac; D Program baitap20
Câu 58: Chương trình có chức năng chuyển đổi chương trình viết bằng ngôn ngữ lập
trình bậc cao sang mã máy gọi là:
A Chương trình dịch B Ngôn ngữ lập trình
Trang 26Câu 59: Em hãy chọn câu lệnh nào đưa ra màn hình câu "Xin chao" và con trỏ không
xuống hàng?
A read('Xin chao'); B write('Xin chao')
Câu 60: Biểu thức (x>y) and (y>3) thuộc loại biểu thức nào trong Pascal?
A Biểu thức số học B Biểu thức toán học C Biểu thức logic D Biểu thức quan
hệ
Câu 61: Chương trình dịch là:
A Chương trình dịch ngôn ngữ máy ra ngôn ngữ tự nhiên.
B Chương trình có chức năng chuyển đổi chương trình được viết bằng ngôn ngữ
lập trình bậc cao thành chương trình thực hiện được trên máy tính cụ thể
C Chương trình dịch ngôn ngữ tự nhiên ra ngôn ngữ máy.
D Chương trình có chức năng chuyển đổi chương trình được viết bằng ngôn ngữ
máy thành ngôn ngữ bậc cao
Câu 62: Lệnh nào dùng để dừng chương trình đến khi nhấn phím Enter chương trình
mới hoạt động tiếp?
Câu 63: Từ khoá nào sau đây dùng để khai báo tên chương trình
Câu 64: Chương trình dịch là:
A Chương trình dịch ngôn ngữ máy ra ngôn ngữ tự nhiên.
B Chương trình có chức năng chuyển đổi chương trình được viết bằng ngôn ngữ
lập trình bậc cao thành chương trình thực hiện được trên máy tính cụ thể
C Chương trình có chức năng chuyển đổi chương trình được viết bằng ngôn ngữ
máy thành ngôn ngữ bậc cao
D Chương trình dịch ngôn ngữ tự nhiên ra ngôn ngữ máy.
Câu 65: Em hãy cho biết kiểu dữ liệu nào sau đây chỉ thể hiện được số dương?
Câu 66: Hãy chọn khai báo biến hợp lệ:
Trang 27A Var x, y, z: byte; B Var x, y, z; byte;
C Var x, y, z: byte, word, real; D Var x: byte, y: word, z: real;
Câu 68: Các thành phần cơ bản trong ngôn ngữ lập trình là:
A Bảng chữ cái, các quy tắc, ngữ nghĩa B Các kí tự, các quy tắc, các ngữ nghĩa
C Bảng chữ cái, cú pháp, ngữ nghĩa D Bảng chữ cái, bảng chữ số, cú pháp Câu 69: Để biên dịch chương trình ta dùng phím:
Câu 70: Câu lệnh:write(‘1 + 3 + + ‘, 2*n -1, ‘ = ‘, sqr(n))
Sẽ in ra màn hình nội dung gì nếu cho n = 5
Câu 72: Chọn khai báo đúng:
A const m=n=2; B var x: byte, real; C const n: integer D const m=5; Câu 73: Trong ngôn ngữ lập trình Pascal tên nào sau đây không đúng?
Câu 74: Trong các loại ngôn ngữ lập trình sau đây, ngôn ngữ nào dễ học nhất?
A ngôn ngữ lập trình bậc cao B ngôn ngữ máy
Trang 28Câu 76: Cho biểu thức: (a mod 3 = 0) and (a mod 4 = 0) Số a nhận giá trị nào sau
đây thì biểu thức có kết quả là TRUE?
Hãy chọn một trong những kết quả sau đây:
A KQ la 1.5000000000E+01 B Chương trình báo lỗi
Câu 78: Biên dịch là:
C Các đại lượng của Pascal D Dịch toàn bộ chương trình
Câu 79: Khẳng định sau đây là đúng hay sai khi khai báo biến? Cần chú ý đến phạm
Writln(‘Gia tri của a là ‘, a);
Câu 81: Phép gán sau đây hợp lệ không? x1:=x2:=-b/2/a;
Trang 29Câu 84: Các kiểu dữ liệu chuẩn cho biết
A Phạm vi giá trị của kiểu dữ liệu có thể lưu trữ
B Tất cả đều đúng
C Các phép toán qui định có thể tác động lên kiểu dữ liệu đó
D Dung lượng bộ nhớ cần thiết để lưu trữ dữ liệu
Câu 85: Bộ nhớ cấp phát bao nhiêu byte để lưu trữ: VAR X, Y, Z: Real; C: Char; I, J:
Byte;
Câu 86: Loại tên nào trong ngôn ngữ lập trình không thể thay đổi được?
A Tất cả 3 đã nêu B Tên do người lập trình tự đặt
Câu 87: Biểu thức lôgic là các biểu thức quan hệ liên kết với nhau bởi phép toán
logic Trong các từ sau, đâu không phải là phép toán logic?
Câu 88: Loại ngôn ngữ nào được nhiều người sử dụng nhất hiện nay?
Câu 89: Khẳng định sau đây là đúng hay sai khi khai báo biến? Pascal không phân
biệt tên biến chữ hoa hay thường
Câu 90: Khẳng định sau đây là đúng hay sai khi khai báo biến? Mỗi biến chỉ được
khai báo một lần
Câu 91: Cách đặt tên nào là đúng theo quy tắc Pascal:
Trang 30Câu 92: Biểu thức (x>y) and (y>3) thuộc loại biểu thức nào trong Pascal?
A Biểu thức logic B Biểu thức toán học C Biểu thức số học D Biểu thức quan
hệ
Câu 93: Trong ngôn ngữ lập trình Free Pascal, hằng xâu kí tự “Hoa co mua xuan”
được viết như thế nào?
Câu 94: Lệnh: writeln('x'); làm gì?
A thông báo 'x' ra màn hình B Xuất giá trị x ra màn hình
C Không câu nào đúng D Xuất kí tự x ra màn hình
Câu 95: Để biên dịch chương trình ta dùng phím:
Câu 96: Phát biểu nào dưới đây là đúng?
A Tên do người lập trình tự đặt không được trùng với từ khóa nhưng có thể trùng
với tên chuẩn
B Đại lượng có giá trị không đổi trong quá trình thực hiện chương trình gọi là
biến
C Trong chương trình tên gọi cũng là một đối tượng không thay đổi nên cũng có
thể xem là hằng
D Khi cần thay đổi ý nghĩa của một từ khóa nào đó người lập trình cần khai báo
theo ý nghĩa mới
Câu 97: Chương trình viết bằng ngôn ngữ lập trình bậc cao muốn thực hiện được
trên máy tính phải dùng
Câu 98: Đại lượng dùng để lưu trữ giá trị và giá trị có thể được thay đổi trong quá
trình thực hiện chương trình gọi là
Câu 99: Em hãy cho biết khai báo sau đây chiếm bao nhiêu byte bộ nhớ?
Var
Trang 31a, b, c: byte;
p, cv, dt: real;
vc: Boolean;
Câu 100: Lệnh writeln('sqrt(2):5:2'); có ý nghĩa như thế nào?
A in giá trị căn bậc 2 của ra màn hình
B lấy căn bậc 2 của 2 chia 10 rồi chia 2 sau đó in ra màn hình
C in sqrt(2):5:2 ra màn hình
D in giá trị căn bậc 2 của ra màn hình với 5 ô trống và lấy 2 số thập phân
Câu 101: Bảng chữ cái trong ngôn ngữ lập trình là:
A Tập các chữ cái có trong một bài lập trình
B Tập các chữ cái in thường và in hoa được dùng khi viết chương trình
C Tập các kí tự chữ cái Latin được sử dụng trong lập trình
D Tập các kí tự được dùng để viết chương trình
Câu 102: Cho bài toán sau: Nhập vào p là số nguyên >0 Hỏi với p viên phấn có thể
xếp vào bao nhiêu h hộp phấn Biết rằng một hộp phấn có thể chứa được 10 viên Em
có thể tính h như thế nào?
A h:=p/10; B h:=p div 10; C h:=p mod 10; D h:= p - 10; Câu 103: Những biểu diễn nào sau đây không phải là Hằng trong Pascal?
A writeln('Xin chao'); B writeln('Xin chao')
C readln('Xin chao'); D readln(Xin Chao);
Câu 106: Trong Free Pascal, xét chương trình sau
Const b = 3.75;
Begin
Trang 32Câu 108: Ngôn ngữ lập trình gồm có những loại nào?
A Hợp ngữ, ngôn ngữ máy, ngôn ngữ bậc cao
B Hợp ngữ, ngôn ngữ bậc thấp, ngôn ngữ bậc cao
C Ngôn ngữ bậc thấp, ngôn ngữ bậc cao, ngôn ngữ máy
D Ngôn ngữ máy, ngôn ngữ cấp bậc
Câu 109: Khai báo nào trong các khai báo sau là hợp lệ?
A Const n:=10; B Const: n =16; C Const n=15; D Const n: real; Câu 110: Khẳng định sau đây là đúng hay sai khi khai báo biến? Đặt tên biến sao cho
gợi nhớ đến ý nghĩa của biến
Câu 111: Lệnh writeln(x1:10:2); có ý nghĩa như thế nào?
A in giá trị x1:10:2 ra màn hình
B in giá trị x1 ra màn hình với 10 ô trống và lấy 2 số thập phân
C lấy x1 chia 10 rồi chia 2 sau đó in ra màn hình
D in giá trị x1 ra màn hình
Câu 112: Các thành phần cơ bản của Ngôn ngữ lập trình gồm:
A Bảng chữ cái, hằng, ngữ nghĩa B Bảng chữ cái, tên, ngữ nghĩa
C Bảng chữ cái, ngữ pháp, D Bảng chữ cái, cú pháp, ngữ nghĩa Câu 113: Câu lệnh: write(‘1 + 3 + + ‘, 2*n -1, ‘ = ‘, sqr(n)) Sẽ in ra màn hình
nội dung gì nếu cho n = 5
A 1 + 2 + 3 + 4 + 5 = 15 B 1 + 3 + 9 = 25
C 1 + 3 + + 9 = 25 D 1 + 3 + 9 = 25
Câu 114: Biểu thức: M MOD 3 = 0 có ý nghĩa gì?
Trang 33A Chữ số ở hàng đơn vị của M luôn luôn là số 3
B Không câu nào đúng
C M chia hết cho 3
D M không chia hết cho 3
Câu 115: Hãy chọn khai báo hằng hợp lệ?
Câu 116: X có thể nhận các giá trị từ ‘A’ đến ‘Z’, khai báo nào sau đây là đúng trong Pascal?
A Var x: real; B Var x: Integer; C Var x: Byte ; D Var x: char ; Câu 117: Đọan chương trình sau khi chạy cho kết quả gì?
Câu 118: Để thoát khỏi Pascal ta nhấn tổ hợp phím nóng nào
Câu 119: Hàm nào tương ứng với phép tính giá trị tuyệt đối trong Pascal
Câu 120: Trong ngôn ngữ lập trình Pascal tên nào sau đây không đúng?
Câu 121: Đại lượng dùng để lưu trữ giá trị và giá trị có thể được thay đổi trong quá
trình thực hiện chương trình gọi là
Câu 122: Hãy cho biết khai báo biến sau đây chiếm bao nhiêu byte bộ nhớ?
Var
Trang 34x, y: byte;
Câu 123: Chương trình dịch không có khả năng nào trong các khả năng sau:
A Thông báo lỗi cú pháp B Phát hiện được lỗi ngữ nghĩa.
C Phát hiện được lỗi cú pháp D Tạo được chương trình đích.
Câu 124: Phần thân chương trình bắt đầu và kết thúc bằng
A Begin và End B Begin và End C Begin và End; D Start và End.
Câu 125: Cách viết nào sau đây là đúng trong biểu thức Pascal: 3x2-
5
1 (x-m)-15=13
A 3*x*x- 1/sqr(5)*(x-m)-15=13 B 3*sqr(x)- (1/sqrt(5))*(x-m)-15=13
C 3*x*x- 1/sqr(5)(x-m)-15=13 D 3*x*x- (1/sprt(5))*(x-m)-15=13 Câu 126: Trong Free Pascal phép toán div, mod thuộc phép toán nào sau đây
A Phép toán số học với số nguyên B Phép toán quan hệ.
C Phép toán Logic D Phép toán số học với số thực.
Câu 127: Cho a, b, c là 3 số nguyên, có giá trị như sau:
a:=2; b:=4; c:=1;
x1:=(-b+sqrt(sqr(b)-4*a*c))/2/a;
Vậy x1 có kiểu gì?
Câu 128: Em hãy chọn phép gán không hợp lệ
Câu 129: Trong ngôn ngữ lập trình, thành phần cơ bản xác định ý nghĩa thao tác cần
phải thực hiện, ứng với tổ hợp kí tự dựa vào ngữ cảnh của nó là:
A Ngữ cảnh B Ngữ pháp C Cú pháp D Ngữ Nghĩa Câu 130: Phát biểu nào sau đây là sai:
A Phần thân chương trình có thể có hoặc không
B Phần khai báo thư viện có thể có hoặc không
C Phần khai báo có thể có hoặc không
D Phần tên chương trình không nhất thiết phải có
Trang 35Câu 131: Cấu trúc chung của chương trình gồm mấy phần?
A Tất cả đều sai
B Phần đầu, phần thân, phần cuối
C Phần khai báo, phần thân, phần cuối
D Phần khai báo, phần thân chương trình
Câu 132: Cú pháp khai báo biến sau đây là đúng hay sai?
Var <danh sách biến>:<kiểu dữ liệu>;
A Kiểm tra n là một số nguyên chẵn.
B Kiểm tra xem n có là một số dương.
C Kiểm tra n có chia hết cho 2 không.
D Kiểm tra xem n là một số dương chẵn.
Câu 138: Trong ngôn ngữ lập trình, thành phần cơ bản xác định ý nghĩa thao tác cần
phải thực hiện, ứng với tổ hợp kí tự dựa vào ngữ cảnh của nó là:
A Ngữ pháp B Cú pháp C Ngữ cảnh D Ngữ Nghĩa Câu 139: Trong Free Pascal, để lưu chương trình
A Nhấn tổ hợp phím Shift + F2 B Nhấn tổ hợp phím Ctrl+F2
C Nhấn tổ hợp phím Alt + F2 D Nhấn phím F2
Trang 36Câu 140: Hãy chọn lệnh nhập dữ liệu xuống dòng trong Pascal?
Câu 141: Em hãy cho biết kiểu dữ liệu nào sau đây thể hiện được số nguyên âm?
Câu 142: Hằng là đại lượng
A Có giá trị không đổi trong quá trình thực hiện chương trình
B Là số thập phân và không thay đổi trong quá trình thực hiện chương trình
C Có giá trị thay đổi trong quá trình thực hiện chương trình
D Là số nguyên và không thay đổi trong quá trình thực hiện chương trình
Câu 143: Để nhập dữ liệu cho 3 biến a, b, c ta viết lệnh: Write(‘ nhap 3 so a, b, c:’);
và câu nào dưới đây:
A readln(a); readln(b,c); B Các câu trả lời đều đúng
C read(a); read(b); read(c); D readln(a,b,c);
Câu 144: Cấu trúc một chương trình được chia làm mấy phần?
Câu 146: Tìm khai báo sai:
Câu 147: Để thoát khỏi Pascal ta nhấn tổ hợp phím nóng nào
Câu 148: Cách đặt tên nào là đúng theo quy tắc Pascal:
Câu 149: Biểu diễn nào là từ khóa trong Free Pascal
Trang 37Câu 150: Trong NNLT Pascal, Biểu thức: 25 mod 3 + 54 / 2 * 3 có giá trị là:
Câu 151: Đại lượng có giá trị không đổi trong quá trình thực hiện chương trình gọi là
Câu 152: Cho khai báo biến sau đây (trong Pascal):
Var m, n: integer;
x, y: real;
Lệnh gán nào sau đây là sai:
Câu 153: Trong ngôn ngữ lập trình Free Pascal, hằng xâu kí tự “Hoa co mua xuan”
được viết như thế nào?
Câu 154: Hãy chọn khai báo tên chương trình hợp lệ?
A Program _ChuViHinhTron; B Program vi-du01;
C Program 20baitap; D Program Giai-Phuong-Trinh- B2; Câu 155: Em hãy chọn lệnh sai trong các lệnh sau đây:
A Writeln(‘max =’, max); B Writeln(‘a = ‘,a,‘ b = ‘,b,’ c = ‘,c);
C Writeln(‘Gia tri lon nhat ’,max); D Writeln('a,b,c);
Câu 156: Trong ngôn ngữ lập trình Free Pascal, về mặt cú pháp câu lệnh nào sau đây
là sai?
C x:= (3<5) or (6>8); D x:= 3,1415;
Câu 157: Hãy chọn lệnh xuất hợp lệ:
A writeln('Chao Ban'); B writeln("Chao Ban");
C writeln('Chao Ban'), D writeln(Chao Ban);
Câu 158: Để nhập giá trị cho điểm M có toạ độ x, y Em dùng nhóm lệnh nào cho
phù hợp - rõ ràng?
A readln(x,y)
B write('Nhap vao toa do M = '); readln(x,y);
Trang 38C readln(x);
readln(y);
D write('Nhap vao hoanh do x = '); readln(x);
write('Nhap vao tung do y = '); readln(y);
Câu 159: Kết quả của phép chia: 7 mod 5 là?
Trang 39Chương III: CẤU TRÚC RẼ NHÁNH VÀ LẶP
Const n: S n ; END;
CASE B OF Const 1: S 1 ; Const 2: S 2 ;
Const n: S n ; ELSE S n+1 ; END;
Giá trị của biểu thức và giá trị của tập hằng i (i=1¸n) phải có cùng kiểu
Khi gặp lệnh CASE, chương trình sẽ kiểm tra:
- Nếu giá trị của biểu thức B nằm trong tập hằng const i thì máy sẽ thực hiện lệnh
Si tương ứng
- Ngược lại:+ Đối với dạng 1: Không làm gì cả
+ Đối với dạng 2: thực hiện lệnh Sn+1
II CÂU LỆNH LẶP
Trang 402.1 Vòng lặp xác định Có hai dạng sau:
Dạng tiến
FOR <biến đếm>:=<giá trị Min> TO <giá trị Max> DO S;
Dạng lùi
FOR <biến đếm>:=<giá trị Max> DOWNTO <giá trị Min> DO S;
Sơ đồ thực hiện vòng lặp FOR:
Chú ý: Khi sử dụng câu lệnh lặp FOR cần chú ý các điểm sau:
Không nên tuỳ tiện thay đổi giá trị của biến đếm bên trong vòng lặp FOR vì làm như vậy có thể sẽ không kiểm soát được biến đếm.
Giá trị Max và Min trong câu lệnh FOR sẽ được xác định ngay khi vào đầu vòng lặp Do đó cho dù trong vòng lặp ta có thay đổi giá trị của nó thì số lần lặp cũng không thay đổi.