C program to maintain database of employees, C/C++ Programming

Assignment Help:

Aim: To implement a program to maintain information of employees in an educational institute using inheritance.

Code:                      

class staff

{

            int code;

            char name[20];

            public:

            void getdata();

            void displaydata();

};

class teacher:staff

{

            char subject[10];

            char publication[20];

            public:

            void getdata();

            void displaydata();

};

 

class typist:staff

{

            int speed;

            public:

            void getdata();

            void displaydata();

};

 

class regular:typist

{

            int salary;

            public:

            void getdata();

            void displaydata();

};

 

class casual:typist

{

            int daily_wages;

            public:

            void getdata();

            void displaydata();

};

 

class officer:staff

{

            int grade;

            public:

            void getdata();

            void displaydata();

};

void staff::getdata()

{

            cout<<"\nEmployee code: ";

            cin>>code;

            cout<<"Name: ";

            cin>>name;

}

void officer::getdata()

{

            staff::getdata();

            cout<<"Enter Officer Grade: ";

            cin>>grade;

}

void teacher::getdata()

{

            staff::getdata();

            cout<<"Enter Subject: ";

            cin>>subject;

            cout<<"Enter Publication: ";

            cin>>publication;

}

void typist::getdata()

{

            staff::getdata();

            cout<<"Enter typing speed: ";

            cin>>speed;

}

void regular::getdata()

{

            typist::getdata();

            cout<<"Enter salary: ";

            cin>>salary;

}

void casual::getdata()

{

            typist::getdata();

            cout<<"Enter daily Wages: ";

            cin>>daily_wages;

}

void staff::displaydata()

{

            cout<<"\nEmployee code: "<

            cout<<"\nName: "<

}

void officer::displaydata()

{

            staff::displaydata();

            cout<<"\nOfficer Grade: "<

}

void teacher::displaydata()

{

            staff::displaydata();

            cout<<"\nSubject: "<

            cout<<"\nPublication: "<

}

void typist::displaydata()

{

            staff::displaydata();

            cout<<"\nTyping speed: "<

}

void regular::displaydata()

{

            typist::displaydata();

            cout<<"\nSalary: Rs."<

}

void casual::displaydata()

{

            typist::displaydata();

            cout<<"Daily Wages: Rs."<

}

void main()

{

            int ch;

            clrscr();

            do

            {

                        cout<<"\n\n1. Teacher\n2. Officer\n3. Typist\n4. Exit\nEnter your choice:";

                        cin>>ch;

                        switch(ch)

                        {

                                    case 1:

                                    teacher t1;

                                    cout<<"\n\tEnter Teacher's Details:";

                                    t1.getdata();

                                    cout<<"\n\t**Details Registered Successfully**\n\n";

                                    t1.displaydata();

                                    break;

 

                                    case 2:

                                    officer o1;

                                    cout<<"\n\tEnter Officer's Details:";

                                    o1.getdata();

                                    cout<<"\n**\tDetails Registered Successfully**\n\n";

                                    o1.displaydata();

                                    break;

 

                                    case 3:

                                    int typ;

                                    cout<<"\n1. Regular Typist\n2. Casual Typist\nEnter choice:";

                                    cin>>typ;

                                    switch (typ)

                                    {

                                                case 1:

                                                regular tr1;

                                                cout<<"\n\tEnter Typist's Details:";

                                                tr1.getdata();

                                                cout<<"\n**\tDetails Registered Successfully**\n\n";

                                                tr1.displaydata();

                                                break;

 

                                                case 2:

                                                casual tc1;

                                                cout<<"\n\tEnter Typist's Details:";

                                                tc1.getdata();

                                                cout<<"\n**\tDetails Registered Successfully**\n\n";

                                                tc1.displaydata();

                                                break;

 

                                                default:

                                                cout<<"Wrong Selection!";

                                    }

                        }

            }while(ch!=4);

getch();

}

Output:

1. Teacher

2. Officer

3. Typist

4. Exit

Enter your choice: 3

 

1. Regular Typist

2. Casual Typist

Enter choice:2

 

        Enter Typist's Details:

Employee code: 555

Name: Anjali

Enter typing speed: 53

Enter daily Wages: 250

 

**      Details Registered Successfully**

Employee code: 555

Name: Anjali

Typing speed: 53 wpm

Daily Wages: Rs.250

 

1. Teacher

2. Officer

3. Typist

4. Exit

Enter your choice:4


Related Discussions:- C program to maintain database of employees

What is friend functions, Friend Functions One of the major features of...

Friend Functions One of the major features of OOP is information hiding. A class encapsulates data and methods to operate on that data in a single unit. The data from the class

#title areaundercurve.c, Write a program to find the area under the curve y...

Write a program to find the area under the curve y = f(x) between x = a and x = b, integrate y = f(x) between the limits of a and b. The area under a curve between two points can b

Explain enumerated constants, Enumerated Constants Enumerated constants...

Enumerated Constants Enumerated constants enable the creation of new types and then explain variables of these types so that their values are restricted to a set of possible va

Computes the ackermann-peter a m-n function, (a) Write a procedure that com...

(a) Write a procedure that computes the Ackermann-Peter a(m,n) function. (b) Write a helper procedure that only allows the calculation of the Ackermann-Peter function for 0≤m

Explain encapsulation and data hiding, Encapsulation and Data Hiding Th...

Encapsulation and Data Hiding The property of being a self-contained unit is known as encapsulation. The idea that the encapsulated unit can be used without knowing how it work

Palindrome, A palindrome is a string that reads the same from both the ends...

A palindrome is a string that reads the same from both the ends. Given a string S convert it to a palindrome by doing character replacement. Your task is to convert S to palindrome

Rules of inheritance, Rules of Inheritance: Private members are not...

Rules of Inheritance: Private members are not inherited; the members can be accessed only within its class. It cannot be used through the object. Protected members are

Why should i employ new instead of truthful old malloc()?, Why should I emp...

Why should I employ new instead of truthful old malloc()? A: Constructors/destructors, type safety, overridability. Constructors/destructors: unlike malloc(sizeof(Fred)), new

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd