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

Возврат функцией массива структур - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Реализовать для разработанного класса методы-операторы http://www.cyberforum.ru/cpp-beginners/thread1190111.html
Реализовать для разработанного класса методы-операторы: +, - (плюс и минус) - для сложения и вычитания значений времени, при этом все данные должны быть типа CTime ++, --(два плюса или два минуса подряд) – уменьшение или увеличение значения времени на 1 секунду == (два знака равенства подряд) - для сравнения двух значений времени, результатом этой операции должен быть 0, если значения...
C++ Шифрование/дешифрование файлов методом перестановки Необходимо разработать программу для шифрования/дешифрования файлов методом перестановки. Размер блока 11 байт.Так же в программе должна быть возможность использования блочного шифра, в данном случае используется режим Output Feedback (OFB). Программа должна выводить информацию о процессе шифрования/дешифрования и информацию о скорости выполнения процедур (символов в секунду). Есть... http://www.cyberforum.ru/cpp-beginners/thread1190107.html
С++ Дана строка содержащая текст заканчивающийся точкой. Вывести на экран слова содержащие 3 буквы C++
ребята, буду очень благодарна за программу! и если не сложно, добавьте комментарии. но можно и без них. всем добра и шикарной погоды.
C++ Измерение и вывод времени, затраченного на сортировку чисел
Необходимо написать программу в с++, которая: Читает файл input.txt с числами (в каждой строке есть одно и только одно целое положительное число); в файле может быть от одного до 100000 (ста тысяч) чисел; сортирует числа по неубыванию; записывает отсортированные числа в файл output.txt (формат тот же: каждое число записывается в свою строку). Программа должна измерять время, затраченное на...
C++ Вид матрицы с нулевыми строками http://www.cyberforum.ru/cpp-beginners/thread1190087.html
помогите написать программу, где все элементы четных строк - нулевые. чтоб такую матрицу выводило.
C++ Головоломка //PC1.cpp== Считывает числа с текстового файла и записывает в массив. #include <fstream> #include <iostream> int SIZE = 50; using namespace std; int i; int main(int argc, char *argv) { system("chcp 1251"); подробнее

Показать сообщение отдельно
Exzotick
0 / 0 / 0
Регистрация: 25.05.2014
Сообщений: 25
29.05.2014, 15:44  [ТС]     Возврат функцией массива структур
montkay, почему-то у меня выдает ошибку "Необработанное исключение по адресу".
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
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
//7.4
#include <iostream>
#include <algorithm>
#include <windows.h>
#include <cstring>
#include <iomanip>
//#include <cstdio>
using namespace std;
 
const int name_size = 30, n = 6;
struct students
{
    char name[name_size];
    char group[n];
    int age;
    float average;
    float scholarship;
};
 
students* fill_arr(int);
void use_arr (students*);
students  fill_name(students);
students  fill_group(students);
int fill_age(students);
float fill_average(students);
float fill_scholaship(students);
void print_data(students);
void print_data_tab(students);
 
int main()
{
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
    char choice;
    students *students_arr = NULL;// students* Pstud=NULL;
    int students_num;
    cout << "Заполните информацию о студентах \n1-ввести данные с клавиатуры \n2-использовать заготовку" << endl;
    cin >> choice;
    switch (choice)
    {
    case '1':
        cout << "Введите количество студентов: ";
        cin >> students_num;
        students_arr = fill_arr(students_num);
        break;
    case '2':
         use_arr (students_arr);
        students_num = 8;//sizeof (students_arr) / sizeof (students);
        break;
    }
    system("cls");
    cout << "\nИнформация о студентах: \n" << endl;
    int i, j; 
    for (i = 0; i < students_num; i++)
        for (j = 0; j<students_num - i - 1; j++)
            if (strcmp(students_arr[j].group, students_arr[j + 1].group) > 0)
                swap(students_arr[j], students_arr[j + 1]);
            else
            if (strcmp(students_arr[j].group, students_arr[j + 1].group) == 0)
                if (strcmp(students_arr[j].name, students_arr[j + 1].name) > 0)
                    swap(students_arr[j], students_arr[j + 1]);
    for ( i = 0; i < students_num; i++)
        print_data_tab(students_arr[i]);
    system("pause");
}
students* fill_arr(int students_num)
{
    students* students_arr = new students[students_num];
    for (int i = 0; i < students_num; i++)
    {
        students_arr[i] = fill_name(students_arr[i]);
        students_arr[i] = fill_group(students_arr[i]);
        students_arr[i].age = fill_age(students_arr[i]);
        students_arr[i].average = fill_average(students_arr[i]);
        students_arr[i].scholarship = fill_scholaship(students_arr[i]);
    }
    return students_arr;
}
void use_arr (students* Pstud)
{
    students student1 = { "Урманов Роман Сергеевич", "Б8120", 18, 5.0, 7500 },
        student2 = { "Спицын Вячеслав Валерьевич", "Б8120", 17, 4.5, 0 },
        student3 = { "Аристова Дарья Павловна", "Б8120", 18, 4.0, 0 },
        student4 = { "Иванов Петр Владимирович", "М6180", 22, 5.0, 9000 },
        student5 = { "Дорошин Сергей Александрович", "М6180", 22, 4.9, 2800 },
        student6 = { "Годенко Николай Борисович", "Б5216", 19, 4.3, 2400 },
        student7 = { "Афанасьев Виктор Иванович", "Б5216", 19, 4.0, 1900 },
        student8 = { "Галинов Вячеслав Иванович", "Б5216", 19, 3.8, 0 };
    students default_students_arr[] = { student1, student2, student3, student4, student5, student6, student7, student8 };
    for (int i=0; i<8; i++)
        Pstud[i]=default_students_arr[i];
}
students  fill_name(students stu_data)
{
    cout << "\nВведите имя студента: ";
    cin.get();
    gets_s(stu_data.name, sizeof (stu_data.name));
    return stu_data;
}
students fill_group(students stu_data)
{
    cout << "Введите группу: ";
    gets_s(stu_data.group, sizeof (stu_data.group));
    return stu_data;
}
int fill_age(students stu_data)
{
    cout << "Введите возраст студента: ";
    cin >> stu_data.age;
    return stu_data.age;
}
float fill_average(students stu_data)
{
    cout << "Введите средний балл студента: ";
    cin >> stu_data.average;
    return stu_data.average;
}
float fill_scholaship(students stu_data)
{
    cout << "Введите размер стипендии: ";
    cin >> stu_data.scholarship;
    return stu_data.scholarship;
}
void print_data(students stu_data)
{
    cout << "ФИО студента: " << stu_data.name << endl
        << "Группа: " << stu_data.group << endl
        << "Возраст: " << stu_data.age << endl
        << "Средний балл: " << stu_data.average << endl
        << "Стипендия: " << stu_data.scholarship << endl << endl;
}
void print_data_tab(students stu_data)
{
    cout << setiosflags(ios::left) << setw(sizeof (stu_data.group)) << stu_data.group << setw(sizeof (stu_data.name)) << stu_data.name << setw(4) << stu_data.age << setw(5) << stu_data.average << setw(6) << stu_data.scholarship << endl;
}
 
Текущее время: 17:34. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru