JavaScript is required

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

char* ReChar (char* str) { int len = strlen (str);

char* ketqua = new char[len+1]

for (int i = 0; i< len; i++) ketqua[i] = str[len-i-1]

ketqua[len] ='\0'; return ketqua;

}

int main() { char *p =178892”; cout << ReChar(p) << endl; return 0;

}

A.

178892

B.

298871

C.

127889

D.

988721

Trả lời:

Đáp án đúng: B


Đoạn code trên thực hiện đảo ngược chuỗi. Hàm `ReChar` nhận một chuỗi `str` làm đầu vào, tạo một chuỗi mới `ketqua` có độ dài bằng với `str`, sau đó gán các ký tự của `str` vào `ketqua` theo thứ tự ngược lại. Cuối cùng, hàm trả về chuỗi `ketqua` đã được đảo ngược. Trong hàm `main`, chuỗi "178892" được truyền vào hàm `ReChar`. Hàm `ReChar` sẽ đảo ngược chuỗi này và trả về chuỗi "298871". Do đó, kết quả in ra màn hình sẽ là "298871".

Câu hỏi liên quan