- Code:
#include<stdio.h>
#include<conio.h>
#include<iostream>
#include<string.h>
using namespace std;
class LopHoc;
class SinhVien {
private:
char MS[10];
char* HT;
int NS;
float TB;
public:
~SinhVien();
SinhVien();
SinhVien(const SinhVien& );
SinhVien(char*,char*,int,float);
void NhapTT(char* = "");
void InTT(char* = "");
friend class LopHoc;
};
SinhVien::SinhVien() {
strcpy(MS,"");
HT = new char[50];
strcpy(HT,"");
NS = 1980;
TB = 0;
};
SinhVien::SinhVien(char* MSSV,char* HTSV,int NSSV,float DTB){
strcpy(MS,MSSV);
HT = new char[50];
strcpy(HT,HTSV);
NS = NSSV;
TB = DTB;
};
SinhVien::~SinhVien() {
delete[] HT; }
SinhVien::SinhVien(const SinhVien& T){
strcpy(MS, T.MS);
HT = new char[50];
strcpy(HT, T.HT);
NS = T.NS;
TB = T.TB;
};
void SinhVien::NhapTT(char* str){
cout<<str;
cout<<"\n Ma sinh vien:";
cin>>MS;
cout<<"\n Ten sinh vien:";
cin.ignore();
cin.getline(HT,49);// lay nguyen dong, cho phep nhap khoang trang
cout<<"\n Nam sinh:";
cin>>NS;
cout<<"\n Diem TB:";
cin>>TB;
};
void SinhVien::InTT(char* str){
cout<<str;
cout<<"\n MSSV "<<MS<<" HO TEN: "<<HT<<" (NS:"<<NS<<") Diem:"<<TB;
};
class LopHoc{
private:
char ML[10];
char* TL;
char NK[9];
int SS;
SinhVien* DS[200];
public:
LopHoc();
void NhapTT();
void InTT();
void TimSinhVien();
};
LopHoc::LopHoc(){
strcpy(ML,"");
TL=new char[50];
strcpy(TL,"");
SS=0;
}
void LopHoc::NhapTT(){
cout<<"\n\nMa lop hoc: ";
cin>>ML;
cout<<"\nTen lop hoc: ";
cin.ignore();
cin.getline(TL,49);
cout<<"\nNien khoa: ";
cin>>NK;
cout<<"\nSo luong sinh vien: ";
cin>>SS;
for(int i=0;i<SS;i++){
cout<<"\nNhap sinh vien thu "<<i+1;
DS[i]=new SinhVien();
DS[i]->NhapTT();
}
}
void LopHoc::InTT(){
cout<<"\n\nMa lop: "<<ML<<". Ten lop: "<<TL
<<". Nam hoc: "<<"("<<NK<<"). So luong sv: "<<SS<<endl;
cout<<"\nDanh sach sinh vien cua lop: \n";
for(int i=0;i<SS;i++)
DS[i]->InTT();
}
// Dinh nghia ham tim sv
void LopHoc::TimSinhVien(){
char MS[10];
bool Thay = false;
cout<<"\n Nhap ma sinh vien can tim:";
cin>>MS;
for (int i=0; i < SS; i++){
if(strcmp(DS[i]->MS,MS) == 0) {
DS[i]->InTT("Thong tin");
Thay = true; } }
if(Thay == false)
cout<<"Khong tim thay sinh vien co ma so: "<<MS; };
int main(){
LopHoc a;
a.NhapTT();
a.InTT(); a.TimSinhVien();
getch();
}
/*LopHoc DSLH[100];
int SLLH;
cout<<"\nSo luong lop hoc can nhap: ";
cin>>SLLH;
for(int i=0;i<SLLH;i++){
cout<<"\nNhap thong tin lop hoc thu "<<i+1;
DSLH[i].NhapTT();
}
for(int i=0;i<SLLH;i++){
cout<<"\nThong tin lop hoc thu "<<i+1;
DSLH[i].InTT();
}
getch();
}
*/
Cảm ơn bạn đả tham gia Diển Đàn CNTT
Nếu bạn chưa có tài khoản hãy sử dụng tên tài khoản "ACTIVE" và mật khẩu "public" !!!