Hướng dẫn hiển thị dữ liệu với setw() trong c++

Mọi người hướng dẫn em về hiển thị dữ liệu với setw() trong c++ với ạ. Mọi người giúp em với ạ. Em xin cảm ơn

Trước hết thì theo bạn, setw có tác dụng gì?
left kia là để làm gì?

3 Likes

mình biết là setw(n) << left để căn lề trái, sau đó nhập chuỗi hoặc số lần thứ 2 thì nó sẽ hiển thị ở kí tự thứ n, mình muốn có cách nào để hiển thị nó liền không bị chia ra ý

Hời hợt thế này chính là lý do bạn phải đi hỏi mấy câu như vầy đây.
Ít nhất mình mong muốn câu trả lời như vầy: setw(n) sẽ dành ra n khoảng trống để output ra param tiếp theo. Còn left thì căn trái param trong n khoảng trống này.
Nên code của bạn cout << setw(10) << left << day << "/" << ... sẽ dành 10 space để ghi day ở bên trái, rồi thêm khoảng trống để đủ 10 ký tự, xong mới ghi ra / => bị cách khoảng.

Giờ bạn thử suy nghĩ xem mấu chốt giải quyết sẽ nằm ở đâu?

6 Likes

mình là như này được không bạn

int d = 20, m = 3, y = 2000;
cout << setw(20) << left << "tran huy canh" << setw(2) << d << "/" << setw(2) << m << "/" << y 
		<< setw(10) << " " << setw(20) << "ha noi" << endl;
d = 1, m = 11, y =2003;
cout << setw(20) << left << "tran canh" << setw(2) << d << "/" << setw(2) << m << "/" << y 
		<< setw(10) << " " << setw(20) << "hai duong";
1 Like
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?