Khi chạy code quản lý kỹ sư, họ tên và ngày sinh luôn xuất đồng thời

Tại sao họ tên với cả ngày sinh khi chạy nó cứ ra đồng thời vậy, ai chỉ bảo em với. em dùng dev c++

#include<iostream>
#include<conio.h>
#include<stdio.h>
#include<string.h>
using namespace std;
class person
{
public:
	char ht[30];
	char ns[30];
	char q[30];
};
class kysu:public person
{
	public:
		char nh[30];
		int ntn;
		void nhap();
		void xuat();
};
void kysu::nhap()
{
	cout<<"ho ten:";gets(ht);fflush(stdin);
	cout<<"ngay sinh:";gets(ns);fflush(stdin);
	cout<<"que quan:";gets(q);fflush(stdin);
	cout<<" nganh hoc:";gets(nh);fflush(stdin);
	cout<<"nam tot nghiep:";cin>>ntn;fflush(stdin);
}
void kysu::xuat()
{
	cout<<"ho ten:"<<ht<<endl;
	cout<<"ngay sinh:"<<ns<<endl;
	cout<<"que quan:"<<q<<endl;
	cout<<"nganh hoc:"<<nh<<endl;
	cout<<"nam tot nghiep:"<<ntn<<endl;
}
int main()
{
	int i,n;
	kysu a[100];
	cout<<"so ky su la:";cin>>n;
	for(i=1;i<=n;i++)
	{
		cout<<"ky su thu"<<" "<<i<<" "<<endl;
		a[i].nhap();
	}
	cout<<"thong tin cac ky su vua nhap la:"<<endl;
	for(i=1;i<=n;i++)
	{
		a[i].xuat();
	}
	int max=a[1].ntn;
	for(i=1;i<=n;i++)
	{if(a[i].ntn>=max)
	max=a[i].ntn;
	}cout<<"cac ky su co nam tot nghiep gan day nhat:"<<endl;
	for(i=1;i<=n;i++)
	{
		if(a[i].ntn==max)
		a[i].xuat();
	}
	getch();
}

đặt fflush(stdin) lên trước gets đi ban

1 Like

cảm ơn anh nhé. được rồi ạ

em 96 anh ơi cứ gọi là bạn thôi <>

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