Câu hỏi trắc nghiệm (40 câu):
-
Câu 1: Mã câu hỏi: 329686
Ngôn ngữ lập trình là ngôn ngữ
- A. 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í
- B. Dưới dạng nhị phân để máy tính có thể thực hiện trực tiếp
- C. Diễn đạt thuật toán để có thể giao cho máy tính thực hiện
- 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 2: Mã câu hỏi: 329687
Ngôn ngữ lập trình bậc cao là ngôn ngữ
- A. 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ể
- B. 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. Có thể diễn đạt được mọi thuật toán
- D. Sử dụng từ vựng và cú pháp của ngôn ngữ tự nhiên (tiếng Anh)
-
Câu 3: Mã câu hỏi: 329688
Phát biểu nào không đúng trong các phát biểu dưới đây?
- A. 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
- B. 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ăng cường hiệu suất lập trình
- 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 4: Mã câu hỏi: 329690
Phát biểu nào dưới đây là đúng nhất khi nói về biến?
- 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 5: Mã câu hỏi: 329692
Phần thân chương trình bắt đầu bằng ….và kết thúc bằng …?
- A. BEGIN…END.
- B. BEGIN…END
- C. BEGIN…END,
- D. BEGIN…END;
-
Câu 6: Mã câu hỏi: 329694
Các thành phần của ngôn ngữ lập trình là
- A. Chương trình thông dịch và chương trình biên dịch
- 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. Tên dành riêng, tên chuẩn và tên do người lập trình định nghĩa
-
Câu 7: Mã câu hỏi: 329697
Xét chương trình Pascal dưới đây:
PROGRAM vi_du;
BEGIN Writeln ('Xin chao cac ban');
Writeln('Moi cac ban lam quen voi Pascal');
END.
Chọn phát biểu sai?
- A. Khai báo tên chương trình là vi du
- B. Khai báo tên chương trình là vi_du
- C. Thân chương trình có hai câu lệnh
- D. Chương trình không có khai báo hằng
-
Câu 8: Mã câu hỏi: 329699
Chương trình dịch Pascal sẽ cấp phát bao nhiêu byte bộ nhớ cho các biến trong khai báo sau?
VAR M, N, P: Integer; A. B: Real; C: Longint;
- A. 24 byte
- B. 22 byte
- C. 18 byte
- D. 11 byte
-
Câu 9: Mã câu hỏi: 329700
Trong ngôn ngữ lập trình Pascal, giả sử x:= a/b; thì x phải khai báo kiểu dữ liệu nào?
- A. Longint
- B. integer
- C. word
- D. real
-
Câu 10: Mã câu hỏi: 329701
Bộ nhớ sẽ cấp phát cho các biến dưới đây tổng cộng bao nhiêu byte?
Var x,y: integer; c: char; ok: boolean; z: real;
- A. 12
- B. 14
- C. 11
- D. 13
-
Câu 11: Mã câu hỏi: 329703
Biến x có thể nhận các giá trị -5, 100, 15, 20. Hãy chọn kiểu dữ liệu phù hợp với biến x?
- A. Char
- B. LongInt
- C. Integer
- D. Word
-
Câu 12: Mã câu hỏi: 329705
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; 10.99. Khai báo nào trong các khai báo sau là đúng nhất?
- A. Var X,,Y: byte;
- B. Var X, Y: real;
- C. Var X: real; Y: byte;
- D. Var X: byte; Y: real;
-
Câu 13: Mã câu hỏi: 329706
Trong ngôn ngữ lập trình Pascal, kiểu dữ liệu nào trong các kiểu sau có miền giá trị lớn nhất?
- A. Byte
- B. Longint
- C. Word
- D. Integer
-
Câu 14: Mã câu hỏi: 329707
Trong 1 chương trình, biến M có thể nhận các giá trị: 10, 15, 20, 30, 40, và biến N có thể nhận các giá trị: 1.0 , 1.5, 2.0, 2.5 , 3.0. Khai báo nào trong các khai báo sau là đúng?
- A. Var M, N: integer;
- B. Var M: Real; N: Word;
- C. Var M, N: Longint;
- D. Var M: Word; N: Real;
-
Câu 15: Mã câu hỏi: 329796
Cho khai báo sau: Var hoten : String;
Phát biểu nào dưới đây là đúng ?
- A. Câu lệnh sai vì thiếu độ dài tối đa của xâu
- B. Xâu có độ dài lớn nhất là 0
- C. Xâu có độ dài lớn nhất là 255
- D. Cần phải khai báo kích thước của xâu sau đó
-
Câu 16: Mã câu hỏi: 329797
Thủ tục chuẩn Insert(S1,S2,vt) thực hiện:
- A. Chèn xâu S1 vào S2 bắt đầu từ vị trí vt
- B. Chèn xâu S2 vào S1 bắt đầu từ vị trí vt
- C. Nối xâu S2 vào S1
- D. Sao chép vào cuối S1 một phần của S2 từ vị trí vt
-
Câu 17: Mã câu hỏi: 329799
Đoạn chương trình sau in ra kết quả nào ?
Program Welcome ;
Var a : string[10];
Begin
a := ‘tinhoc ’;
writeln(length(a));
End.
- A. 6
- B. 7
- C. 10
- D. Chương trình có lỗi
-
Câu 18: Mã câu hỏi: 329801
Cho str là một xâu kí tự, đoạn chương trình sau thực hiện công việc gì ?
for i := length(str) downto 1 do
write(str[i]) ;
- A. In xâu ra màn hình;
- B. In từng kí tự xâu ra màn hình;
- C. In từng kí tự ra màn hình theo thứ tự ngược, trừ kí tự đầu tiên;
- D. In từng kí tự ra màn hình theo thứ tự ngược;
-
Câu 19: Mã câu hỏi: 329803
Trong ngôn ngữ lập trình Pascal, xâu kí tự không có kí tự nào gọi là ?
- A. Xâu không;
- B. Xâu rỗng;
- C. Xâu trắng;
- D. Không phải là xâu kí tự;
-
Câu 20: Mã câu hỏi: 329805
Trong Turbo Pascal, đang ở cửa sổ chương trình nguồn muốn xem lại màn hình Output:
- A. Nhấn tổ hợp phím Alt + F5
- B. Nhấn tổ hợp phím Alt + F7
- C. Nhấn tổ hợp phím Alt + F6
- D. Nhấn tổ hợp phím Alt + F8
-
Câu 21: Mã câu hỏi: 329806
Để 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 : integer;
- B. Var S : real;
- C. Var S : longint;
- D. Var S : word;
-
Câu 22: Mã câu hỏi: 329809
Trong Turbo Pascal, để đóng cửa sổ chương trình:
- A. Nhấn tổ hợp phím Alt + F5
- B. Nhấn tổ hợp phím Alt + F3
- C. Nhấn phím F3
- D. Nhấn phím F5
-
Câu 23: Mã câu hỏi: 329811
Cấu trúc của chương trình được mô tả như sau :
- A. [<phần khai báo>] <phần thân>
- B. [<phần khai báo>] <phần thân> <phần kết luận>
- C. [<phần thân>] <phần kết luận>
- D. <phần khai báo> [<phần thân>]
-
Câu 24: Mã câu hỏi: 329813
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. Clrscr;
- D. Clr scr;
-
Câu 25: Mã câu hỏi: 329815
Với cấu trúc rẽ nhánh IF <điều kiện> THEN <câu lệnh 1> ELSE <câu lệnh 2>, câu lệnh 2 được thực hiện khi nào?
- A. biểu thức điều kiện đúng và câu lệnh 1 thực hiện xong;
- B. câu lệnh 1 được thực hiện;
- C. biểu thức điều kiện sai;
- D. biểu thức điều kiện đúng;
-
Câu 26: Mã câu hỏi: 329818
Trong ngôn ngữ lập trình Pascal, phát biểu nào sau đây là đúng với câu lệnh rẽ nhánh if…then…else…?
- A. Nếu sau else muốn thực hiện nhiều câu lệnh thì các câu lệnh phải đặt giữa hai cặp dấu ngoặc nhọn;
- B. Nếu sau else muốn thực hiện nhiều câu lệnh thì các câu lệnh phải đặt giữa hai dấu ngoặc đơn;
- C. Nếu sau else muốn thực hiện nhiều câu lệnh thì các câu lệnh phải đặt giữa Begin và End;
- D. Nếu sau else muốn thực hiện nhiều câu lệnh thì các câu lệnh phải đặt giữa Begin và End
-
Câu 27: Mã câu hỏi: 329820
Trong ngôn ngữ lập trình Pascal, muốn kiểm tra đồng thời cả ba giá trị của A. B. C có cùng lớn hơn 0 hay không ta viết câu lệnh If thế nào cho đúng ?
- A. If A. B. C > 0 then ……
- B. If (A > 0) and (B > 0) and (C > 0) then ……
- C. If A>0 and B>0 and C>0 then ……
- D. If (A>0) or (B>0) or (C>0) then……
-
Câu 28: Mã câu hỏi: 329823
Để khai báo số phần tử của mảng trong PASCAL, người lập trình cần:
- A. khai báo một hằng số là số phần tử của mảng
- B. khai báo chỉ số bắt đầu và kết thúc của mảng
- C. khai báo chỉ số kết thúc của mảng
- D. không cần khai báo gì, hệ thống sẽ tự xác định
-
Câu 29: Mã câu hỏi: 329826
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?
- A. Tìm phần tử nhỏ nhất trong mảng;
- B. Tìm phần tử lớn nhất trong mảng;
- C. Tìm chỉ số của phần tử lớn nhất trong mảng
- D. Tìm chỉ số của phần tử nhỏ nhất trong mảng
-
Câu 30: Mã câu hỏi: 329828
Cho khai báo mảng như sau: Var a : array[0..10] of integer ;
Phương án nào dưới đây chỉ phần tử thứ 10 của mảng?
- A. a[10];
- B. a(10);
- C. a[9];
- D. a(9);
-
Câu 31: Mã câu hỏi: 329836
Độ dài tối đa của xâu kí tự trong PASCAL là bao nhiêu?
- A. 256
- B. 255
- C. 65535
- D. Tùy ý
-
Câu 32: Mã câu hỏi: 329843
Cho khai báo sau: Var hoten : String; Phát biểu nào dưới đây là đúng ?
- A. Câu lệnh sai vì thiếu độ dài tối đa của xâu
- B. Xâu có độ dài lớn nhất là 0
- C. Xâu có độ dài lớn nhất là 255
- D. Cần phải khai báo kích thước của xâu sau đó
-
Câu 33: Mã câu hỏi: 329844
Cho str là một xâu kí tự, đoạn chương trình sau thực hiện công việc gì ?
for i := length(str) downto 1 do
write(str[i]) ;
- A. In xâu ra màn hình;
- B. In từng kí tự xâu ra màn hình;
- C. In từng kí tự ra màn hình theo thứ tự ngược, trừ kí tự đầu tiên;
- D. In từng kí tự ra màn hình theo thứ tự ngược;
-
Câu 34: Mã câu hỏi: 329848
Trong ngôn ngữ lập trình Pascal, giả sử x:= a/b; thì x phải khai báo kiểu dữ liệu nào?
- A. Longint
- B. integer
- C. word
- D. real
-
Câu 35: Mã câu hỏi: 329851
Bộ nhớ sẽ cấp phát cho các biến dưới đây tổng cộng bao nhiêu byte?
Var x,y: integer; c: char; ok: boolean; z: real;
- A. 12
- B. 14
- C. 11
- D. 13
-
Câu 36: Mã câu hỏi: 329852
Hãy chọn phương án đúng. Biểu thức: 25 mod 3 + 5 / 2 * 3 có giá trị là?
- A. 8.0;
- B. 15.5;
- C. 15.0;
- D. 8.5;
-
Câu 37: Mã câu hỏi: 329855
Cho biểu thức sau: (a mod 3 = 0) and (a mod 4 = 0)
Số a nhận giá trị nào sau đây để biểu thức cho kết quả là TRUE?
- A. 24
- B. 16
- C. 20
- D. 15
-
Câu 38: Mã câu hỏi: 329858
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ư
- C. Làm tròn số
- D. Thực hiện phép chia
-
Câu 39: Mã câu hỏi: 329868
Biểu diễn biểu thức \((a + b) + \frac{{\sqrt {{a^2} + 2bc} }}{{c - \frac{a}{{a + b}}}}\) trong NNLT Pascal là
- A. (a+b) + sqrt(a*a+2*b*c) / ( c – a / (a+b) )
- B. (a+b) + sqr(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( sqrt(a) + 2*b*c) / (c – a / (a+b) )
-
Câu 40: Mã câu hỏi: 329881
Lựa 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. 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 những giá trị không đổi và xuất hiện nhiều lần trong 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