Lập trình C++ - Cấu trúc điều khiển University

Đề kiểm tra Cấu trúc điều khiển trong C++

20 questions
45 min
Answer key

Exam info

Subject
Lập trình C++ - Cấu trúc điều khiển
Exam type
University
Questions
20
Duration
45 min
Answers
✓ With explanations

Questions (20)

  1. Q 1.

    Cho đoạn mã sau: int a = 5; if (a > 3) cout << "A"; cout << "B";. Kết quả in ra màn hình là gì?

    • A.

      A

    • B.

      B

    • C.

      AB

    • D.

      Không in gì

  2. Q 2.

    Khi nào câu lệnh if mà không có phần else được sử dụng hợp lý nhất?

    • A.

      Khi cần thực hiện một hành động trong một trường hợp và hành động khác trong trường hợp ngược lại

    • B.

      Khi chỉ cần kiểm tra điều kiện và thực hiện hành động khi đúng, bỏ qua khi sai

    • C.

      Khi cần kiểm tra nhiều điều kiện liên tiếp

    • D.

      Khi cần lặp lại nhiều lần

  3. Q 3.

    Cho đoạn mã: if (a != 0) if (b > 0) cout << "X"; else cout << "Y";. Câu lệnh else sẽ tương ứng với if nào?

    • A.

      if (a != 0)

    • B.

      if (b > 0)

    • C.

      Cả hai if cùng lúc

    • D.

      Không if nào

  4. Q 4.

    Trong cấu trúc switch...case, các giá trị trong mỗi case phải thỏa mãn điều kiện nào?

    • A.

      Phải là số thực

    • B.

      Phải là hằng số và không được trùng nhau

    • C.

      Có thể trùng nhau tùy ý

    • D.

      Có thể là biến bất kỳ

  5. Q 5.

    Cho đoạn mã: int a = 2; switch(a) { case 1: cout << "Mot"; case 2: cout << "Hai"; case 3: cout << "Ba"; default: cout << "Mac dinh"; }. Kết quả in ra là gì?

    • A.

      Hai

    • B.

      HaiBa

    • C.

      HaiBaMac dinh

    • D.

      Lỗi biên dịch

  6. Q 6.

    Vai trò của khối default trong cấu trúc switch là gì?

    • A.

      Được thực thi đầu tiên khi vào switch

    • B.

      Được thực thi khi biểu thức switch không khớp với bất kỳ case nào

    • C.

      Bắt buộc phải có trong mọi switch

    • D.

      Được thực thi cuối cùng sau mỗi case

  7. Q 7.

    Trong cú pháp vòng lặp for: for(<Khởi đầu>; <Đ/K lặp>; <Bước nhảy>), phát biểu nào sau đây đúng?

    • A.

      Cả 3 thành phần đều bắt buộc phải có

    • B.

      Ba thành phần phân tách nhau bởi dấu phẩy

    • C.

      Ba thành phần phân tách nhau bởi dấu chấm phẩy và đặt trong dấu ngoặc đơn

    • D.

      Phải có dấu chấm phẩy ngay sau dấu ngoặc đơn của for

  8. Q 8.

    Cho vòng lặp: for(int i = 1; i <= 5; i++) cout << i; Kết quả in ra màn hình là gì?

    • A.

      12345

    • B.

      123456

    • C.

      01234

    • D.

      1234

  9. Q 9.

    Trong vòng lặp for, khi gặp lệnh continue, chương trình sẽ thực hiện điều gì?

    • A.

      Thoát hoàn toàn khỏi vòng lặp

    • B.

      Bỏ qua phần lệnh còn lại trong thân vòng lặp và chuyển tới bước nhảy, sau đó kiểm tra điều kiện lặp

    • C.

      Dừng chương trình ngay lập tức

  10. Q 10.

    Khi viết for(i = 0; i < 10; i++); { cout << "Hello"; } thì điều gì xảy ra?

    • A.

      In ra "Hello" 10 lần

    • B.

      Lỗi biên dịch

    • C.

      In ra "Hello" 1 lần

    • D.

      Không in gì

  11. Q 11.

    Nguyên nhân nào sau đây gây ra vòng lặp vô hạn trong đoạn mã: int i = 1; while(i <= 10) { cout << i; i--; }?

    • A.

      Vì i luôn giảm nên không bao giờ vượt quá 10

    • B.

      Vì i luôn giảm (i--) nên giá trị của i không bao giờ tăng để vượt qua điều kiện i <= 10

    • C.

      Vì thiếu lệnh break

    • D.

      Vì cout << i không thay đổi giá trị i

  12. Q 12.

    Đặc điểm quan trọng nhất phân biệt vòng lặp do...while với vòng lặp while là gì?

    • A.

      do...while không có điều kiện lặp

    • B.

      do...while kiểm tra điều kiện ở đầu vòng lặp

    • C.

      do...while thực hiện khối lệnh ít nhất 1 lần trước khi kiểm tra điều kiện

    • D.

      do...while không thể lồng nhau

  13. Q 13.

    Cho đoạn mã: int i = 0; do { cout << i; i++; } while(i < 0);. Kết quả in ra là gì?

    • A.

      Không in gì

    • B.

      0

    • C.

      01

    • D.

      Lỗi biên dịch

  14. Q 14.

    Sự khác biệt giữa lệnh break và continue trong vòng lặp là gì?

    • A.

      break kết thúc vòng lặp hiện tại, continue bỏ qua phần lệnh còn lại và bắt đầu lần lặp mới

    • B.

      break và continue có tác dụng giống nhau

    • C.

      break chỉ dùng trong switch, continue chỉ dùng trong vòng lặp

    • D.

      continue kết thúc vòng lặp, break bỏ qua lần lặp

  15. Q 15.

    Cho đoạn mã: for(int i = 1; i <= 5; i++) { if(i == 3) break; cout << i; }. Kết quả in ra là gì?

    • A.

      12

    • B.

      12345

    • C.

      123

    • D.

      12 3 4 5

  16. Q 16.

    Trong cấu trúc if...else if...else, khi nào khối lệnh cuối cùng (sau else) được thực thi?

    • A.

      Khi điều kiện đầu tiên đúng

    • B.

      Khi tất cả các điều kiện trước đó đều sai

    • C.

      Luôn luôn được thực thi

    • D.

      Khi điều kiện cuối cùng đúng

  17. Q 17.

    Cho đoạn mã sử dụng switch: switch (a) { case 1: case 2: case 3: cout << "Q1"; break; case 4: case 5: case 6: cout << "Q2"; break; }. Nếu a = 5 thì kết quả là gì?

    • A.

      Q1

    • B.

      Q2

    • C.

      Q1Q2

    • D.

      Không in gì

  18. Q 18.

    Trong vòng lặp for, nếu bỏ trống phần <Đ/K lặp> (ví dụ: for(int i = 0; ; i++)), điều gì sẽ xảy ra?

    • A.

      Vòng lặp không thực hiện lần nào

    • B.

      Lỗi biên dịch

    • C.

      Vòng lặp chạy vô hạn nếu không có break bên trong

    • D.

      Vòng lặp chỉ chạy 1 lần

  19. Q 19.

    Cho đoạn mã: int n; cin >> n; while(n <= 0) { cout << "Nhap lai: "; cin >> n; }. Đoạn mã này có chức năng gì?

    • A.

      Tính tổng các số nguyên

    • B.

      Yêu cầu nhập lại n cho đến khi n là số dương

    • C.

      In ra các số từ 1 đến n

    • D.

      Vòng lặp vô hạn

  20. Q 20.

    Phát biểu nào sau đây về câu lệnh switch là đúng?

    • A.

      switch có thể dùng cho cả số thực

    • B.

      switch không thể lồng vào nhau

    • C.

      Các giá trị case có thể là biến và được trùng lặp

    • D.

      switch là câu lệnh đơn và có thể lồng nhau, giá trị trong case là hằng và không được trùng nhau

Answers and explanations are in mode.