Динамические структуры в C
Новичок в C, поэтому обращаюсь за помощью. Вот такое дали задание:
- Оформить структуру данных в виде динамического списка.
- Разработать программу, осуществляющую: а) ввод исходных данных в список, завершение ввода должно отмечаться специальным символом (в список должно быть введено не менее пяти записей); б) вывод исходных данных на экран в виде таблицы; в) перестановку местами первого и последнего элементов динамического списка; г) вывод на экран модифицированного списка в виде таблицы;
Нужно переделать эту программу под задание:
#include <stdio.h>
#include <conio.h>
#include <locale.h>
#include <windows.h>
void main()
{
SetConsoleCP(1251);
SetConsoleOutputCP(1251);
struct bikes
{
int n;
char name[10];
char V[10];
char power[10];
char country[20];
};
int i;
struct bikes motorbike[5], zad;
for (i = 0; i < 5; i++)
{
printf("Введите название %d-го мотоцикла: ", i + 1);
gets(motorbike[i].name);
printf("Введите объем двигателя для %d-го мотоцикла: ", i + 1);
gets(motorbike[i].V);
printf("Введите лошадиные силы для %d-го мотоцикла: ", i + 1);
gets(motorbike[i].power);
printf("Введите страну изготовителя %d-го мотоцикла: ", i + 1);
gets(motorbike[i].country);
}
printf("+---------------------------------------------------------+\n"
"| | | характеристики | |\n"
"| № | Название |----------+---------| страна |\n"
"| | | обьём | л.с | |\n"
"+---+---------------+----------+---------+----------------+\n");
for (i = 0; i < 5; i++)
{
motorbike[i].n = i + 1;
printf("| %-2d| %-14s| %-9s| %-8s| %-15s|\n", motorbike[i].n, motorbike[i].name, motorbike[i].V, motorbike[i].power, motorbike[i].country);
printf("+---------------------------------------------------------+\n");
}
zad = motorbike[0];
motorbike[0] = motorbike[4];
motorbike[4] = zad;
printf("+---------------------------------------------------------+\n"
"| | | характеристики | |\n"
"| № | Название |----------+---------| страна |\n"
"| | | обьём | л.с | |\n"
"+---+---------------+----------+---------+----------------+\n");
for (i = 0; i < 5; i++)
{
motorbike[i].n = i + 1;
printf("| %-2d| %-14s| %-9s| %-8s| %-15s|\n", motorbike[i].n, motorbike[i].name, motorbike[i].V, motorbike[i].power, motorbike[i].country);
printf("+---------------------------------------------------------+\n");
}
system("pause");
}