đề bài là nhập xuát thông tin của học sinh , và dùng vector xuất ra
- thay thế 1 pt
- thêm 1 phần tử
các bác xem em làm thế này đã đc chưa ạ
#include"iostream"
#include"vector"
using namespace std;
class thisinh{
private:
int toan,ly,hoa;
char ht[30];
int sbd;
public:
void nhap();
void xuat();
friend class day;
};
class day{
private:
int n;
vector<thisinh> *a;
public:
void nhap(vector<thisinh>&a);
void xuat(vector<thisinh>&a);
void add(vector<thisinh>&a);
void thaythe(vector<thisinh>&a);
void xoa(vector<thisinh>&a);
};
void day::xoa(vector<thisinh>&a)
{
int vt,i;
cout<<"\n nhap vi tri can xoa: ";
cin>>vt;
n=n-1;
a.resize(n);
for(i=vt-1;i<n-1;i++)
{
a[i-1]=a[i];
}
cout<<"\n danh sach sau khi xoa phan tu la: ";
for(i=0;i<n;i++)
a[i].xuat();
}
void day::thaythe(vector<thisinh> &a)
{
int vt;
cout<<"\n nhap vi tri can thay the: ";
cin>>vt;
a[vt-1].nhap();
cout<<"\n danh sach sau khi bi thay the la: \n";
for(int i=0;i<n;i++)
{
cout<<"\n thong tin hoc sinh thu "<<i+1;
a[i].xuat();
}
}
void thisinh::nhap()
{
cout << "\n\n Nhap SBD: ";
cin >> sbd;
cout << " Nhap ho ten: ";
cin.ignore(1);
cin.get(ht,30);
cout << " Nhap diem Toan: ";
cin >> toan;
cout << " Nhap diem Ly: ";
cin >> ly;
cout << " Nhap diem Hoa: ";
cin >> hoa;
}
void thisinh::xuat()
{
cout<<"\nho ten: "<<ht<<"\nsbd: "<<sbd<<"\ndiem toan: "<<toan<<"\ndiem ly: "<<ly<<"\n hoa: "<<hoa;
}
void day::nhap(vector<thisinh> &a)
{
int i;
cout<<"\n nhap n: ";
cin>>n;
a.resize(n);
for(i=0;i<n;i++)
{
cout<<"\n nhap hoc sinh thu "<<i+1<<"\n";
a[i].nhap();
}
}
void day::xuat(vector<thisinh> &a)
{
for(int i=0;i<n;i++)
{
cout<<"\n thong tin hoc sinh thu "<<i+1;
a[i].xuat();
}
}
void day::add(vector<thisinh> &a)
{
int vt;
cout<<"\n nhap vt can chen: ";
cin>>vt;
n=n+1;
a.resize(n);
if(vt==n)
{
a[vt-1].nhap();
}
else
{
for(int i=n-1;i>=vt-1;i--)
{
a[i]=a[i-1];
}
a[vt-1].nhap();
}
cout<<"\n mang sau khi them la: ";
for(int i=0;i<n;i++)
{
cout<<"\nthong tin thi sinh thu "<<i+1;
a[i].xuat();
}
}
int main()
{
int n;
thisinh b;
day c;
vector<thisinh> a;
c.nhap(a);
c.xuat(a);
c.thaythe();
c.add();
}
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?