Hàm cin.getline trong C++

Tình hình là em đang lập trình 1 bài ví dụ để thực hiện vòng lặp Do While thì ban đầu chương trình vẫn cho nhập liệu từ bàn phím thông qua lệnh cin.getline nhưng đến khi hàm While check lại điều kiện và cho phép lặp thì hàm cin.getline này không cho em nhập dữ liệu từ bàn phím nữa, mà cho kết quả luôn. :frowning:
Code của em như sau ạ:

#include <iostream>
 using namespace std;
 
 int main()
 {
 	char input[32];
 	char familyName[16] = "0";
 	short i;
 	char n;
 	do
 	{
 		cout << "Nhap vao ho ten cua ban: ";
 		cin.getline(input,31);
 		i = 0;
 		while (input[i] != 0 && input[i] != ' ')
 		{
 			familyName[i] = input[i];
 			i++;
 		}
 		cout << "Ho cua ban la: " << familyName << endl;
 		cout << "Ban co muon tiep tuc khong? Y/N" << endl;
 		cin >> n;
 	} while (n == 'Y');
 	return 0;
 }

Vì mới tham gia group nên có gì mong mọi gửi góp ý sửa đổi ạ. Xin nhờ mọi người!


1 Like

Em đã xem và làm theo được. Cảm ơn anh

83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?