Skip to content
Tài Liệu Trọn Đời - Thư viện tài liệu học tập - 5

Blog Cá Nhân | Chia Sẻ Tài Liệu Học Tập Miễn Phí

    • Trang chủ
    • Về chúng tôi
    • Trang thông tin
      • Bản quyền & Khiếu nại
      • Quy định sử dụng
      • Miễn trừ trách nhiệm
    • Đáp án
    • Góc học tập
      • Toán học
      • Vật lý
      • Hóa học
      • Tiếng Anh
    • Trắc nghiệm
      • Question – Answer Quiz
      • Trắc nghiệm Tiếng Anh
      • Trắc nghiệm Đại học
      • Trắc nghiệm THPT
      • Trắc nghiệm THCS
      • Trắc nghiệm Tập huấn – Bồi dưỡng
    • Liên hệ
    • Sitemap
    • Trang chủ
    • Về chúng tôi
    • Trang thông tin
      • Bản quyền & Khiếu nại
      • Quy định sử dụng
      • Miễn trừ trách nhiệm
    • Đáp án
    • Góc học tập
      • Toán học
      • Vật lý
      • Hóa học
      • Tiếng Anh
    • Trắc nghiệm
      • Question – Answer Quiz
      • Trắc nghiệm Tiếng Anh
      • Trắc nghiệm Đại học
      • Trắc nghiệm THPT
      • Trắc nghiệm THCS
      • Trắc nghiệm Tập huấn – Bồi dưỡng
    • Liên hệ
    • Sitemap
    Tài Liệu Trọn Đời - Thư viện tài liệu học tập - 5

    Blog Cá Nhân | Chia Sẻ Tài Liệu Học Tập Miễn Phí

    Trang chủ » Trắc nghiệm THPT » 150+ câu hỏi trắc nghiệm tin học 11 bài 1 online có đáp án

    Trắc nghiệm THPT

    150+ câu hỏi trắc nghiệm tin học 11 bài 1 online có đáp án

    Ngày cập nhật: 15/07/2025

    ⚠️ Đọc lưu ý và miễn trừ trách nhiệm trước khi bắt đầu: Các câu hỏi và đáp án trong bộ trắc nghiệm này chỉ mang tính chất tham khảo, hỗ trợ học tập và ôn luyện. Đây KHÔNG PHẢI là đề thi chính thức, không đại diện cho bất kỳ tài liệu chuẩn hóa hay kiểm tra chứng chỉ nào từ các cơ quan giáo dục hay tổ chức cấp chứng chỉ chuyên môn. Website không chịu bất kỳ trách nhiệm nào liên quan đến độ chính xác của nội dung hoặc các quyết định được đưa ra dựa trên kết quả làm bài trắc nghiệm.

    Chào mừng bạn đến với bộ 150+ câu hỏi trắc nghiệm tin học 11 bài 1 online có đáp án. Bộ câu hỏi này được xây dựng để giúp bạn ôn luyện kiến thức một cách chủ động và hiệu quả. Hãy chọn một bộ câu hỏi bên dưới để bắt đầu ngay. Hãy tập trung và hoàn thành bài thật tốt nhé!

    1. Phát biểu nào sau đây mô tả đúng về toán tử logic ‘OR’ trong Pascal?

    A. Trả về true nếu cả hai toán hạng là true.
    B. Trả về true nếu ít nhất một trong hai toán hạng là true.
    C. Trả về true chỉ khi cả hai toán hạng là false.
    D. Toán tử này chỉ dùng cho số nguyên.

    2. Trong các kiểu dữ liệu cơ bản của Pascal, kiểu dữ liệu nào được sử dụng để biểu diễn một tập hợp các ký tự?

    A. integer
    B. real
    C. char
    D. string

    3. Phát biểu nào sau đây mô tả đúng về cấu trúc ‘case … of … end’ trong Pascal?

    A. Cấu trúc này dùng để lặp với số lần không xác định.
    B. Cấu trúc này cho phép chọn thực thi một trong nhiều khối lệnh dựa trên giá trị của một biểu thức.
    C. Cấu trúc này chỉ có thể so sánh hai giá trị.
    D. Cấu trúc này bắt buộc phải có mệnh đề ‘else’.

    4. Phát biểu nào sau đây mô tả đúng về vai trò của ‘program’ trong một chương trình Pascal?

    A. ‘program’ là từ khóa bắt buộc phải khai báo tên tệp của chương trình.
    B. ‘program’ là từ khóa dùng để khai báo biến toàn cục.
    C. ‘program’ là từ khóa để bắt đầu một vòng lặp.
    D. ‘program’ là từ khóa dùng để khai báo một hàm.

    5. Trong Pascal, ký tự nào thường được sử dụng để bắt đầu một dòng chú thích một dòng?

    A. //
    B. /*
    C. {
    D. —

    6. Phát biểu nào sau đây mô tả đúng về phạm vi của biến cục bộ (local variable) trong Pascal?

    A. Biến cục bộ có thể truy cập từ mọi nơi trong chương trình.
    B. Biến cục bộ chỉ có thể truy cập và sử dụng bên trong khối lệnh hoặc thủ tục mà nó được khai báo.
    C. Biến cục bộ tự động bị hủy khi chương trình kết thúc.
    D. Biến cục bộ luôn có giá trị ban đầu là 0.

    7. Trong ngôn ngữ lập trình Pascal, phát biểu nào sau đây mô tả đúng vai trò của ‘var’ trong khai báo biến?

    A. Từ khóa ‘var’ được sử dụng để khai báo hằng số.
    B. Từ khóa ‘var’ dùng để khai báo một thủ tục hoặc hàm.
    C. Từ khóa ‘var’ là bắt buộc phải có ở mọi vị trí trong chương trình.
    D. Từ khóa ‘var’ đứng đầu phần khai báo biến, theo sau là danh sách các biến và kiểu dữ liệu của chúng.

    8. Trong lập trình Pascal, câu lệnh nào dùng để hiển thị nội dung ra màn hình?

    A. readln()
    B. assign()
    C. writeln()
    D. close()

    9. Trong Pascal, nếu muốn truy cập vào phần tử thứ 5 của một mảng có tên là ‘myArray’, cú pháp đúng là gì?

    A. myArray(5)
    B. myArray[5]
    C. myArray.5
    D. myArray{5}

    10. Phát biểu nào sau đây mô tả đúng vai trò của khối lệnh ‘begin’ và ‘end.’ trong chương trình Pascal?

    A. Chúng dùng để khai báo các hằng số.
    B. Chúng đánh dấu sự bắt đầu và kết thúc của một khối lệnh chính hoặc một cấu trúc điều khiển.
    C. Chúng chỉ được sử dụng một lần duy nhất trong toàn bộ chương trình.
    D. Chúng dùng để gọi thực thi một hàm hoặc thủ tục.

    11. Phát biểu nào sau đây mô tả đúng về cách khai báo một mảng (array) trong Pascal?

    A. Mảng được khai báo bằng từ khóa ‘list’.
    B. Mảng được khai báo bằng từ khóa ‘array’ theo sau là phạm vi chỉ số và kiểu dữ liệu của phần tử.
    C. Mảng chỉ có thể chứa các phần tử có kiểu dữ liệu giống nhau.
    D. Mảng phải được khai báo sau khối ‘begin’.

    12. Phát biểu nào sau đây mô tả đúng về cấu trúc lặp ‘repeat … until’ trong Pascal?

    A. Cấu trúc này kiểm tra điều kiện trước khi thực thi khối lệnh.
    B. Cấu trúc này đảm bảo khối lệnh được thực thi ít nhất một lần.
    C. Cấu trúc này sẽ lặp vô hạn nếu điều kiện ‘until’ luôn sai.
    D. Cấu trúc này chỉ có thể lặp với số lần xác định trước.

    13. Trong Pascal, khi muốn thực hiện phép toán cộng hai biến kiểu integer là ‘x’ và ‘y’, cú pháp nào sau đây là đúng?

    A. x – y
    B. x / y
    C. x * y
    D. x + y

    14. Trong Pascal, từ khóa nào được sử dụng để khai báo một thủ tục (procedure)?

    A. function
    B. begin
    C. procedure
    D. var

    15. Phát biểu nào sau đây mô tả đúng về cấu trúc lặp ‘for … do’ trong Pascal?

    A. Cấu trúc này dùng để lặp với số lần không xác định trước.
    B. Cấu trúc này yêu cầu phải biết trước số lần lặp.
    C. Cấu trúc này chỉ dùng để lặp khi thỏa mãn một điều kiện logic.
    D. Cấu trúc này không yêu cầu biến đếm.

    16. Phát biểu nào sau đây mô tả đúng về toán tử ‘/’ trong Pascal khi áp dụng cho hai biến kiểu ‘integer’?

    A. Trả về kết quả là số nguyên, làm tròn xuống.
    B. Trả về kết quả là số thực, có thể có phần thập phân.
    C. Gây ra lỗi biên dịch.
    D. Trả về kết quả là số nguyên, làm tròn lên.

    17. Trong Pascal, toán tử nào được sử dụng để so sánh hai giá trị và trả về giá trị logic (true/false)?

    A. :=
    B. +
    C. >
    D. AND

    18. Phát biểu nào sau đây mô tả đúng về sự khác biệt giữa thủ tục (procedure) và hàm (function) trong Pascal?

    A. Thủ tục trả về giá trị, hàm thì không.
    B. Hàm có thể có tham số, thủ tục thì không.
    C. Hàm thường dùng để thực hiện một hành động, còn thủ tục thường dùng để tính toán và trả về một giá trị.
    D. Hàm bắt buộc phải có từ khóa ‘return’, thủ tục thì không.

    19. Phát biểu nào sau đây mô tả đúng về hằng số trong Pascal?

    A. Hằng số có thể thay đổi giá trị trong quá trình chương trình chạy.
    B. Hằng số được khai báo bằng từ khóa ‘var’ và có giá trị cố định.
    C. Hằng số được khai báo bằng từ khóa ‘const’ và có giá trị không đổi trong suốt quá trình thực thi chương trình.
    D. Hằng số chỉ có thể là số nguyên.

    20. Phát biểu nào sau đây là đúng về sự khác biệt giữa kiểu dữ liệu ‘integer’ và ‘real’ trong Pascal?

    A. ‘integer’ lưu số có dấu phẩy động, ‘real’ chỉ lưu số nguyên.
    B. ‘integer’ lưu số nguyên, ‘real’ lưu số có phần thập phân.
    C. ‘integer’ chỉ lưu số dương, ‘real’ lưu cả số dương và âm.
    D. ‘integer’ có phạm vi lưu trữ lớn hơn ‘real’.

    21. Khi khai báo biến kiểu ‘char’ trong Pascal, biến đó có thể lưu trữ loại dữ liệu nào?

    A. Chỉ các số nguyên.
    B. Chỉ các chuỗi ký tự dài.
    C. Một ký tự đơn lẻ, ví dụ: ‘A’, ‘b’, ‘7’, ‘$’.
    D. Các giá trị đúng hoặc sai.

    22. Trong Pascal, nếu muốn đọc giá trị từ bàn phím vào một biến kiểu ‘integer’, câu lệnh nào sau đây là phù hợp?

    A. write(bien_integer);
    B. readln(bien_integer);
    C. assign(bien_integer);
    D. close(bien_integer);

    23. Trong Pascal, kiểu dữ liệu ‘real’ được sử dụng để lưu trữ loại thông tin nào?

    A. Các số nguyên dương và số 0.
    B. Các ký tự đơn lẻ.
    C. Các số thực, bao gồm cả số nguyên và số thập phân.
    D. Các giá trị logic đúng hoặc sai.

    24. Xét đoạn mã Pascal sau:
    program Example;
    var
    a: integer;
    begin
    a := 10;
    writeln(‘Gia tri cua a la: ‘, a);
    end.

    Phát biểu nào sau đây mô tả đúng nhất chức năng của câu lệnh ‘a := 10;’?

    A. Câu lệnh này dùng để so sánh giá trị của biến ‘a’ với 10.
    B. Câu lệnh này gán giá trị số nguyên 10 cho biến ‘a’.
    C. Câu lệnh này khai báo một biến mới tên là ‘a’ với giá trị là 10.
    D. Câu lệnh này thực hiện phép chia biến ‘a’ cho 10.

    25. Trong Pascal, tham số truyền cho thủ tục hoặc hàm có thể là kiểu giá trị (value parameter) hoặc kiểu tham chiếu (reference parameter). Tham số kiểu giá trị có đặc điểm gì?

    A. Mọi thay đổi của tham số bên trong thủ tục/hàm sẽ ảnh hưởng đến biến gốc bên ngoài.
    B. Tham số chỉ nhận một bản sao của giá trị biến gốc, mọi thay đổi bên trong không ảnh hưởng đến biến gốc.
    C. Tham số phải là biến toàn cục.
    D. Tham số chỉ có thể là kiểu integer.

    26. Trong Pascal, cấu trúc lặp ‘while … do’ sẽ thực hiện khối lệnh bên trong khi nào?

    A. Ngay cả khi điều kiện ban đầu là sai.
    B. Chỉ khi điều kiện đi kèm với ‘while’ là đúng.
    C. Sau khi khối lệnh đã thực thi ít nhất một lần, bất kể điều kiện.
    D. Khi người dùng nhập vào một ký tự đặc biệt.

    27. Phát biểu nào sau đây mô tả đúng mục đích của việc sử dụng chú thích (comment) trong chương trình Pascal?

    A. Chú thích là một phần của mã lệnh và sẽ được trình biên dịch thực thi.
    B. Chú thích giúp giải thích mã lệnh cho người đọc, không ảnh hưởng đến quá trình thực thi của chương trình.
    C. Chú thích chỉ có thể bắt đầu bằng ký tự ‘#’.
    D. Chú thích chỉ dùng để hiển thị thông tin trên màn hình khi chương trình chạy.

    28. Phát biểu nào sau đây mô tả chính xác về cách khai báo chuỗi ký tự (string) trong Pascal?

    A. Chuỗi ký tự được khai báo bằng từ khóa ‘char’ và có thể chứa nhiều ký tự.
    B. Chuỗi ký tự được khai báo bằng từ khóa ‘string’ và có thể chứa nhiều ký tự.
    C. Chuỗi ký tự không thể khai báo trực tiếp mà phải thông qua mảng ký tự.
    D. Chuỗi ký tự luôn được bao bởi cặp dấu nháy kép (“).

    29. Xét đoạn mã Pascal:
    program Test;
    const
    PI = 3.14159;
    var
    radius, area: real;
    begin
    radius := 5.0;
    area := PI * radius * radius;
    writeln(‘Dien tich la: ‘, area);
    end.

    Trong đoạn mã trên, ‘PI’ được định nghĩa là gì?

    A. Một biến kiểu real.
    B. Một hằng số kiểu real.
    C. Một thủ tục.
    D. Một hàm.

    30. Trong Pascal, cấu trúc điều kiện ‘if … then … else …’ dùng để làm gì?

    A. Thực hiện một khối lệnh lặp lại nhiều lần.
    B. Chọn một trong hai hành động dựa trên một điều kiện logic.
    C. Khai báo một biến mới.
    D. Gán giá trị cho một biến.

    31. Khi bạn cần thực hiện một hành động dựa trên nhiều điều kiện khác nhau, cấu trúc nào sau đây là phù hợp nhất?

    A. Vòng lặp ‘while’.
    B. Cấu trúc ‘if-else if-else’.
    C. Khai báo biến.
    D. Câu lệnh ‘return’.

    32. Khi bạn muốn chương trình thực hiện một hành động ít nhất một lần, bất kể điều kiện ban đầu là gì, bạn nên sử dụng loại vòng lặp nào?

    A. Vòng lặp ‘for’.
    B. Vòng lặp ‘while’.
    C. Vòng lặp ‘do-while’.
    D. Cấu trúc ‘switch-case’.

    33. Phát biểu nào sau đây mô tả đúng nhất vai trò của câu lệnh ‘printf’ trong ngôn ngữ lập trình C?

    A. Đọc dữ liệu từ bàn phím và lưu vào biến.
    B. Thực hiện các phép toán số học.
    C. Xuất dữ liệu ra màn hình.
    D. Kiểm tra điều kiện để rẽ nhánh chương trình.

    34. Khi một chương trình yêu cầu người dùng nhập tuổi, và tuổi đó phải nằm trong khoảng từ 18 đến 65, bạn sẽ sử dụng cấu trúc điều kiện nào để kiểm tra tính hợp lệ?

    A. if (tuoi < 18)
    B. if (tuoi > 65)
    C. if (tuoi >= 18 && tuoi <= 65)
    D. if (tuoi == 18 || tuoi == 65)

    35. Nếu bạn muốn một chương trình thực hiện một hành động duy nhất và không cần lặp lại, bạn thường chỉ cần sử dụng các câu lệnh tuần tự hoặc cấu trúc điều kiện, không cần vòng lặp.

    A. Đúng, vì vòng lặp chỉ dùng cho việc lặp lại.
    B. Sai, vòng lặp luôn cần thiết ngay cả khi chỉ thực hiện một lần.
    C. Đúng, nhưng cấu trúc ‘if’ cũng có thể được coi là một dạng lặp.
    D. Sai, hành động duy nhất vẫn cần một vòng lặp có điều kiện sai ngay lập tức.

    36. Tại sao việc đặt tên biến có ý nghĩa lại quan trọng trong lập trình?

    A. Để chương trình chạy nhanh hơn.
    B. Để mã nguồn dễ đọc, dễ hiểu và dễ bảo trì hơn.
    C. Để giảm dung lượng bộ nhớ sử dụng.
    D. Để ngăn chặn người khác sao chép mã nguồn.

    37. Trong lập trình, một vòng lặp ‘for’ thường được sử dụng khi nào?

    A. Khi số lần lặp là không xác định trước.
    B. Khi cần thực hiện một hành động duy nhất.
    C. Khi số lần lặp đã được xác định rõ ràng trước khi bắt đầu vòng lặp.
    D. Khi cần kiểm tra điều kiện trước mỗi lần lặp.

    38. Phát biểu nào sau đây đúng về ‘biến’ (variable) trong lập trình?

    A. Là một tập hợp các câu lệnh.
    B. Là một vùng nhớ được đặt tên để lưu trữ dữ liệu có thể thay đổi trong quá trình chạy chương trình.
    C. Là một hằng số không thể thay đổi.
    D. Là một quy trình xử lý.

    39. Trong lập trình, một ‘hằng số’ (constant) có đặc điểm gì nổi bật?

    A. Giá trị của nó có thể thay đổi trong quá trình chạy chương trình.
    B. Giá trị của nó được xác định một lần và không thể thay đổi trong suốt quá trình chạy chương trình.
    C. Nó chỉ có thể lưu trữ các giá trị số nguyên.
    D. Nó không cần được khai báo kiểu dữ liệu.

    40. Phát biểu nào sau đây đúng về một chương trình máy tính?

    A. Chương trình là tập hợp các lệnh chỉ có thể thực thi bởi phần cứng.
    B. Chương trình là một tập hợp các chỉ thị hoặc câu lệnh mà máy tính có thể hiểu và thực thi để hoàn thành một nhiệm vụ.
    C. Chương trình chỉ bao gồm các phép toán số học.
    D. Chương trình là một phần cứng chuyên dụng để xử lý dữ liệu.

    41. Phát biểu nào sau đây mô tả đúng về ‘mảng’ (array) trong lập trình?

    A. Là một biến đơn có thể lưu trữ nhiều loại dữ liệu khác nhau.
    B. Là một tập hợp các biến riêng lẻ, mỗi biến có tên và kiểu dữ liệu khác nhau.
    C. Là một tập hợp các biến cùng kiểu dữ liệu, được lưu trữ liên tiếp trong bộ nhớ và truy cập thông qua một chỉ số (index).
    D. Là một cấu trúc dữ liệu chỉ dùng để lưu trữ các số nguyên.

    42. Đâu là mục đích chính của việc sử dụng cấu trúc điều kiện ‘if-else’ trong lập trình?

    A. Lặp lại một khối lệnh nhiều lần.
    B. Chọn một trong hai hoặc nhiều khối lệnh để thực thi dựa trên điều kiện.
    C. Khai báo một biến mới.
    D. Thoát khỏi vòng lặp hiện tại.

    43. Khi một chương trình máy tính thực hiện phép chia cho 0, hậu quả phổ biến nhất là gì?

    A. Chương trình sẽ tự động sửa lỗi và tiếp tục chạy.
    B. Chương trình sẽ in ra một giá trị rất lớn hoặc vô cùng.
    C. Chương trình sẽ dừng đột ngột, gây ra lỗi runtime (ví dụ: chia cho 0 error).
    D. Chương trình sẽ bỏ qua phép tính và tiếp tục với câu lệnh tiếp theo.

    44. Trong ngôn ngữ C, cú pháp khai báo một mảng gồm 10 phần tử kiểu số nguyên sẽ như thế nào?

    A. int array[10];
    B. array int[10];
    C. int array(10);
    D. array = int[10];

    45. Trong ngôn ngữ C, dấu chấm phẩy (;) dùng để làm gì ở cuối câu lệnh?

    A. Bắt đầu một khối lệnh mới.
    B. Kết thúc một câu lệnh.
    C. Tạo một dòng mới trong mã nguồn.
    D. Đánh dấu một chú thích.

    46. Trong lập trình C, câu lệnh nào được sử dụng để khai báo một biến kiểu số thực với độ chính xác cao (double-precision floating-point)?

    A. ‘float’
    B. ‘int’
    C. ‘double’
    D. ‘char’

    47. Phát biểu nào sau đây mô tả đúng về ‘thông dịch’ (interpretation) trong lập trình?

    A. Là quá trình chuyển đổi toàn bộ mã nguồn thành mã máy trước khi chạy.
    B. Là quá trình dịch và thực thi từng câu lệnh của mã nguồn một cách tuần tự.
    C. Là quá trình gỡ lỗi và sửa lỗi cú pháp.
    D. Là quá trình tối ưu hóa hiệu năng chương trình.

    48. Phát biểu nào sau đây đúng nhất về ‘mã máy’ (machine code)?

    A. Là ngôn ngữ lập trình dễ đọc cho con người.
    B. Là tập hợp các chỉ thị mà bộ xử lý trung tâm (CPU) có thể hiểu và thực thi trực tiếp.
    C. Là một dạng mã trung gian được tạo ra sau khi biên dịch.
    D. Là ngôn ngữ được sử dụng để viết tài liệu kỹ thuật.

    49. Trong lập trình C, làm thế nào để bạn truy cập phần tử đầu tiên của một mảng có tên ‘myArray’?

    A. myArray[1];
    B. myArray[0];
    C. myArray;
    D. myArray.first;

    50. Phát biểu nào sau đây mô tả đúng về ‘biên dịch’ (compilation) trong lập trình?

    A. Là quá trình chạy trực tiếp mã nguồn.
    B. Là quá trình chuyển đổi mã nguồn viết bằng ngôn ngữ cấp cao thành mã máy (hoặc mã trung gian) mà máy tính có thể thực thi.
    C. Là quá trình gỡ lỗi chương trình.
    D. Là quá trình thiết kế giao diện người dùng.

    51. Trong lập trình C, kiểu dữ liệu ‘char’ được sử dụng để lưu trữ loại giá trị nào?

    A. Số nguyên.
    B. Số thực.
    C. Ký tự đơn lẻ.
    D. Chuỗi ký tự.

    52. Trong ngôn ngữ C, ký tự nào được sử dụng để tạo chú thích một dòng?

    A. //
    B. /*
    C. —
    D. #

    53. Trong lập trình C, hàm ‘sqrt()’ được sử dụng để làm gì?

    A. Tính toán lũy thừa.
    B. Tính căn bậc hai.
    C. Tính giá trị tuyệt đối.
    D. Làm tròn số.

    54. Phát biểu nào sau đây mô tả đúng về ‘ngôn ngữ lập trình’?

    A. Là một loại phần cứng máy tính.
    B. Là một tập hợp các quy tắc và ký hiệu được sử dụng để viết các chương trình máy tính.
    C. Là một thuật toán duy nhất.
    D. Là một thiết bị nhập liệu.

    55. Phát biểu nào sau đây mô tả đúng khái niệm ‘thuật toán’ (algorithm) trong khoa học máy tính?

    A. Là một chương trình máy tính hoàn chỉnh.
    B. Là một tập hợp các bước hữu hạn, rõ ràng và tuần tự để giải quyết một vấn đề hoặc thực hiện một nhiệm vụ.
    C. Là giao diện người dùng của một ứng dụng.
    D. Là một loại phần cứng máy tính.

    56. Tại sao các ngôn ngữ lập trình hiện đại thường cung cấp nhiều kiểu dữ liệu khác nhau?

    A. Để làm cho việc lập trình phức tạp hơn.
    B. Để cho phép lập trình viên lựa chọn kiểu dữ liệu phù hợp nhất với từng loại thông tin, tối ưu hóa bộ nhớ và hiệu năng.
    C. Để chỉ cho phép lưu trữ các giá trị số.
    D. Để yêu cầu nhiều bước biên dịch hơn.

    57. Nếu bạn cần lưu trữ một chuỗi ký tự ‘Hello World’ trong một biến, bạn sẽ sử dụng kiểu dữ liệu nào?

    A. ‘int’
    B. ‘float’
    C. ‘char’
    D. ‘char’ (dưới dạng mảng ký tự hoặc chuỗi)

    58. Phát biểu nào sau đây mô tả đúng vai trò của câu lệnh ‘scanf’ trong ngôn ngữ C?

    A. Dùng để định dạng và hiển thị văn bản ra màn hình.
    B. Dùng để khai báo kích thước của một mảng.
    C. Dùng để đọc dữ liệu nhập từ bàn phím và gán vào biến.
    D. Dùng để thực hiện các phép so sánh điều kiện.

    59. Nếu một chương trình cần thực hiện một hành động lặp đi lặp lại cho đến khi một điều kiện không còn đúng nữa, cấu trúc vòng lặp nào thường được ưu tiên sử dụng?

    A. Vòng lặp ‘for’.
    B. Vòng lặp ‘while’.
    C. Cấu trúc ‘if-else’.
    D. Câu lệnh ‘goto’.

    60. Trong lập trình, một biến được khai báo với kiểu dữ liệu ‘int’ có thể lưu trữ những loại giá trị nào?

    A. Các số nguyên, bao gồm cả số dương, số âm và số không.
    B. Các số thực có phần thập phân.
    C. Các ký tự đơn lẻ, ví dụ ‘a’, ‘b’.
    D. Các chuỗi ký tự, ví dụ ‘xin chào’.

    61. Phát biểu nào sau đây là đúng khi nói về kiểu dữ liệu số nguyên trong Pascal?

    A. Kiểu dữ liệu số nguyên chỉ biểu diễn được các số nguyên không có phần thập phân.
    B. Tất cả các kiểu số nguyên đều có phạm vi biểu diễn giá trị như nhau.
    C. Kiểu dữ liệu ‘Real’ dùng để biểu diễn số nguyên.
    D. Phép chia lấy phần dư chỉ áp dụng được cho kiểu ‘Real’.

    62. Sự khác biệt cơ bản giữa vòng lặp While và Repeat-Until trong Pascal là gì?

    A. While kiểm tra điều kiện sau, Repeat-Until kiểm tra điều kiện trước.
    B. While thực hiện ít nhất một lần, Repeat-Until có thể không thực hiện lần nào.
    C. While kiểm tra điều kiện trước, Repeat-Until kiểm tra điều kiện sau (và thực hiện ít nhất một lần).
    D. While dùng cho số lần lặp xác định, Repeat-Until dùng cho số lần lặp không xác định.

    63. Phát biểu nào sau đây là đúng về kiểu dữ liệu logic (Boolean) trong Pascal?

    A. Kiểu Boolean chỉ có hai giá trị là ‘True’ và ‘False’.
    B. Kiểu Boolean có thể lưu trữ số nguyên.
    C. Kiểu Boolean được sử dụng để biểu diễn chuỗi ký tự.
    D. Toán tử ‘and’, ‘or’, ‘not’ chỉ áp dụng cho kiểu Real.

    64. Trong ngôn ngữ lập trình Pascal, cú pháp khai báo biến nào sau đây là đúng?

    A. Var ten_bien : kieu_du_lieu;
    B. Ten_bien : Var kieu_du_lieu;
    C. Kieu_du_lieu : Var ten_bien;
    D. Begin ten_bien : kieu_du_lieu;

    65. Trong Pascal, để truy cập phần tử thứ 5 của mảng ‘A’ có kiểu dữ liệu là ‘integer’, ta sử dụng cú pháp nào?

    A. A[5]
    B. A(5)
    C. A.5
    D. A{5}

    66. Trong Pascal, phát biểu nào sau đây mô tả đúng về toán tử so sánh ‘>= ‘?

    A. So sánh xem hai giá trị có bằng nhau không.
    B. So sánh xem giá trị bên trái có lớn hơn hoặc bằng giá trị bên phải không.
    C. So sánh xem giá trị bên trái có khác giá trị bên phải không.
    D. So sánh xem giá trị bên trái có nhỏ hơn giá trị bên phải không.

    67. Cú pháp nào sau đây là đúng cho vòng lặp For trong Pascal khi đếm tăng dần từ 1 đến 10?

    A. For i := 10 downto 1 do
    B. For i := 1 to 10 do
    C. While i <= 10 do
    D. Repeat i := i + 1 until i > 10;

    68. Cú pháp nào sau đây là đúng cho vòng lặp Repeat-Until trong Pascal?

    A. While dieu_kien do begin … end;
    B. For i := 1 to 10 do begin … end;
    C. Repeat … Until dieu_kien;
    D. Case bien of … end;

    69. Toán tử nào trong Pascal được sử dụng để thực hiện phép chia lấy phần dư?

    A. div
    B. mod
    C. real
    D. and

    70. Phát biểu nào sau đây là đúng về cách khai báo một biến kiểu số thực (Real) trong Pascal?

    A. Sử dụng từ khóa ‘Integer’.
    B. Sử dụng từ khóa ‘Real’ hoặc ‘Double’.
    C. Sử dụng từ khóa ‘Char’.
    D. Không cần khai báo, có thể dùng trực tiếp.

    71. Phát biểu nào sau đây là đúng về khai báo biến tham số trong Pascal (ví dụ: var x: integer)?

    A. Biến được khai báo theo cách này là biến toàn cục.
    B. Biến được khai báo theo cách này là biến cục bộ, chỉ tồn tại trong phạm vi khai báo.
    C. Biến này chỉ có thể được gán giá trị, không thể đọc giá trị.
    D. Biến này có thể được truy cập từ bất kỳ đâu trong chương trình.

    72. Phát biểu nào sau đây mô tả chính xác nhất mục đích của việc sử dụng các khối ‘begin’ và ‘end’ trong Pascal?

    A. Để định nghĩa các biến.
    B. Để nhóm một hoặc nhiều câu lệnh thành một khối logic.
    C. Để kết thúc chương trình.
    D. Để khai báo các thủ tục và hàm.

    73. Xét đoạn mã Pascal sau: `x := 5; y := 2; z := x div y;`. Giá trị của biến ‘z’ sau khi thực hiện đoạn mã này là bao nhiêu?

    A. 2
    B. 2.5
    C. 3
    D. 1

    74. Phát biểu nào sau đây là đúng về cách khai báo một mảng một chiều trong Pascal?

    A. Var ten_mang : array [kieu_chỉ_so] of kieu_du_lieu;
    B. Ten_mang : array of kieu_du_lieu [kieu_chỉ_so];
    C. Var kieu_du_lieu : array [kieu_chỉ_so] of ten_mang;
    D. Array ten_mang : kieu_du_lieu [kieu_chỉ_so];

    75. Phát biểu nào sau đây là sai về kiểu dữ liệu ký tự (Char) trong Pascal?

    A. Kiểu Char có thể lưu trữ một chuỗi ký tự.
    B. Mỗi ký tự được biểu diễn bởi một mã số duy nhất (ví dụ: mã ASCII).
    C. Kiểu Char được khai báo bằng từ khóa ‘Char’.
    D. Ký tự được đặt trong cặp dấu nháy đơn (ví dụ: ‘A’).

    76. Trong Pascal, để biểu diễn một chuỗi ký tự, ta sử dụng kiểu dữ liệu nào?

    A. Char
    B. String
    C. Boolean
    D. Real

    77. Khi gọi một thủ tục trong Pascal, cú pháp đúng là:

    A. Call ten_thu_tuc(tham_so);
    B. ten_thu_tuc(tham_so);
    C. Execute ten_thu_tuc(tham_so);
    D. Run ten_thu_tuc(tham_so);

    78. Trong Pascal, câu lệnh ‘If (a > b) and (a > c) then writeln(‘a lon nhat’);’ dùng để làm gì?

    A. So sánh a với b và a với c, nếu cả hai điều kiện đều đúng thì in ra ‘a lon nhat’.
    B. So sánh a với b hoặc a với c, nếu một trong hai điều kiện đúng thì in ra ‘a lon nhat’.
    C. So sánh a có lớn hơn b hay không, nếu đúng thì tiếp tục so sánh a với c.
    D. In ra ‘a lon nhat’ nếu a lớn hơn b, bỏ qua nếu a nhỏ hơn hoặc bằng b.

    79. Trong Pascal, làm thế nào để khai báo một hằng số?

    A. Sử dụng từ khóa ‘Var’ rồi gán giá trị.
    B. Sử dụng từ khóa ‘Const’ rồi đặt tên và giá trị.
    C. Sử dụng từ khóa ‘Define’ rồi đặt tên và giá trị.
    D. Không có cách khai báo hằng số riêng biệt, chỉ dùng biến.

    80. Trong Pascal, để khai báo một biến có thể nhận giá trị True hoặc False, ta sử dụng kiểu dữ liệu nào?

    A. Char
    B. Integer
    C. Boolean
    D. Real

    81. Phát biểu nào sau đây là đúng về việc khai báo một thủ tục (procedure) trong Pascal?

    A. Thủ tục không thể nhận tham số.
    B. Thủ tục bắt buộc phải trả về một giá trị.
    C. Thủ tục được khai báo bằng từ khóa ‘Function’.
    D. Thủ tục là một khối lệnh có tên, có thể được gọi để thực thi.

    82. Khi sử dụng thủ tục ‘ClrScr’ từ thư viện CRT trong Pascal, mục đích chính là gì?

    A. Đọc một ký tự từ bàn phím.
    B. Xóa toàn bộ nội dung trên màn hình console.
    C. Định vị con trỏ tại một vị trí cụ thể trên màn hình.
    D. Thay đổi màu sắc chữ trên màn hình.

    83. Trong Pascal, cú pháp ‘writeln(‘Ket qua: ‘, bien_so);’ sẽ thực hiện hành động gì?

    A. In ra màn hình chuỗi ‘Ket qua: ‘ rồi dừng chương trình.
    B. In ra màn hình chuỗi ‘Ket qua: ‘ theo sau là giá trị của biến ‘bien_so’, sau đó xuống dòng.
    C. Chỉ in ra giá trị của biến ‘bien_so’.
    D. In ra màn hình chuỗi ‘Ket qua: ‘ rồi tiếp tục ghi trên cùng dòng.

    84. Phát biểu nào sau đây là đúng về việc sử dụng ‘uses crt;’ trong Pascal?

    A. Nó cho phép chương trình tương tác với hệ điều hành.
    B. Nó cung cấp các thủ tục và hàm liên quan đến màn hình và bàn phím.
    C. Nó dùng để khai báo các biến toàn cục.
    D. Nó là bắt buộc cho mọi chương trình Pascal.

    85. Xét đoạn mã Pascal: `x := 7; y := 3; z := x / y;`. Giá trị của biến ‘z’ (kiểu Real) sau khi thực hiện là bao nhiêu?

    A. 2
    B. 2.33333333
    C. 2.0
    D. 3

    86. Trong Pascal, sự khác biệt chính giữa một ‘Procedure’ và một ‘Function’ là gì?

    A. Procedure dùng để tính toán, Function để điều khiển luồng.
    B. Function trả về một giá trị, Procedure thì không.
    C. Procedure có thể có tham số, Function thì không.
    D. Function phải được khai báo trong phần ‘Uses’, Procedure thì không.

    87. Phát biểu nào sau đây là đúng về vòng lặp While trong Pascal?

    A. Vòng lặp While luôn thực hiện ít nhất một lần.
    B. Vòng lặp While kiểm tra điều kiện trước khi thực hiện khối lệnh.
    C. Vòng lặp While không cần điều kiện dừng.
    D. Điều kiện trong vòng lặp While phải là số nguyên.

    88. Để thực hiện một khối lệnh nhiều lần trong Pascal, ta thường sử dụng cấu trúc lặp nào?

    A. Cấu trúc rẽ nhánh If-Then-Else
    B. Cấu trúc lặp For
    C. Cấu trúc tuần tự
    D. Cấu trúc rẽ nhánh Case

    89. Phát biểu nào sau đây là sai về cấu trúc ‘If … Then … Else …’ trong Pascal?

    A. Nó cho phép lựa chọn thực thi một trong hai khối lệnh.
    B. Khối ‘Else’ là tùy chọn, có thể có hoặc không.
    C. Điều kiện trong ‘If’ phải là một giá trị kiểu Boolean.
    D. Nó chỉ cho phép so sánh hai giá trị bằng hoặc khác nhau.

    90. Cấu trúc ‘Case … Of … End’ trong Pascal được sử dụng chủ yếu để:

    A. Thực hiện một lệnh lặp nhiều lần.
    B. Thực hiện một trong nhiều khối lệnh dựa trên giá trị của một biến.
    C. Rẽ nhánh dựa trên hai điều kiện đúng/sai.
    D. Thực hiện các phép toán số học phức tạp.

    91. Phát biểu nào sau đây mô tả đúng về ‘thuật toán’?

    A. Một tập hợp các bước hữu hạn, rõ ràng và có thứ tự để giải quyết một vấn đề hoặc thực hiện một nhiệm vụ cụ thể.
    B. Một ngôn ngữ lập trình cụ thể.
    C. Một phần cứng máy tính.
    D. Một chương trình đã được biên dịch.

    92. Trong thiết kế thuật toán, bước ‘lựa chọn cấu trúc dữ liệu’ đóng vai trò gì?

    A. Quyết định cách tổ chức và lưu trữ dữ liệu để thuật toán hoạt động hiệu quả.
    B. Viết các câu lệnh điều khiển luồng chương trình.
    C. Định nghĩa các hằng số cho thuật toán.
    D. Tạo ra giao diện đồ họa cho thuật toán.

    93. Khi khai báo một biến với kiểu dữ liệu ‘số nguyên’ (integer), loại giá trị nào sau đây là phù hợp nhất để gán cho biến đó?

    A. Một số nguyên dương hoặc âm, ví dụ: 10, -5.
    B. Một số thực có phần thập phân, ví dụ: 3.14.
    C. Một chuỗi ký tự, ví dụ: ‘Hello World’.
    D. Một giá trị logic (đúng/sai).

    94. Phát biểu nào sau đây mô tả đúng về ‘ngôn ngữ lập trình bậc cao’?

    A. Ngôn ngữ gần với ngôn ngữ tự nhiên của con người, dễ đọc, dễ viết và trừu tượng hóa nhiều chi tiết của phần cứng.
    B. Ngôn ngữ chỉ dùng để điều khiển trực tiếp phần cứng máy tính.
    C. Ngôn ngữ chỉ bao gồm các mã máy.
    D. Ngôn ngữ không cần biên dịch hoặc thông dịch.

    95. Trong lập trình, việc sử dụng ‘câu lệnh `break`’ bên trong một vòng lặp thường có mục đích gì?

    A. Thoát khỏi vòng lặp ngay lập tức, ngay cả khi điều kiện lặp vẫn còn đúng.
    B. Tiếp tục vòng lặp với lần lặp tiếp theo.
    C. Nhảy đến một phần khác của chương trình.
    D. Định nghĩa một biến mới.

    96. Trong lập trình, khái niệm ‘phạm vi của biến’ (scope of a variable) đề cập đến điều gì?

    A. Khu vực hoặc ngữ cảnh trong chương trình mà biến đó có thể được truy cập và sử dụng.
    B. Thời gian tồn tại của biến trong bộ nhớ.
    C. Kiểu dữ liệu của biến.
    D. Tên duy nhất của biến trong toàn bộ chương trình.

    97. Trong quá trình lập trình, ‘biên dịch’ (compilation) là bước thực hiện chức năng gì?

    A. Chuyển đổi mã nguồn được viết bằng ngôn ngữ lập trình bậc cao (ví dụ: C++, Java) thành mã máy mà bộ xử lý của máy tính có thể hiểu và thực thi.
    B. Thực thi trực tiếp mã nguồn trên máy tính.
    C. Tìm và sửa lỗi cú pháp trong mã nguồn.
    D. Tối ưu hóa hiệu năng của chương trình.

    98. Trong vòng lặp `while`, điều gì sẽ xảy ra nếu điều kiện của vòng lặp luôn đúng?

    A. Chương trình sẽ rơi vào vòng lặp vô hạn (infinite loop), thực thi khối lệnh bên trong mãi mãi.
    B. Chương trình sẽ tự động dừng.
    C. Chương trình sẽ chuyển sang vòng lặp for.
    D. Chương trình sẽ báo lỗi và thoát.

    99. Khi một khối lệnh cần được lặp đi lặp lại nhiều lần dựa trên một điều kiện hoặc một số lần xác định trước, cấu trúc điều khiển nào được sử dụng?

    A. Cấu trúc lặp (ví dụ: vòng lặp while, for).
    B. Cấu trúc tuần tự.
    C. Cấu trúc rẽ nhánh.
    D. Cấu trúc khai báo biến.

    100. Khi một chương trình cần thực hiện một tác vụ tương tự nhau nhiều lần với các dữ liệu đầu vào khác nhau, việc sử dụng ‘hàm’ (function) mang lại lợi ích gì?

    A. Tái sử dụng mã nguồn, giúp chương trình ngắn gọn, dễ đọc và dễ bảo trì hơn.
    B. Tăng dung lượng bộ nhớ chương trình sử dụng.
    C. Làm cho chương trình chậm hơn.
    D. Bắt buộc người dùng phải nhập dữ liệu mỗi lần.

    101. Khi thiết kế một thuật toán sắp xếp, mục tiêu chính là gì?

    A. Sắp xếp các phần tử của một tập hợp dữ liệu theo một thứ tự nhất định (tăng dần hoặc giảm dần).
    B. Tìm kiếm một phần tử cụ thể trong tập hợp dữ liệu.
    C. Tính toán tổng của các phần tử.
    D. Xóa bỏ các phần tử trùng lặp.

    102. Phát biểu nào sau đây là đúng về ‘mã giả’ (pseudocode) trong lập trình?

    A. Một cách mô tả thuật toán bằng ngôn ngữ tự nhiên kết hợp với các cấu trúc lập trình, không phụ thuộc vào cú pháp của một ngôn ngữ lập trình cụ thể nào.
    B. Là mã nguồn cuối cùng của một chương trình đã biên dịch.
    C. Chỉ là một bản phác thảo sơ sài, không có tính cấu trúc.
    D. Được sử dụng để kiểm tra lỗi thời gian chạy của chương trình.

    103. Khi phân tích một bài toán để thiết kế thuật toán, bước ‘xác định yêu cầu’ có ý nghĩa gì?

    A. Hiểu rõ vấn đề cần giải quyết, đầu vào của bài toán và kết quả mong muốn.
    B. Viết mã nguồn của thuật toán.
    C. Kiểm tra lại các lỗi cú pháp.
    D. Tối ưu hóa hiệu suất của thuật toán.

    104. Khái niệm ‘gỡ lỗi’ (debugging) trong lập trình đề cập đến hoạt động nào?

    A. Tìm kiếm, xác định và sửa chữa các lỗi (bug) trong mã nguồn của chương trình.
    B. Viết mã nguồn mới cho chương trình.
    C. Tài liệu hóa chức năng của chương trình.
    D. Thiết kế giao diện người dùng.

    105. Trong lập trình, khái niệm ‘biến’ được sử dụng để làm gì?

    A. Lưu trữ dữ liệu có thể thay đổi trong quá trình thực thi chương trình.
    B. Định nghĩa cấu trúc dữ liệu cố định cho toàn bộ chương trình.
    C. Thực hiện các phép toán số học phức tạp.
    D. Điều khiển luồng thực thi của chương trình thông qua các câu lệnh điều kiện.

    106. Ngôn ngữ lập trình nào sau đây thường được coi là ‘ngôn ngữ lập trình bậc thấp’?

    A. Assembly.
    B. Python.
    C. Java.
    D. C++.

    107. Ngôn ngữ lập trình nào sau đây thường được biết đến là ngôn ngữ thông dịch?

    A. Python.
    B. C++.
    C. Java (thường biên dịch sang bytecode rồi thông dịch/JIT).
    D. C.

    108. Phát biểu nào sau đây mô tả đúng về ‘môi trường phát triển tích hợp’ (IDE – Integrated Development Environment)?

    A. Một bộ công cụ phần mềm cung cấp các chức năng cần thiết cho việc phát triển phần mềm, bao gồm soạn thảo mã nguồn, biên dịch, gỡ lỗi và quản lý dự án.
    B. Chỉ là một trình soạn thảo văn bản đơn giản để viết mã.
    C. Một công cụ chỉ dùng để chạy thử nghiệm chương trình đã biên dịch.
    D. Một hệ thống quản lý cơ sở dữ liệu.

    109. Trong một chương trình, nếu có một điều kiện được đặt ra và chương trình sẽ thực hiện một khối lệnh khác nhau tùy thuộc vào việc điều kiện đó đúng hay sai, đây là ví dụ về cấu trúc điều khiển nào?

    A. Cấu trúc rẽ nhánh (ví dụ: câu lệnh if-else).
    B. Cấu trúc tuần tự.
    C. Cấu trúc lặp (ví dụ: vòng lặp for).
    D. Cấu trúc hàm.

    110. Phát biểu nào sau đây là đúng về ‘kiểu dữ liệu chuỗi’ (string) trong lập trình?

    A. Chuỗi là một dãy các ký tự được bao quanh bởi dấu nháy đơn hoặc nháy kép, dùng để biểu diễn văn bản.
    B. Chuỗi chỉ có thể chứa các ký tự chữ cái.
    C. Chuỗi được sử dụng để thực hiện các phép tính toán học.
    D. Mỗi ký tự trong chuỗi là một biến độc lập.

    111. Phát biểu nào sau đây mô tả đúng về ‘câu lệnh `continue`’ trong một vòng lặp?

    A. Bỏ qua phần còn lại của khối lệnh trong lần lặp hiện tại và chuyển sang lần lặp tiếp theo.
    B. Thoát hoàn toàn khỏi vòng lặp.
    C. Khởi tạo lại biến đếm của vòng lặp.
    D. Thực hiện lại lệnh ngay sau câu lệnh `continue`.

    112. Khi sử dụng mảng, việc truy cập phần tử thứ ‘k’ (với k là chỉ số bắt đầu từ 0) thường được thực hiện như thế nào?

    A. Sử dụng tên mảng kèm theo chỉ số trong dấu ngoặc vuông, ví dụ: `ten_mang[k]`.
    B. Sử dụng tên mảng kèm theo chỉ số trong dấu ngoặc đơn, ví dụ: `ten_mang(k)`.
    C. Sử dụng tên mảng kèm theo từ khóa ‘index’ và chỉ số.
    D. Chỉ cần sử dụng tên mảng.

    113. Khi một biến được khai báo bên trong một hàm, nó thường được coi là biến gì?

    A. Biến cục bộ (local variable), chỉ có thể truy cập bên trong hàm đó.
    B. Biến toàn cục (global variable), có thể truy cập từ bất kỳ đâu.
    C. Hằng số.
    D. Biến tham chiếu.

    114. Phát biểu nào sau đây mô tả đúng về ‘biến toàn cục’ (global variable)?

    A. Được khai báo bên ngoài tất cả các hàm và có thể truy cập từ bất kỳ đâu trong chương trình.
    B. Chỉ có thể truy cập bên trong hàm mà nó được khai báo.
    C. Tự động bị hủy khi chương trình kết thúc.
    D. Không thể thay đổi giá trị sau khi được khởi tạo.

    115. Phát biểu nào sau đây mô tả đúng về ‘cấu trúc dữ liệu mảng’ (array)?

    A. Là một tập hợp các phần tử cùng kiểu dữ liệu, được lưu trữ liên tiếp trong bộ nhớ và có thể truy cập thông qua chỉ số (index).
    B. Là một tập hợp các phần tử có kiểu dữ liệu khác nhau và không có thứ tự.
    C. Là một cấu trúc dữ liệu chỉ có thể lưu trữ một phần tử duy nhất.
    D. Là một cấu trúc dữ liệu động, có thể thay đổi kích thước tùy ý mà không ảnh hưởng hiệu suất.

    116. Phát biểu nào sau đây mô tả chính xác nhất mục đích của việc sử dụng ‘hằng số’ trong lập trình?

    A. Đảm bảo các giá trị quan trọng không bị thay đổi trong suốt quá trình chạy chương trình, giúp mã nguồn dễ đọc và bảo trì hơn.
    B. Cho phép người dùng nhập dữ liệu tùy ý vào chương trình.
    C. Tăng tốc độ xử lý của chương trình bằng cách sử dụng bộ nhớ đệm.
    D. Định nghĩa các hàm và thủ tục con cho các tác vụ lặp đi lặp lại.

    117. Phát biểu nào sau đây mô tả đúng về ‘vòng lặp for’ (for loop)?

    A. Thường được sử dụng khi số lần lặp đã biết trước hoặc có thể xác định rõ ràng, thường bao gồm biến đếm, điều kiện lặp và bước nhảy.
    B. Sử dụng để lặp cho đến khi một điều kiện cụ thể trở thành sai.
    C. Chỉ có thể lặp qua các phần tử của một danh sách.
    D. Không yêu cầu biến đếm.

    118. Phát biểu nào sau đây mô tả đúng về ‘ngôn ngữ thông dịch’ (interpreted language)?

    A. Mã nguồn được thực thi từng dòng bởi một chương trình thông dịch (interpreter) mà không cần bước biên dịch riêng biệt sang mã máy.
    B. Mã nguồn phải được biên dịch hoàn toàn sang mã máy trước khi thực thi.
    C. Chỉ có thể chạy trên các hệ điều hành cụ thể.
    D. Yêu cầu phần cứng chuyên dụng để chạy.

    119. Phát biểu nào sau đây mô tả đúng về ‘tham số’ (parameter) khi gọi một hàm?

    A. Là các giá trị được truyền vào hàm để hàm sử dụng trong quá trình thực thi.
    B. Là tên của chính hàm.
    C. Là kết quả trả về của hàm.
    D. Là các biến cục bộ bên trong hàm.

    120. Một chương trình máy tính thực hiện các bước theo một trình tự nhất định, từ đầu đến cuối. Đây là ví dụ về kiểu cấu trúc điều khiển nào?

    A. Cấu trúc tuần tự.
    B. Cấu trúc rẽ nhánh.
    C. Cấu trúc lặp.
    D. Cấu trúc lồng nhau.

    121. Phát biểu nào sau đây mô tả đúng về cách truyền tham số cho ‘procedure’ hoặc ‘function’ trong Pascal?

    A. Tất cả các tham số đều được truyền theo tham chiếu (‘var’).
    B. Tất cả các tham số đều được truyền theo giá trị.
    C. Tham số có thể được truyền theo giá trị hoặc theo tham chiếu (‘var’).
    D. Pascal không cho phép truyền tham số cho ‘procedure’ hoặc ‘function’.

    122. Trong Pascal, ‘procedure’ và ‘function’ có điểm khác biệt quan trọng nào?

    A. ‘procedure’ luôn trả về giá trị, ‘function’ thì không.
    B. ‘procedure’ có thể trả về giá trị, ‘function’ bắt buộc phải trả về giá trị.
    C. ‘procedure’ không trả về giá trị, ‘function’ bắt buộc phải trả về giá trị.
    D. Không có sự khác biệt nào, chúng là hai tên gọi cho cùng một khái niệm.

    123. Phát biểu nào sau đây mô tả đúng về việc sử dụng hằng số trong Pascal?

    A. Hằng số có thể thay đổi giá trị trong quá trình chạy chương trình.
    B. Hằng số giúp chương trình dễ đọc, dễ bảo trì và tránh lỗi do nhập sai giá trị lặp lại.
    C. Pascal không hỗ trợ khai báo hằng số.
    D. Hằng số chỉ có thể là số nguyên.

    124. Trong ngôn ngữ lập trình Pascal, cấu trúc điều khiển ‘if-then-else’ được sử dụng để thực hiện hành động nào?

    A. Lặp lại một khối lệnh nhiều lần dựa trên một điều kiện.
    B. Thực hiện một khối lệnh duy nhất và kết thúc chương trình.
    C. Chọn thực hiện một trong hai khối lệnh tùy thuộc vào giá trị của một biểu thức logic.
    D. Thực hiện một chuỗi các câu lệnh theo một trình tự nhất định.

    125. Trong Pascal, toán tử ‘mod’ được dùng để làm gì?

    A. Tính thương của phép chia lấy phần nguyên.
    B. Tính số dư của phép chia.
    C. So sánh hai giá trị có bằng nhau hay không.
    D. Nối hai chuỗi ký tự lại với nhau.

    126. Đâu là một ví dụ về biểu thức số học trong Pascal?

    A. x > 10
    B. (‘Hello’ + ‘ World’)
    C. (a * b) + c / 2
    D. if (x = 5) then

    127. Phát biểu nào sau đây mô tả đúng về kiểu dữ liệu ‘Boolean’ trong Pascal?

    A. Chỉ có thể chứa các giá trị số nguyên.
    B. Chỉ có thể chứa các ký tự đơn.
    C. Chỉ có thể chứa hai giá trị: True hoặc False.
    D. Có thể chứa một chuỗi ký tự bất kỳ.

    128. Phát biểu nào sau đây mô tả đúng về cấu trúc dữ liệu mảng (array) trong Pascal?

    A. Lưu trữ các phần tử có kiểu dữ liệu khác nhau trong cùng một mảng.
    B. Lưu trữ một tập hợp các phần tử có cùng kiểu dữ liệu và được truy cập bằng chỉ số.
    C. Không thể truy cập các phần tử của mảng một cách ngẫu nhiên.
    D. Chỉ có thể lưu trữ một phần tử duy nhất.

    129. Phát biểu nào sau đây mô tả đúng về kiểu dữ liệu ‘char’ trong Pascal?

    A. Lưu trữ một chuỗi ký tự bất kỳ.
    B. Chỉ có thể lưu trữ một ký tự đơn.
    C. Lưu trữ các giá trị số nguyên.
    D. Lưu trữ các giá trị logic True hoặc False.

    130. Trong Pascal, từ khóa ‘BEGIN’ và ‘END.’ đánh dấu phần nào của chương trình?

    A. Phần khai báo biến.
    B. Phần khai báo hằng.
    C. Phần thân chính của chương trình hoặc của một khối lệnh.
    D. Phần khai báo thư viện.

    131. Phát biểu nào sau đây là đúng về cách Pascal xử lý chuỗi ký tự (string)?

    A. Mỗi ký tự trong chuỗi là một phần tử độc lập và không thể truy cập trực tiếp.
    B. Chuỗi ký tự được coi là một mảng ký tự, cho phép truy cập từng ký tự bằng chỉ số.
    C. Pascal không hỗ trợ kiểu dữ liệu chuỗi ký tự.
    D. Tất cả các chuỗi ký tự đều có độ dài cố định khi khai báo.

    132. Khi nào việc sử dụng một ‘function’ trong Pascal là phù hợp nhất?

    A. Khi cần thực hiện một chuỗi các hành động độc lập và không cần trả về kết quả.
    B. Khi cần tính toán một giá trị dựa trên các tham số đầu vào và sử dụng giá trị đó.
    C. Khi cần lặp lại một khối lệnh một số lần xác định.
    D. Khi cần đưa ra quyết định dựa trên một điều kiện.

    133. Trong Pascal, cấu trúc ‘case-of’ được sử dụng để làm gì?

    A. Thực hiện một khối lệnh lặp đi lặp lại.
    B. Lựa chọn thực thi một trong nhiều khối lệnh dựa trên giá trị của một biến rời rạc.
    C. Thực hiện một khối lệnh nếu điều kiện là đúng, nếu không thì chuyển sang kiểm tra điều kiện khác.
    D. Đảm bảo một khối lệnh được thực thi ít nhất một lần.

    134. Phát biểu nào sau đây mô tả đúng về mục đích của việc sử dụng ‘procedure’ trong chương trình Pascal?

    A. Để khai báo các biến toàn cục.
    B. Để chia nhỏ chương trình thành các khối lệnh có thể tái sử dụng, giúp chương trình gọn gàng và dễ quản lý.
    C. Để thực hiện phép tính và trả về một giá trị duy nhất.
    D. Để định nghĩa kiểu dữ liệu mới.

    135. Trong Pascal, câu lệnh nào dùng để nhập dữ liệu từ bàn phím?

    A. WriteLn(‘Nội dung’);
    B. ReadLn(biến);
    C. Display(‘Thông báo’);
    D. Input(biến);

    136. Phát biểu nào sau đây mô tả đúng nhất mục đích của việc sử dụng vòng lặp ‘for’ trong lập trình Pascal?

    A. Thực hiện một khối lệnh cho đến khi một điều kiện nào đó trở nên sai.
    B. Lặp lại một khối lệnh một số lần được xác định trước, thường là dựa trên một biến đếm.
    C. Thực hiện một khối lệnh nếu một điều kiện là đúng, nếu không thì bỏ qua.
    D. Lựa chọn một trong nhiều khối lệnh để thực thi dựa trên giá trị của một biến.

    137. Khi nào nên sử dụng cấu trúc lặp ‘repeat-until’ thay vì ‘while-do’?

    A. Khi cần đảm bảo khối lệnh được thực hiện ít nhất một lần.
    B. Khi số lần lặp là cố định và đã biết trước.
    C. Khi điều kiện dừng vòng lặp phải được kiểm tra trước khi thực thi khối lệnh.
    D. Khi cần lặp vô điều kiện.

    138. Phát biểu nào sau đây là đúng về phạm vi của biến trong Pascal?

    A. Biến khai báo trong ‘program’ có thể truy cập từ mọi nơi.
    B. Biến khai báo trong ‘procedure’ hoặc ‘function’ chỉ có thể truy cập trong phạm vi đó.
    C. Tất cả các biến đều có phạm vi toàn cục.
    D. Phạm vi của biến không quan trọng trong lập trình Pascal.

    139. Trong cấu trúc lặp ‘while-do’, điều kiện dừng vòng lặp là khi nào?

    A. Khi điều kiện kiểm tra trở thành sai.
    B. Khi điều kiện kiểm tra trở thành đúng.
    C. Sau khi vòng lặp thực hiện đủ số lần quy định.
    D. Khi gặp lệnh ‘break’ trong thân vòng lặp.

    140. Phát biểu nào sau đây là đúng về việc sử dụng toán tử ‘div’ trong Pascal?

    A. Thực hiện phép chia lấy phần dư.
    B. Thực hiện phép chia lấy phần nguyên.
    C. Thực hiện phép chia thông thường cho số thực.
    D. So sánh hai giá trị.

    141. Trong Pascal, ký tự ‘{‘ và ‘}’ được dùng để làm gì?

    A. Dùng để định nghĩa biến.
    B. Dùng để bao bọc các chú thích (comment) trong mã nguồn.
    C. Dùng để gọi một thủ tục.
    D. Dùng để kết thúc một câu lệnh.

    142. Phát biểu nào sau đây là đúng về vai trò của trình biên dịch (compiler) trong lập trình Pascal?

    A. Chạy trực tiếp mã nguồn để thực thi chương trình.
    B. Chuyển đổi mã nguồn Pascal thành mã máy mà máy tính có thể hiểu và thực thi.
    C. Giúp gỡ lỗi bằng cách chạy từng dòng lệnh.
    D. Quản lý bộ nhớ cho chương trình.

    143. Khi so sánh hai chuỗi ký tự ‘s1’ và ‘s2’ trong Pascal, toán tử nào được sử dụng?

    A. ‘s1’ + ‘s2’
    B. ‘s1’ * ‘s2’
    C. ‘s1’ = ‘s2’
    D. ‘s1’ / ‘s2’

    144. Đâu là một ví dụ về cấu trúc điều kiện lồng nhau trong Pascal?

    A. IF a > b THEN WriteLn(‘a lon hon b’); ELSE IF b > c THEN WriteLn(‘b lon hon c’);
    B. WHILE x < 10 DO WriteLn('Lap');
    C. CASE grade OF ‘A’: Writeln(‘Gioi’); ‘B’: Writeln(‘Kha’); END;
    D. FOR i := 1 TO 5 DO WriteLn(i);

    145. Đâu là cách khai báo biến sai trong Pascal?

    A. VAR a, b: integer;
    B. VAR diem: real;
    C. VAR 1so: integer;
    D. VAR ten: string;

    146. Phát biểu nào sau đây là đúng về sự khác biệt cơ bản giữa vòng lặp ‘for’ và vòng lặp ‘while’ trong Pascal?

    A. ‘for’ dùng cho lặp có điều kiện, ‘while’ dùng cho lặp biết trước số lần.
    B. ‘for’ dùng cho lặp biết trước số lần, ‘while’ dùng cho lặp có điều kiện.
    C. Không có sự khác biệt nào đáng kể giữa hai vòng lặp này.
    D. ‘for’ chỉ lặp với số nguyên, ‘while’ có thể lặp với mọi kiểu dữ liệu.

    147. Trong Pascal, làm thế nào để khai báo một mảng có 10 phần tử kiểu số thực?

    A. VAR arr: array[1..10] of integer;
    B. VAR arr: array[1..10] of real;
    C. VAR arr: real[10];
    D. VAR arr: array of real;

    148. Để truy cập phần tử thứ 5 của một mảng có tên ‘arr’ trong Pascal, ta sử dụng cú pháp nào?

    A. arr(5)
    B. arr[5]
    C. arr{5}
    D. arr.5

    149. Trong một chương trình Pascal, câu lệnh ‘inc(bien)’ tương đương với hành động nào?

    A. Giảm giá trị của ‘bien’ đi 1.
    B. Nhân ‘bien’ với 2.
    C. Tăng giá trị của ‘bien’ lên 1.
    D. Gán giá trị 0 cho ‘bien’.

    150. Phát biểu nào sau đây mô tả đúng về câu lệnh ‘WriteLn’ trong Pascal?

    A. Chỉ dùng để đọc dữ liệu từ bàn phím.
    B. Dùng để in dữ liệu ra màn hình và tự động xuống dòng.
    C. Dùng để in dữ liệu ra màn hình nhưng không xuống dòng.
    D. Dùng để khai báo biến.

    Số câu đã làm: 0/0
    Thời gian còn lại: 00:00:00
    • Đã làm
    • Chưa làm
    • Cần kiểm tra lại

    Về Tài Liệu Trọn Đời

    Tài Liệu Trọn Đời - Blog cá nhân, tài liệu học tập, khoa học, công nghệ, thủ thuật, chia sẻ mọi kiến thức, lĩnh vực khác nhau đến với bạn đọc.

    Gmail: info.tailieutrondoi@gmail.com

    Địa chỉ: 127 Đ Nguyễn Văn Tăng, Long Thạnh Mỹ, Thủ Đức, Hồ Chí Minh 700000, Việt Nam

    Giờ làm việc: T2-CN: 09:00 – 17:00

    Maps

    Miễn Trừ Trách Nhiệm

    Tài Liệu Trọn Đời - Blog được xây dựng nhằm mục đích thử nghiệm, tham khảo, hỗ trợ học tập và nghiên cứu.

    Tài Liệu Trọn Đời không chịu trách nhiệm dưới bất kỳ hình thức nào đối với thiệt hại trực tiếp hoặc gián tiếp phát sinh từ việc sử dụng hoặc áp dụng các nội dung trên trang web.

    Các câu hỏi và đáp án trong danh mục "Trắc nghiệm" được biên soạn nhằm mục đích hỗ trợ học tập và tra cứu thông tin. Đây KHÔNG phải là tài liệu chính thức hay đề thi do bất kỳ cơ sở giáo dục hoặc tổ chức cấp chứng chỉ chuyên ngành nào ban hành.

    Website không chịu trách nhiệm về độ chính xác tuyệt đối của nội dung cũng như mọi quyết định được đưa ra từ việc sử dụng kết quả trắc nghiệm hoặc các thông tin trong bài viết trên Website.

    Chịu Trách Nhiệm Nội Dung

    Blogger: Tài Liệu Trọn Đời

    Mọi vấn đề liên quan đến bản quyền nội dung vui lòng liên hệ qua Gmail: info.tailieutrondoi@gmail.com

    Social

    • X
    • LinkedIn
    • Flickr
    • YouTube
    • Pinterest

    Website Cùng Hệ Thống

    Phần Mềm Trọn Đời - Download Tải Phần Mềm Miễn Phí Kiến Thức Live - Tin Tức | Kiến Thức Cuộc Sống | Công Nghệ All Thing Share - Sharing | Knowledge | Technology | Tips | Pets | Life All Thing Pet – We Love Pets Trending New 24h - Cập Nhật Xu Hướng | Trend | News 24h
    Copyright © 2025 Tài Liệu Trọn Đời
    Back to Top

    Bạn ơi!!! Để xem được kết quả, bạn vui lòng làm nhiệm vụ nhỏ xíu này nha

    HƯỚNG DẪN TÌM MẬT KHẨU

    Đang tải nhiệm vụ...

    Bước 1: Mở tab mới và truy cập Google.com. Sau đó tìm kiếm chính xác từ khóa sau:

    Bước 2: Tìm và click vào kết quả có trang web giống như hình ảnh dưới đây:

    Hướng dẫn tìm kiếm

    Bước 3: Kéo xuống cuối trang đó để tìm mật khẩu như hình ảnh hướng dẫn:

    Hướng dẫn lấy mật khẩu

    Nếu tìm không thấy mã bạn có thể Đổi nhiệm vụ để lấy mã khác nhé.