надо сделать структуру данных чтобы она показывала имя станнцыи метро и дополнительну

Модераторы: Hawk, Romeo, Absurd, DeeJayC, WinMain

Ответить
Kleper
Сообщения: 10
Зарегистрирован: 01 дек 2013, 21:17

Ребята помогите пожалуйста сделать задание у меня. Непалу чается вот задачка!

Надо сделать структуру данных чтобы она показывала имя станции метро и дополнительную инфу(например дату её постройки) в Си не С++ если можете киньте код!
Kleper
Сообщения: 10
Зарегистрирован: 01 дек 2013, 21:17

Вот мой код переделайте его пот задание пожалуйста у меня непалучается чото если сможыте киньте мне переделаный код!
Kleper
Сообщения: 10
Зарегистрирован: 01 дек 2013, 21:17

#include <string.h>
#include <stdlib.h>
#include <stdio.h>

const int n=2;
struct ZACHETKA
{
char last_name[30];
int no;
int ocenka[3];
};

int main()
{
/*
Фамилия студента
Номер зачетки
Массив из 4 оценок
* Сортировка структур по фамилии или среднему баллу
* Удаление всех зачеток троечников
*/

int j,i;
struct ZACHETKA* box = (struct ZACHETKA*)malloc(sizeof(struct ZACHETKA) * n);
struct ZACHETKA tmp;

for(i=0; i<n; i++)
{
puts("Vvedite Familiy\n");
scanf("%s", box.last_name);

puts("Vvedite nomer\n");
scanf("%d", &box.no);
puts("Vvedite ocenki (3)\n");
scanf("%d %d %d", &box.ocenka[0], &box.ocenka[1], &box.ocenka[2]);
}

//- Cортировка по фамилии
for(i=n-1; i>0 ; i--)
for(j=0; j<i ; j++)
if(strcmp( box[ j ].last_name, box[ j+1 ].last_name ) > 0)
{
tmp = box[ j ];
box[ j ]= box[ j+1 ];
box[ j+1 ]= tmp;
}

for(i=0; i<n; i++)
{
for (int j = 0; j < 3; j++) {
if (box.ocenka[j] == 3)
goto fin; // да, в данном случае это оправдано, это си
}
printf("%s\n", box.last_name);
printf("%d\n", box.no);
for(j=0; j<3; j++)
printf("%d ", box.ocenka[j]);
printf("\n");
fin:;
}

free(box);
return 0;
}
Ответить