Динамические структуры в C

Новичок в C, поэтому обращаюсь за помощью. Вот такое дали задание:

  1. Оформить структуру данных в виде динамического списка.
  2. Разработать программу, осуществляющую: а) ввод исходных данных в список, завершение ввода должно отмечаться специальным символом (в список должно быть введено не менее пяти записей); б) вывод исходных данных на экран в виде таблицы; в) перестановку местами первого и последнего элементов динамического списка; г) вывод на экран модифицированного списка в виде таблицы;

Нужно переделать эту программу под задание:

#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");
}

Ответы (0 шт):