Chào mừng đến với Diễn đàn lập trình - Cộng đồng lập trình.
Kết quả 1 đến 3 của 3

Chủ đề: van de ve Code

  1. #1
    Ngày tham gia
    Sep 2015
    Bài viết
    0

    van de ve Code

    #include <iostream.h>
    #include <iomanip.h>
    #include <fstream.h>
    #include <stdlib.h>
    #include <stdio.h>
    #include <conio.h>
    #include <string.h>
    #include <ctype.h>

    struct Sv {
    char *hoten;
    int tuoi;
    double diem;
    };
    class Sinhvien {
    int sosv;
    Sv x;
    char fname[30];
    static int size;
    public:
    Sinhvien(char *fn);
    void tao();
    void bosung();
    void xemsua();
    };

    int Sinhvien::size = sizeof(Sv);
    Sinhvien::Sinhvien(char *fn)
    {
    strcpy(fname, fn) ;
    fstream f;
    f.open(fname, ios::in | ios::ate | ios::binary);
    if (!f.good) sosv = 0;
    else {
    sosv = f.tellg() / size;
    }
    }

    void Sinhvien::tao()
    {
    fstream f;
    f.open(fname, ios:ut | ios::noreplace | ios::binary);
    if (!f.good()) {
    cout << "danh sach da co. Co tao lai (C/K) ?";
    char traloi = getch();
    if (toupper(traloi) == 'C') return;
    else {
    f.close() ;
    f.open(fname, ios:ut | ios::trunc | ios::binary);
    }
    }
    sosv = 0
    while (1) {
    cout << "
    Sinh viên th?: " << sosv+1;
    cout << "
    H? tên: "; cin.ignore(); cin.getline(x.hoten);
    if (x.hoten[0] == 0) break;
    cout << "
    Tu?i: "; cin >> x.tuoi;
    cout << "
    Ði?m: "; cin >> x.diem;
    f.write((char*)(&x), size);
    sosv++;
    }
    f.close();
    }

    void Sinhvien::bosung()
    {
    fstream f;
    f.open(fname, ios:ut | ios::app | ios::binary);
    if (!f.good()) {
    cout << "danh sach chua co. Tao moi (C/K) ?";
    char traloi = getch();
    if (toupper(traloi) == 'C') return;
    else {
    f.close() ;
    f.open(fname, ios:ut | ios::binary);
    }
    }
    int stt = 0
    while (1) {
    cout << "
    B? sung sinh viên th?: " << stt+1;
    cout << "
    H? tên: "; cin.ignore(); cin.getline(x.hoten);
    if (x.hoten[0] == 0) break;
    cout << "
    Tu?i: "; cin >> x.tuoi;
    cout << "
    Ði?m: "; cin >> x.diem;
    f.write((char*)(&x), size);
    stt++;
    }
    sosv += stt;
    f.close();
    }

    void Sinhvien::xemsua()
    {
    fstream f;
    int ch;
    f.open(fname, ios:ut | ios::app | ios::binary);
    if (!f.good()) {
    cout << "danh sach chua co";
    getch(); return;
    }
    cout << "
    Danh sách sinh viên" << endl;
    int stt ;
    while (1) {
    cout << "
    C?n xem (sua) sinh viên th? (0: d?ng): " ;
    cin >> stt;
    if (stt < 1 || stt > sosv) break;
    f.seekg((stt-1) * size, ios::beg);
    f.read((char*)(&x), size);
    cout << "
    H? tên: " << x.hoten;
    cout << "
    Tu?i: " << x.tuoi;
    cout << "
    Ði?m: " << x.diem;
    cout << "Có s?a không (C/K) ?";
    cin >> traloi;
    if (toupper(traloi) == 'C') {
    f.seekg(-size, ios::cur);
    cout << "
    H? tên: "; cin.ignore(); cin.getline(x.hoten);
    cout << "
    Tu?i: "; cin >> x.tuoi;
    cout << "
    Ði?m: "; cin >> x.diem;
    f.write((char*)(&x), size);
    }
    }
    f.close();
    }

    void main()
    {
    int chon;
    Sinhvien SV("DSSV") ;
    while (1) {
    clrscr();
    cout << "
    1: T?o danh sách sinh viên";
    cout << "
    2: B? sung danh sách";
    cout << "
    3: Xem – s?a danh sách";
    cout << "
    0: K?t thúc";
    chon = getch();
    chon = chon – 48;
    clrscr();
    if (chon == 1) SV.tao();
    else if (chon == 2) SV.bosung();
    else if (chon == 3) SV.xemsua();
    else break;
    }
    }
    ai sua jup minh voi ,nhiu loi~ qua ,cang sua~ cang sai

  2. #2
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    Dài quá [IMG]images/smilies/17.gif[/IMG] bạn post luôn lỗi đi !

  3. #3
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    #include<fstream>
    #include<iostream>
    #include<conio.h>
    #include<stdio.h>
    #include<iomanip>
    #include<ctype.h>
    #include<stdlib.h>
    #include<time.h>
    #include<string.h>
    using namespace std;

    /* XAY DUNG CLASS NGAY SINH */

    class ngaysinh
    {
    protected:
    int ngay;
    int thang;
    int nam;
    public:
    ngaysinh(){}
    ngaysinh(int ngay, int thang, int nam);
    ~ngaysinh();
    void nhapns();
    void hienns();
    };

    ngaysinh::ngaysinh(int ngay, int thang, int nam)
    {
    ngay=ngay;
    thang=thang;
    nam=nam;
    }
    ngaysinh::~ngaysinh()
    {
    ngay=thang=nam=0;
    }

    void ngaysinh::nhapns()
    {
    char ch;
    cout<<"
    Nhap ngay, thang, nam sinh(dd/mm/yyyy) ";
    cin>>ngay>>ch>>thang>>ch>>nam;
    }

    void ngaysinh::hienns()
    {
    cout<<ngay<<"/"<<thang<<"/"<<nam<<endl;
    }


    /* XAY DUNG CLASS NGUOI */

    class nguoiublic ngaysinh
    {
    protected:
    int masv;
    char ten[30];
    ngaysinh ns;
    int gt;
    public:
    nguoi(){}
    void nhapn();
    void inn();
    };

    void nguoi::nhapn()
    {
    cout<<"
    Nhap ma so sinh vien:";cin>>masv;
    cout<<"
    Nhap ho va ten sinh vien:";gets(ten);
    ns.nhapns();
    cout<<"
    Nhap gioi tinh ( Nam 1 / Nu 0 ) :";cin>>gt;
    }

    void nguoi::inn()
    {
    cout<<"
    --------------------------------------------------";
    cout<<"
    Ma so sinh vien:"<<masv;
    cout<<"
    Ho va ten:"<<ten;
    cout<<"
    Ngay sinh:";ns.hienns();
    cout<<"
    Gioi tinh:";
    if (gt==1)
    cout<<"Nam";
    else
    cout<<"Nu";
    }
    ;

    /* XAY DUNG CLASS SINH VIEN */

    class sinhvien : public nguoi
    {
    private:
    char qq[50];
    char cs[20];
    public:
    sinhvien(){}
    void nhapsv();
    void insv();
    void dssv();
    void ghi_file();
    void doc_file(int sosv);
    int sinhvien::dem();
    void timkiem_ten(char ten[]);
    };

    //HAM NHAP

    void sinhvien::nhapsv()
    {

    char tl;
    do
    {
    nhapn();
    cout<<"
    Nhap que quan:";
    gets(qq);
    cout<<"
    Nhap dien chinh sach:";
    gets(cs);
    cout<<" Lam tiep ? (y) ";
    cin>>tl;
    sinhvien::ghi_file();
    } while (tl != 'n');
    }

    //HAM IN

    void sinhvien::insv()
    {
    inn();
    cout<<"
    Que quan:"<<qq;
    cout<<"
    Dien chinh sach:"<<cs;
    }

    //GHI FILE

    void sinhvien::ghi_file()
    {
    fstream f;
    f.open("SINHVIEN.TXT", ios::binary|ios::app|ios:ut);
    f.write((char*)this, sizeof(*this));
    f.close();
    }

    //DOC FILE

    void sinhvien::doc_file(int sosv)
    {
    fstream f;
    f.open("SINHVIEN.TXT",ios::binary|ios::in);
    f.seekg(sosv* sizeof(sinhvien) );
    f.read((char*)this,sizeof(*this));
    f.close();
    }

    //DEM SO SINH VIEN

    int sinhvien::dem()
    {
    ifstream f;
    f.open("SINHVIEN.TXT", ios::binary);
    f.seekg(0, ios::end);
    if(!f)
    return 0;
    else
    return (int)f.tellg() / sizeof(sinhvien);
    }

    //HIEN THI DANH SACH SINH VIEN

    void sinhvien::dssv()
    {
    sinhvien sv;
    cout<<"
    Co tat ca "<<sinhvien::dem()<<" sinh vien";
    for (int i=0 ; i<sv.dem();i++)
    {
    sv.doc_file(i);
    sv.insv();
    }
    }


    ;

    //TIM KIEM THEO TEN

    void sinhvien::timkiem_ten(char tensv[])
    {
    sinhvien sv;
    int sosv=sinhvien::dem();
    for(int i=0;i<sosv;i++)
    {
    sv.doc_file(i);
    if(strcmp(ten,tensv)==0)
    sv.insv();
    }
    }

    //MAIN MENU

    void MM(sinhvien &sv)
    {
    cout<<"
    ***************************************** **************";
    cout<<"
    * HE THONG QUAN LY SINH VIEN *";
    cout<<"
    * *";
    cout<<"
    * QUAN LY SINH VIEN *";
    cout<<"
    * *";
    cout<<"
    * 1. Nhap vao sinh vien *";
    cout<<"
    * 2. Them Sinh Vien *";
    cout<<"
    * 3. Tim kiem theo ten sinh vien *";
    cout<<"
    * 4. Danh sach sinh vien *";
    cout<<"
    * 5. Sua~ DS *";
    cout<<"
    * 6. Xoa *";
    cout<<"
    * *";
    cout<<"
    * *";
    cout<<"
    ***************************************** **************";
    cout<<"

    Lua chon cong viec tuong ung ";
    int n;
    cin>>n;
    switch(n)
    {
    case (1) :
    {
    sv.nhapsv();
    MM(sv);
    break;
    }
    case (2) :

    case (3) :
    {
    char t[30];
    cout<<"
    Ten sinh vien can tim: ";
    gets(t);
    sv.timkiem_ten(t);
    cout<<"
    Nhan nut bat ki de quay lai !";
    getch();
    MM(sv);
    break;
    }
    case (4) :
    {
    sv.dssv();
    cout<<"
    Nhan nut bat ki de quay lai !";
    getch();
    MM(sv);
    break;
    }

    case (6) :
    {

    MM(sv);
    break;
    }

    }
    }

    //CHUONG TRINH CHINH

    void main()
    {

    sinhvien sv;

    MM(sv);
    }
    ban oi xem dum minh doan code nay ,phan them voi sua~ DS minh lam k dc ,jup minh nha

 

 

Quyền viết bài

  • Bạn Không thể gửi Chủ đề mới
  • Bạn Không thể Gửi trả lời
  • Bạn Không thể Gửi file đính kèm
  • Bạn Không thể Sửa bài viết của mình
  •