Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
ohshitniggaumad
0 / 0 / 0
Регистрация: 15.05.2014
Сообщений: 3
#1

Наследование классов - C++

15.05.2014, 22:07. Просмотров 247. Ответов 1
Метки нет (Все метки)

Создать класс-родитель «ученик», класс-наследник «ученик и его оценки» (по некоторым предметам), и класс-наследник «журнал».

Есть прога написанная структурой
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
#include <stdio.h>
#include <tchar.h>
#include <conio.h>
#include <process.h>
#include <dos.h>
#include <iostream>
#include <string.h>
 
#pragma pack(2)
class CStudent
{
public:
    char name[64];
    int marks[5];
    int total;
};
 
class CStudents
{
public:
    #define MaxSz  100
    int m_nMaxStudents;
    CStudent m_studList[MaxSz];
    CStudents();
    void AddRecord(const char *name, int *marks);
};
 
CStudents::CStudents()
{
      m_nMaxStudents = 0;
}
 
void CStudents::AddRecord(const char *name, int *marks)
{
      int pos = m_nMaxStudents;
      strcpy(m_studList[pos].name,name);
      m_studList[pos].total = 0;
      for(int i = 0; i < 5; i++)
      {
            m_studList[pos].marks[i] = marks[i];
            m_studList[pos].total += marks[i];;
      }
      m_nMaxStudents++;
}
 
CStudents theStudents;
 
void ViewRecords()
{
    std::cout << "_______________________________________________________________\n";
    std::cout << "SNo Student Name       Sub1   Sub2   Sub3   Sub4   Sub5   Total\n";
    std::cout << "_______________________________________________________________\n";
 
    for(int i = 0; i < theStudents.m_nMaxStudents; i++)
    {
        printf("%3d %-19s %-6d %-6d %-6d %-6d %-6d %-6d\n",
                i + 1,
                theStudents.m_studList[i].name,
                theStudents.m_studList[i].marks[0],
                theStudents.m_studList[i].marks[1],
                theStudents.m_studList[i].marks[2],
                theStudents.m_studList[i].marks[3],
                theStudents.m_studList[i].marks[4],
                theStudents.m_studList[i].total);
    }
    std::cout << "_______________________________________________________________\n";
}
 
 
void InputRecords()
{
      char name[64];
      int marks[5];
 
      std::cout << "Student Name: ";    
      std::cin >> name;
     
      for(int i = 1; i <= 5; i++)
      {
        std::cout << "Sub " << i << " Mark: ";
        std::cin >> marks[i-1];
      }
      theStudents.AddRecord(name, marks);
}
 
 
int main()
{
    ::system("cls");
    std::cout << "Welcome to Student MarkList Application\n";
    std::cout << "Enter the number of Students: ";
 
    int numStudents = -1;
    std::cin >> numStudents;
 
    for(int i = 0; i < numStudents; i++)
    {
        std::cout << "\n\nEnter the " << i + 1 << " student information:\n";
       InputRecords();
    }
    ViewRecords();
    getch();
}
необходимо то же самое, только наследованием и классами, помогите пожалуйста
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.05.2014, 22:07
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Наследование классов (C++):

Заменить наследование классов на наследование интерфейсов - C++
#include &lt;iostream&gt; #include &lt;assert.h&gt; using namespace std; int people_on_base = 100; int vehicles_on_base = 100; double...

Наследование классов. Копирование производных классов - C++
Здравствуйте всем, у меня такой вопрос: написал код #include &quot;stdafx.h&quot; class A //Создаем класс А { int mA; ...

наследование классов - C++
Здарова, народ! :D Вот сижу и пытаюсь сделать задание из книги по которой &quot;учимся программировать в универе&quot;, а там такой поворот...

Наследование классов - C++
Дан базовый класс, показать как он будет наследоваться произвольным классом class planet { int moons; double diameters; public; ...

Наследование классов - C++
Доброго времени Вам. я с толкнулся с неприятной проблемой делая лабораторную работу по ООП, а именно запутался(а если честно то и...

Наследование Классов - C++
class base { public: int t; base(){t=0;}; ~base(){}; }; class one:public base { public:

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
ohshitniggaumad
0 / 0 / 0
Регистрация: 15.05.2014
Сообщений: 3
19.05.2014, 23:46  [ТС] #2
В общем я тут написал, как в целом нормально?? или можно как то получше это сделать? мб есть что исправить?

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
#include<iostream>
#include<conio.h>
using namespace std;
 
class student
{
   public:
     int number;
     char name[20];
     void get()
     {
              cout<<"Enter the students number:";
              cin>>number;
              cout<<"Enter the students name:";
              cin>>name;
              
     }
};
 
class studentsmarks
{
   public:
       int Sub1,Sub2,Sub3,Sub4;
     void get1()
     {             
              cout<<"Enter the mark1:";
              cin>>Sub1;
              cout<<"Enter the mark2:";
              cin>>Sub2;
              cout<<"Enter the mark3:";
              cin>>Sub3;
              cout<<"Enter the mark4:";
              cin>>Sub4;
     }
};
class journal: public student, public studentsmarks
{
    public:
     void display()
     {
              cout <<number<<"\t"<<name<<"\t"<<"\t"<<Sub1<<"\t"<<Sub2<<"\t"<<Sub3<<"\t"<<Sub4<<"\t"<<"\n";
     }
};
 
void main()
{
    int i,n;
    journal j[5];
    cout<<"Enter the number of students:";
    cin>>n;
    for(i=0;i<n;i++)
    {
              j[i].get();
              j[i].get1();
             
    }
    cout<<"\ne_no \tname \t Sub1  \t   Sub2  \t   Sub3  \t   Sub4   \t \n";
    for(i=0;i<n;i++)
    
    {
              j[i].display();
    }
    getch();
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.05.2014, 23:46
Привет! Вот еще темы с ответами:

Наследование классов - C++
Дан базовый класс, показать как он будет наследоваться произвольным классом class planet { int moons; double diameters; public; ...

Наследование классов - C++
Здравствуйте. Помогите пожалуйста решить проблему по наследованию классов. Есть базовый класс class parent { ...

наследование классов - C++
нужно создать программу состоящую из классов по принципу наследования то есть отец-сын-внук заранее спасибо!!

наследование классов в C++ - C++
решил я с SDL поиграться.... ругается на 9 строчку компилятор, где ошибку допустил не подскажете?) main.cpp #include &lt;iostream&gt; ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru