Tuesday , 21 March 2023
Home » Tự học Lập Trình » Hướng đối tượng » Kế thừa lớp sinh viên Visual C++

Kế thừa lớp sinh viên Visual C++

kethuasinhvien

Kế thừa lớp sinh viên Visual C++SV

a. Xây dựng một lớp SV để mô tả các sinh viên trong một Khoa của một Trường Đại học, lớp SV gồm các thành phần sau:

– Lop: Mô tả lớp học của sinh viên.

– Hoten: Mô tả họ tên của sinh viên.

– Hàm thiết lập.

– Hàm huỷ bỏ.

– Hàm hiển thị thông tin về một SV.

b. Xây dựng một lớp SVSP để mô tả các sinh viên thuộc hệ sư phạm. Lớp được kế thừa từ lớp SV và bổ sung thêm các thành phần sau:

– Dtb: Mô tả điểm trung bình của sinh viên.

– Hocbong: Mô tả học bổng của sinh viên.

– Hàm thiết lập.

– Hàm hiển thị thông tin về một SVSP.

c. Xây dựng một lớp SVCN để mô tả các sinh viên thuộc hệ cử nhân. Lớp được kế thừa từ lớp SVSP và bổ sung thêm các thành phần sau:

– Hocphi: Mô tả học phí của sinh viên cử nhân.

– Hàm thiết lập.

– Hàm hiển thị thông tin về một SVCN.

d. Viết chương trình khai báo một mảng 3 con trỏ đối tượng kiểu SVCN, nhập dữ liệu vào để tạo 3 đối tượng SVCN. Gọi hàm hiển thị của lớp SVCN thông qua các con trỏ này để in thông tin về một SVCN ra màn hình.

Download Code “Kế thừa lớp sinh viên Visual C++”  (Project VC++ 2010 Express) 

#include<iostream>
#include<stdio.h>
#include<iomanip>
#include<string.h>
#include<conio.h>
using namespace std;
class SV {
private:
char *name,*lop;
public:
SV (char *ten=NULL,char *tlop=NULL)
{
name=strdup(ten);
lop=strdup(tlop);
}
~SV()
{
delete name;
delete lop;
}
void dsp ()
{
cout<<setw(20)<<name<<setw(10)<<lop;
}
};
class SVSP: public SV {
private:
float dtb, hb;
public:
SVSP (char *ten=NULL,char *tlop=NULL,float ddtb=0,float thb=0):SV (ten,tlop)
{
dtb=ddtb;
hb=thb;
}
void dsp()
{
SV::dsp();
cout<<setw(5)<<dtb<<setw(10)<<hb;
}
};
class SVCN : public SVSP {
private:
float hp;
public:
SVCN (char *ten=NULL,char *tlop=NULL,float ddtb=0,float thb=0,float thp=0):SVSP(ten,tlop,ddtb,thb)
{
hp=thp;
}
void dsp()
{ cout<<setiosflags(ios::left);
SVSP::dsp();
cout<<setw(10)<<hp;
}
};
void main()
{

SVCN *a[3];
int i;
char name[30],lop[10];
float dtb,hb,hp;
for (i=0;i<3;i++)
{
cout<<“—-Thong tin sinh vien thu “<<i+1<<“——-\n”;
cout<<“Nhap ten: “;fflush(stdin);gets(name);
cout<<“Nhap lop: “;fflush(stdin);gets(lop);
cout<<“Nhap DTB: “;cin>>dtb;
cout<<“Nhap hoc bong: “;cin>>hb;
cout<<“Nhap hoc phi: “;cin>>hp;
a[i]=new SVCN(name,lop,dtb,hb,hp);
}
cout<<“\n=====THONG TIN SINH VIEN =======\n”;
for (i=0;i<3;i++)
{
cout<<“\n”;
a[i]->dsp();
}
getch();
}

Kết quả chương trình Kế thừa lớp sinh viên Visual C++:

kethua-sinhvien

Lượt xem (7443)

About Nhat MInh

Nhat MInh
Love Computer

Xem thêm

header in c++

Tách chương trình lớn thành các file riêng

Tại sao cần phải tách Khi lập trình với bất cứ ngôn ngữ nào thì …

Để lại bình luận:

Loading Facebook Comments ...

Leave a Reply

Your email address will not be published. Required fields are marked *