Главная Случайная страница


Полезное:

Как сделать разговор полезным и приятным Как сделать объемную звезду своими руками Как сделать то, что делать не хочется? Как сделать погремушку Как сделать так чтобы женщины сами знакомились с вами Как сделать идею коммерческой Как сделать хорошую растяжку ног? Как сделать наш разум здоровым? Как сделать, чтобы люди обманывали меньше Вопрос 4. Как сделать так, чтобы вас уважали и ценили? Как сделать лучше себе и другим людям Как сделать свидание интересным?


Категории:

АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника






Пример программы с использованием классов





Создать класс студент, содержащий:

- ФИО студента, номер учебной группы, текущий рейтинг;

- методы для ввода и вывода данных;

- методы для возвращения член-данных класса.

Создать массив объектов класса. Осуществить его ввод и вывод. Вычислить средний рейтинг студентов. Осуществить поиск и вывод данных студента по его фамилии.

#include <iostream.h>

class student

{

char FIO[20]; // ФИО студента

char gr[10]; // Группа студента

float reit; // Рейтинг студента

public:

void vvod() // Ввод данных

{

cout<<"\n Vvod fio: ";

cin>>FIO;

cout<<"\n Vvod gruppi: ";

cin>>gr;

cout<<"\n Vvod reitinga:";

cin>>reit;

}

void vivod() // Вывод данных

{

cout<<"\n FIO: "<<FIO;

cout<<"\n Gruppa: "<<gr;

cout<<"\n Reiting: "<<reit;

}

char * rFIO() // Функция, возвращающая ФИО

{

return FIO;

}

char * rgr() // Функция, возвращающая группу

{

return gr;

}

float rreit() // Функция, возвращающая рейтинг

{

return reit;

}

};

int main()

{

student mas[10]; // массив объектов класса

int n;

cout<<"\n vvod n";

cin>>n;

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

mas[i].vvod();

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

mas[i].vivod();

// Поиск среднего рейтинга

float s=0, sr;

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

s=s+mas[i].rreit();

sr=s/n;

cout<<"\n Sredniy reiting: "<<sr;

// Поиск по введенному ФИО

cout<<"\n poisk po FIO: ";

char key[20];

cout<<"\n Vvod FIO: ";

cin>>key;

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

if (!strcmp(mas[i].rFIO(), key))

mas[i].vivod();

}

Замечания.

Функции, возвращающие значения нужны для того, чтобы получить доступ к значениям, хранящимся в член-данных объектов класса. Они используются для поиска данных и выполнения расчетов, при этом данные остаются защищены от изменения.

Функция strcmp используется для сравнения двух строк, при этом, если строки не совпадают, результатом работы будет true, если нет – false. Для того, чтобы найти совпадающие строки перед функцией стоит “!”, меняющий результат на противоположный.

Можно определить конструкторы:

// конструктор без параметров, обнуляющий данные

student ()

{

strcpy(FIO,"");

strcpy(gr,"");

reit=0;

}

// конструктор с тремя параметрами

student (char *initFIO, char *initGr, float initReit)

{

strcpy(FIO, initFIO);

strcpy(gr, initGr);

reit=initReit;

}

Можно заменить функцию ввода конструктором без параметров, тогда при любом описании объектов класса будет вызываться ввод данных. Однако, это не всегда удобно, так как при описании временных объектов их данные придется вводить.

 


Наследование

Date: 2016-05-13; view: 314; Нарушение авторских прав; Помощь в написании работы --> СЮДА...



mydocx.ru - 2015-2024 year. (0.008 sec.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав - Пожаловаться на публикацию