30/09/2018, 18:29

cần giúp đỡ về vector!

đề bài là nhập xuát thông tin của học sinh , và dùng vector xuất ra

  1. thay thế 1 pt

  2. 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 *a;
    public:
    void nhap(vector&a);
    void xuat(vector&a);
    void add(vector&a);
    void thaythe(vector&a);
    void xoa(vector&a);
    };
    void day::xoa(vector&a)
    {
    int vt,i;
    cout<<" 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<<” danh sach sau khi xoa phan tu la: “;
    for(i=0;i<n;i++)
    a[i].xuat();
    }
    void day::thaythe(vector &a)
    {
    int vt;
    cout<<” nhap vi tri can thay the: “;
    cin>>vt;
    a[vt-1].nhap();
    cout<<” danh sach sau khi bi thay the la: ";
    for(int i=0;i<n;i++)
    {
    cout<<" thong tin hoc sinh thu "<<i+1;
    a[i].xuat();
    }
    }
    void thisinh::nhap()
    {
    cout << " 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<<” ho ten: “<<ht<<” sbd: “<<sbd<<” diem toan: “<<toan<<” diem ly: “<<ly<<” hoa: “<<hoa;
    }
    void day::nhap(vector &a)
    {
    int i;
    cout<<” nhap n: “;
    cin>>n;
    a.resize(n);
    for(i=0;i<n;i++)
    {
    cout<<” nhap hoc sinh thu “<<i+1<<” ”;
    a[i].nhap();
    }
    }
    void day::xuat(vector &a)
    {
    for(int i=0;i<n;i++)
    {
    cout<<” thong tin hoc sinh thu “<<i+1;
    a[i].xuat();
    }
    }
    void day::add(vector &a)
    {
    int vt;
    cout<<” 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<<” mang sau khi them la: “;
    for(int i=0;i<n;i++)
    {
    cout<<” thong tin thi sinh thu "<<i+1;
    a[i].xuat();
    }
    }
    int main()
    {
    int n;
    thisinh b;
    day c;
    vector a;
    c.nhap(a);
    c.xuat(a);
    c.thaythe();
    c.add();
    }

Bài liên quan
0