Thêm - Tim khi biet ten - tim co dtb cao nhat - xoa - in Học sinh

**** Thêm - Tim khi biet ten - tim co dtb cao nhat - xoa - in Học sinh

3 cái thêm string.h ko có math.h

#define MAX50 - #define NHAP '1' - #define TIM'2' - #define THONG_TIN '3' - #define XOA '4' - #define IN '5' - #define XOA_MH '6' - #define THOAT27

class CHocSinh

{

<tab>private:

<tab><tab>char hoten[30];

<tab><tab>int toan, van;

<tab>public:

<tab><tab>void nhap_thong_tin();

<tab><tab>void hien_thi();

<tab><tab>float diem_trung_binh();

<tab><tab>char* ten();

};

class CLop

{

<tab>private:

<tab><tab>CHocSinh arrHS[MAX];

<tab><tab>int n;

<tab>public:

<tab><tab>void init()

<tab><tab>{

<tab><tab><tab>n=0;

<tab><tab>}

<tab><tab>void nhap_hoc_sinh();

<tab><tab>void xoa_hoc_sinh(char* ten);

<tab><tab>int tim_hoc_sinh(char* ten, CHocSinh &hs);

<tab><tab>void in_danh_sach();

<tab><tab>void thong_tin_hoc_sinh_cao_diem_nhat();

};

void main()

{

<tab>clrscr();

<tab>CLop objLop;

<tab>objLop.init();

<tab>while(1)

<tab>{

<tab><tab>cout<<"

#  Chuong trinh quan ly hoc sinh";

<tab><tab>cout<<"

#\t1 - Nhap hoc sinh";

<tab><tab>cout<<"

#\t2 - Tim hoc sinh qua ten";

<tab><tab>cout<<"

#\t3 - Thong tin hoc sinh diem cao nhat";

<tab><tab>cout<<"

#\t4 - Xoa hoc sinh";

<tab><tab>cout<<"

#\t5 - In danh sach hoc sinh";

<tab><tab>cout<<"

#\t6 - Xoa man hinh";

<tab><tab>cout<<"

\tChon chuc nang: ";

<tab><tab>char c=getch();//get char :lay 1 ky tu

<tab><tab>cout<<c;

<tab><tab>if(c==THOAT)

<tab><tab>{

<tab><tab><tab>break;

<tab><tab>}

<tab><tab>else

<tab><tab>{

<tab><tab><tab>char ten_nhap[30];

<tab><tab><tab>switch(c)

<tab><tab><tab>{

<tab><tab><tab><tab>case NHAP:

<tab><tab><tab><tab><tab>objLop.nhap_hoc_sinh();

<tab><tab><tab><tab><tab>break;

<tab><tab><tab><tab>case TIM:

<tab><tab><tab><tab><tab>cout<<"

Nhap ten hoc sinh can tim: ";

<tab><tab><tab><tab><tab>gets(ten_nhap);

<tab><tab><tab><tab><tab>CHocSinh hs;

<tab><tab><tab><tab><tab>if (objLop.tim_hoc_sinh(ten_nhap, hs)==1)

<tab><tab><tab><tab><tab>{

<tab><tab><tab><tab><tab><tab>cout<<"

====> Thong tin hoc sinh tim thay:

";

<tab><tab><tab><tab><tab><tab>hs.hien_thi();

<tab><tab><tab><tab><tab>}

<tab><tab><tab><tab><tab>else

<tab><tab><tab><tab><tab>{

<tab><tab><tab><tab><tab><tab>cout<<"

====> Khong tim thay hoc sinh co ten "<<ten_nhap<<"

";

<tab><tab><tab><tab><tab>}

<tab><tab><tab><tab><tab>break;

<tab><tab><tab><tab>case THONG_TIN:

<tab><tab><tab><tab><tab>objLop.thong_tin_hoc_sinh_cao_diem_nhat();

<tab><tab><tab><tab><tab>break;

<tab><tab><tab><tab>case XOA:

<tab><tab><tab><tab><tab>cout<<"

Nhap ten hoc sinh can xoa: ";

<tab><tab><tab><tab><tab>gets(ten_nhap);

<tab><tab><tab><tab><tab>objLop.xoa_hoc_sinh(ten_nhap);

<tab><tab><tab><tab><tab>break;

<tab><tab><tab><tab>case IN:

<tab><tab><tab><tab><tab>objLop.in_danh_sach();

<tab><tab><tab><tab><tab>break;

<tab><tab><tab><tab>case XOA_MH:

<tab><tab><tab><tab><tab>clrscr();

<tab><tab><tab><tab><tab>break;

<tab><tab><tab><tab>default:

<tab><tab><tab><tab><tab>cout<<"

====> Ban chi duoc chon cac chuc nang liet ke

";

<tab><tab><tab>}

<tab><tab>}

<tab>}

}

void CLop::nhap_hoc_sinh()

{

<tab>if (n==MAX)

<tab>{

<tab><tab>cout<<"

====> Lop day, khong the nhap them

";

<tab><tab>return;

<tab>}

<tab>CHocSinh obj;

<tab>cout<<"

Nhap cac thong tin cho hoc sinh";

<tab>obj.nhap_thong_tin();

<tab>arrHS[n]=obj;

<tab>n++;

<tab>cout<<"

====> Nhap xong.

";

}

void CLop::xoa_hoc_sinh(char *ten)

{

<tab>for(int i=0; i<n; i++)

<tab>{

<tab><tab>if(strcmpi(ten,arrHS[i].ten())==0) 

<tab><tab>{

<tab><tab><tab>break;

<tab><tab>}

<tab>}

<tab>if(i>=n)

<tab>{

<tab><tab>cout<<"

====> Khong co hoc sinh ten '"<<ten<<"' de xoa

";

<tab>}

<tab>else if(i==(n-1))

<tab>{

<tab><tab>n--;

<tab><tab>cout<<"

====> Xoa xong.

";

<tab>}

<tab>else

<tab>{

<tab><tab>for(int j=i+1; j<n;j++)

<tab><tab>{

<tab><tab><tab>arrHS[j-1]=arrHS[j];

<tab><tab>}

<tab><tab>n--;

<tab><tab>cout<<"

====> Xoa xong.

";

<tab>}

}

void CLop::in_danh_sach()

{

<tab>printf("

====> Danh sach lop:");

<tab>for(int i=0;i<n;i++)

<tab>{

<tab><tab>CHocSinh objHS = arrHS[i];

<tab><tab>cout<<"

"<<objHS.ten();

<tab>}

}

int CLop::tim_hoc_sinh(char* ten, CHocSinh &hs)

{

<tab>for(int i=0; i<n; i++)

<tab>{

<tab><tab>if(strcmpi(ten,arrHS[i].ten())==0)

<tab><tab>{

<tab><tab><tab>hs=arrHS[i];

<tab><tab><tab>break;

<tab><tab>}

<tab>}

<tab>if(i>=n)

<tab><tab>return 0;

<tab>else

<tab><tab>return 1;

}

void CLop::thong_tin_hoc_sinh_cao_diem_nhat()

{

<tab>if(n==0)

<tab>{

<tab><tab>cout<<"

====> Khong co hoc sinh

";

<tab>}

<tab>CHocSinh hs=arrHS[0];

<tab>for(int i=1;i<n;i++)

<tab>{

<tab><tab>if (hs.diem_trung_binh()<arrHS[i].diem_trung_binh())

<tab><tab>{

<tab><tab><tab>hs=arrHS[i];

<tab><tab>}

<tab>}

<tab>cout<<"

====> Thong tin hoc sinh cao diem nhat:

";

<tab>hs.hien_thi();

}

void CHocSinh::nhap_thong_tin()

{

<tab>cout<<"

Nhap ho ten: ";

<tab>gets(hoten);

<tab>cout<<"

Nhap diem toan: ";

<tab>cin>>toan;

<tab>cout<<"

Nhap diem van: ";

<tab>cin>>van;

}

void CHocSinh::hien_thi()

{

<tab>cout<<"

- ho ten: ";

<tab>cout<<hoten;

<tab>cout<<"

- toan: ";

<tab>cout<<toan;

<tab>cout<<"

- van: ";

<tab>cout<<van;

}

float CHocSinh::diem_trung_binh()

{

<tab>return (toan+van)/2.0;

}

char* CHocSinh::ten()

{

<tab>return hoten;

}

Bạn đang đọc truyện trên: AzTruyen.Top

Tags: