Lỗi không nhập được string sau khi nhập số

#include < iostream>
#include <stdio.h>
#include < iomanip>


using namespace std;

struct danhba
{
    string ten;
    string coquan;
    string chucvu;
    int sdtdidong;
    int sdtcoquan;
    string diachinha;
    string diachicoquan;
    string email;
    string note;

};
int main()
{
 int i,j,m,n;
 danhba DT[500];
 cout<<"So doi tac : ";
 cin>>m;
 for(i=0;i<m;i++)
 {
     cout<<"Nhap thong tin doi tac"<<i+1<<endl;
     fflush(stdin);
     cout<<"Ho va ten: ";
     getline(cin,DT[i].ten);cout<<endl;
     cout<<"Co quan: ";
     getline(cin,DT[i].coquan);cout<<endl;
     cout<<"Chuc vu: ";
     getline(cin,DT[i].chucvu);cout<<endl;
     cout<<"Dia chi nha: ";
     getline(cin,DT[i].diachinha);cout<<endl;
     cout<<"Dia chi co quan: ";
     getline(cin,DT[i].diachicoquan);cout<<endl;
     cout<<"Email: ";
     getline(cin,DT[i].email);cout<<endl;
     cout<<"Ghi chu: ";
     getline(cin,DT[i].note);cout<<endl;
 }
    return 0;
}
1 Like

Bạn gặp lỗi gì vậy bạn?

Với lại j,m,n khởi tạo để làm gì

2 Likes

mình chạy mà k nhập đc dòng thứ 2 nó tự nhảy xuống dòng 3 luôn, j m để mình làm mấy ý sau

Code này có phải là của bạn viết không?
Dòng thứ 3 là dòng nhập Ho va ten?
Bạn muốn nhập gì ở dòng số 2?

4 Likes

fflush(stdin) không còn tác dụng nữa đâu.

5 Likes

Đoạn mã này không phải của bạn viết. Đoạn mã đã chạy đúng hoàn toàn. Dòng thứ 2 chỉ là dòng thông báo, bắt đầu nhập thông tin từ Ho va ten mà.

2 Likes

đoạn này mình viết 100% ạ, btvn thầy giao thôi tối qua nhìn sai 1 chút

mình nhìn nhầm tí lúc trước là khi chạy khi nhập thông tin người đầu tiên là nó nhảy xuống dòng cơ quann luôn k cho nhập họ và tên, h mình sửa đc rồi cảm ơn bạn

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