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

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

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

Структура "Ученик" - C++

04.04.2014, 10:52. Просмотров 486. Ответов 2
Метки нет (Все метки)

Составить программу, выводящую на экран анкетные данные учеников (Ф. И. О., год рождения, адрес, сведения о родителях). Распечатать данные об учениках, родившихся ранее заданного года.
мы вводим в программе данные через структуру
записываем их в новый файл
а потом открываем этот файл еще раз и задам условие
и исохдя из условия выводим учеников на экран
КАК ЭТО РЕАЛИЗОВАТЬ???????
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.04.2014, 10:52     Структура "Ученик"
Посмотрите здесь:

Структура "Ученик". Отсортировать по фамилии - C++
Годовые оценки по десяти предметам,10ти учеников класса напечатаны в виде таблицы (в первой строке — оценки первого ученика, во ...

Объединение (union) "Ученик" - C++
Имеется информация об учениках младшей школы. Для всех учеников известны: фамилия, имя и класс. Для учеников 1-х классов дополнительно...

Структура "Студент". Найти студента с минимальным доходом - C++
Для получения места в общежитии формируется список студентов, который включает ФИО студента, группу, средний балл, доход на члена семьи....

Структура "Автобус". Организовать поиск по номеру маршрута - C++
Описать структуру AVTO. которая содержит следующие поля: номер автобуса, номер маршрута, фамилия водителя. Организовать поиск по номеру...

Структура "Сканер". Нужны советы профессионалов по программе - C++
Программа ПОЧТИ работает, очень все сырое, код мне кажется мог быть и короче. Прошу Вас, эксперты, указать явные недоработки и как было бы...

Структура "Студент". Перевести всех на следующий курс - C++
составить электронную библиотеку студентов вводящую информацию с клавиатуры для N студентов и переводящую их на следующий курс... при том...

Структура "Штраф". Функция поиска криво работает - C++
Не работает функция poisk(); Переписать в новый файл информацию о штрафах, размер которого и дата вводятся с клавиатуры. ...

Структура "ФИО": считать из файла, добавить запись - C++
#include <string.h> #include <stdio.h> #include <stdlib.h> #include <conio.h> #include <io.h> #include <fcntl.h> #include...

Структура "Цветной планшетный сканер", функции и файлы - C++
Здравствуйте:) Пожалуйста, помогите решить задачу Для хранения данных о цветных планшетных сканерах описать структуру вида: struct...

Структура: Определить, имеется ли книга с названием "Информатика". - C++
Сведения о книге - это фамилия автора, название и год издания. Определить, имеется ли книга с названием "Информатика". Если да, то сообщить...

Структура "Время". Функции преобразования в секунды и из секунд - C++
Здравствуйте решаю такую вот задачку ,прошу помощи : Модифицируйте программу, описанную в упражнении 11 главы 4 "Структуры",...

Динамическая структура "Стек". Обновить значение элемента - C++
Искал в интеренете везде только добавление есть #include <iostream> /*НАША СТРУКТУРА*/ struct List { int x;...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
don_keyhot
4 / 4 / 2
Регистрация: 02.04.2014
Сообщений: 60
04.04.2014, 11:45     Структура "Ученик" #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
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
104
105
106
107
108
109
110
111
112
113
114
// -----------------------------------------------------------------
// Лабораторная работа №2. Указатели и структуры. Динамическое распределение памяти
// Задание 3.
// Захватить память для массива из 10 структур задания 1.
// Заполните массив данными из файла "1.dat".
// Вывести информацию о людях, родившихся в определенный месяц. 
// Высчитать для них среднюю зарплату.
// Перед завершением программы освободить память.        
//
// Вариант 1.
// студента группы 107213 Абрамчука Антона Алексеевича
//
// -----------------------------------------------------------------
 
#include <iostream>
#include <locale>
#include <fstream>
 
using namespace std;
 
int main()
{
    // русификация
    setlocale(LC_CTYPE, "Russian");
    
 
    // тип структуры note
    struct note
    {
        char fam[20];   // фамилия
        char name[20];  // имя
        char phone[10]; // телефон
        int data_r[3];  // дата рождения массив из трех чисел: год, месяц, день
        int oklad;      // оклад
    };
 
    note *pa_note = new note[10];         // указатель на массив из 10 структур
 
    ifstream file_in;                             // объявляем входной файл
    file_in.open("1.dat", ios::in|ios::binary);   // открываем его для чтения из него
    if ( !file_in.is_open() )                     // если файл не удалось открыть
    {
        cout << "Не могу открыть файл 1.dat";       // сообщаем об ошибке
        return 1;                                   // и завершаем программу с ошибкой
    }
 
    // читаем данные из файла
    cout << "Список первых 10-ти сотрудников: \n";
    cout << "Фамилия, Имя, Телефон, Дата рождения, Оклад \n";
    for (int i = 0; i < 10; i++)
    {
        // читаем по одному сотруднику за раз
        file_in.read((char *) &pa_note[i], sizeof note);
 
        // вывод для проверки
        cout << "\n" << i+1 << ") "
        //cout << "фамилия        " 
        << pa_note[i].fam << " " 
        //<< "имя            " 
        << pa_note[i].name << ", " 
        //<< "телефон        " 
        << pa_note[i].phone << ", " 
        //<< "день рождения  " 
        << pa_note[i].data_r[2] << "/" 
        //<< "месяц рождения " 
        << pa_note[i].data_r[1] << "/" 
        //<< "год рождения   " 
        << pa_note[i].data_r[0] << ", " 
        //<< "оклад          "
        << pa_note[i].oklad << " руб";
    }
 
    file_in.close(); // закрываем файл
 
    int mes;                  // месяц рождения
    int kol = 0;              // количество сотрудников рожденных в указанном месяце
    double summa = 0;         // сумма окладов
    double sredn_oklad = 0;   // средний оклад
 
    cout << "\n\n Введите месяц рождения -> "; cin >> mes;
    for (int i = 0; i < 10; i++)
        if (pa_note[i].data_r[1] == mes)
        {
            cout << "\n" << i+1 << ") "
            //cout << "фамилия        " 
            << pa_note[i].fam << " " 
            //<< "имя            " 
            << pa_note[i].name << ", " 
            //<< "телефон        " 
            << pa_note[i].phone << ", " 
            //<< "день рождения  " 
            << pa_note[i].data_r[2] << "/" 
            //<< "месяц рождения " 
            << pa_note[i].data_r[1] << "/" 
            //<< "год рождения   " 
            << pa_note[i].data_r[0] << ", " 
            //<< "оклад          "
            << pa_note[i].oklad << " руб";
 
            kol++; // увеличиваем кол-во сотрудников рожденных в месяце = mes
            summa = summa + pa_note[i].oklad; // сумма их окладов
        }
 
    // получим средний оклад разделив всю сумму на количество сотрудников
    sredn_oklad = summa / kol;
    cout << "\n\n Средний оклад сотрудников, рожденных в " << mes << " месяце = " << sredn_oklad;
 
    // освобождаем выделенную нами память
    delete [] pa_note;
 
    cout << "\n\n";
    // пауза перед выходом
    system("pause");
}
kornelyk
1 / 1 / 0
Регистрация: 07.01.2012
Сообщений: 145
08.04.2014, 19:11  [ТС]     Структура "Ученик" #3
спасибо конечно, но для меня пока это сложно, препод не поверит
Ответ Создать тему
Опции темы

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