JavaScript is required

Anh (Chị) hãy cho biết kết quả của đoạn lệnh sau là gì?

class test {

public:

int a;

test(int i) {a = i}

int b3(int b) {

for (int i = 1; i <= b; i++)

a *= a;

return a;

}

void main()

{ test t(3);

cout << t.b(3);

}

A.

81

B.

3

C.

9

D.

Lỗi biên dịch.

Trả lời:

Đáp án đúng: D


Đoạn mã C++ có một số lỗi: 1. **Lỗi cú pháp:** Trong định nghĩa lớp `test`, phương thức `b3` (có vẻ như là `b` trong `cout << t.b(3)`) được định nghĩa nhưng lại được gọi với tên `b`. Trong C++, tên phương thức phải khớp chính xác khi định nghĩa và gọi. Thêm vào đó, hàm `main` trong C++ phải trả về `int`. 2. **Thiếu thư viện:** Đoạn code sử dụng `cout` mà không khai báo thư viện `iostream`. Vì những lỗi trên, đoạn mã sẽ không biên dịch được. Do đó, đáp án đúng là "Lỗi biên dịch".

Câu hỏi liên quan