1 / 1 / 2
Регистрация: 30.07.2014
Сообщений: 98
1

Создание дин массива для структуры

22.10.2014, 18:40. Показов 867. Ответов 6
Метки нет (Все метки)

программа для создания студентов и записывания их данных (фамилия оценка группа).
структура:

C
1
2
3
4
5
6
struct stud{
    int qty;
    char surname[30];
    int group;
    int mark;
};
возможно ли создать дин массив каждый массив - отдельный студент, для последующей передачи в функции

C
1
2
3
4
5
6
7
8
9
10
11
void main (){
    int qy=0;
quantity (qy);
[COLOR="Black"]stud **folio= new stud* [qy];
for (int i=0; i<qy; i++)
    stud folio[i]= new stud [4];[/COLOR]
surn (qy, folio);
group(qy, folio);
mark (qy, folio);
out (qy, folio);
}
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
22.10.2014, 18:40
Ответы с готовыми решениями:

Создание массива шаблонной структуры в шаблонном классе
Столкнулся с проблемой. Имеется шаблонная структура с двумя полями и шаблонный класс. В классе...

Добавление и удаление элементов дин массива
Задание: Создать класс «машина», имеющая марку, число цилиндров, мощность и цену. Определить...

Передача дин массива без сохранения изменений
Мне необходимо передать динамический массив в функцию, там ее изменить, сложить, перемножить и...

Как увеличить размер дин. массива средствами С++
Привет всем!!! Подскажите плз, как увеличить размер (т.е добавить один элемент в конец)...

6
1 / 1 / 2
Регистрация: 30.07.2014
Сообщений: 98
22.10.2014, 18:49  [ТС] 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
#include <iostream>
#include <string>
 
using namespace std;
 
 
struct stud{
    int qty;
    char surname[30];
    int group;
    int mark;
};
 
void quantity (int &qy);
void surn (int qy, stud** folio);
void group(int qy, stud** folio);
void mark (int qy, stud** folio);
void out (int qy, stud** folio);
 
void main (){
    int qy=0;
quantity (qy);
stud **folio= new stud* [qy];
for (int i=0; i<qy; i++)
    folio[i]= new stud [4];
surn (qy, folio);
group(qy, folio);
mark (qy, folio);
out (qy, folio);
}void quantity (int &qy){
cout <<"how many students do you have?\n";
cin >>qy;
}
 
void surn (int qy, stud** folio){
 
    for (int i=0; i<qy; i++){
 
        cout <<"enter "<<i+1<<" students surname:\t";
        cin >>folio[i][1].surname;
        folio[i][0].qty=i+1;
 
    }
 
}
 
void group(int qy, stud** folio){
 
    for (int i=0; i<qy; i++){
 
        cout <<"enter "<<i+1<<" students group:\t";
        cin >>folio[i][2].group;
    
    }
}
 
void mark (int qy, stud** folio){
 
    for (int i=0; i<qy; i++){
    cout <<"enter "<<i+1<<" students group:\t";
    cin >>folio[i][3].mark;
    }
 
}
 
void out (int qy, stud** folio){
 
    cout <<"№\tsurname\tmark\tmark\n\n";
 
    for (int i=0; i<qy; i++){
        cout <<folio[i][0].qty<<")\t"<<folio[i][1].surname<<"\t"<<folio[i][2].group<<"\t"<<folio[i][3].mark<<"\n";
    }
}
0
Модератор
Эксперт С++
12098 / 9771 / 5908
Регистрация: 18.12.2011
Сообщений: 26,229
22.10.2014, 19:08 3
см. Распространенные ошибки
0
Модератор
Эксперт С++
12098 / 9771 / 5908
Регистрация: 18.12.2011
Сообщений: 26,229
22.10.2014, 19:11 4
Цитата Сообщение от Vladislavv Посмотреть сообщение
возможно ли создать дин масси
А что этому мешает?
0
1 / 1 / 2
Регистрация: 30.07.2014
Сообщений: 98
22.10.2014, 21:54  [ТС] 5
 Комментарий модератора 
Перестаньте создавать новые темы по одной и той же задаче!

почему игнорируется cin.getline(found, 30)


C
1
2
3
4
5
6
7
8
9
10
11
12
13
void main (){
    int qy=0;
quantity (qy);
stud **folio= new stud* [qy];
for (int i=0; i<qy; i++)
    folio[i]= new stud [5];
surn (qy, folio);
group(qy, folio);
mark (qy, folio);
out (qy, folio);
char *found= new char[30];
cin.getline(found, 30);
    int c=0;
0
7166 / 6141 / 2802
Регистрация: 14.04.2014
Сообщений: 26,462
22.10.2014, 22:09 6
Поток непустой.
0
Модератор
Эксперт С++
12098 / 9771 / 5908
Регистрация: 18.12.2011
Сообщений: 26,229
22.10.2014, 22:09 7
Цитата Сообщение от Vladislavv Посмотреть сообщение
почему игнорируется cin.getline(found, 30)
Ошибка вам была указана в 3 сообщении.
После чтения строки по cin>>str;
указатель потока стоит на символе "конец строки".
Следующее чтение строки прочтет пустую строку.
Посмотрите отладчиком.
https://www.cyberforum.ru/cpp-... 62479.html
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
22.10.2014, 22:09
Помогаю со студенческими работами здесь

Непонятная ошибка при инициализации дин. массива
Вылетает на memset'е с ошибкой записи. Что неправильно? int i = 0; int j = 0; int k = 0; ...

Создание функции для структуры.
Дана структура и массив структур. struct vedomost { char surname; //фамилия char otdel; ...

Не могу очистить ячейки дин. массива. Только delete[]
#include &lt;iomanip&gt; #include &lt;iostream&gt; #include &lt;conio.h&gt; #include &lt;stdio.h&gt; #include &lt;string&gt;...

Крашится программа при попытке присваивания значения элементу дин-го массива
Не могу понять в чём ошибка. Я только учусь, поэтому возможно, что ошибка элементарная. Вот...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru