Регистрация не е нужна, освен при създаване на тема в "Задача на седмицата".

Затруднение с програма

Затруднение с програма

Мнениеот Гост » 02 Дек 2015, 21:06

За съжаление във форума за информатика не се мярка жива душа и е безсмислено да продължавам да питам там каквото и да било. Затова реших да го направя тук и се надявам, че все някой ще отговори на въпросите ми.
Започнах да правя една програма и искам в нея да включа или динамичен масив от структури, или свързан списък. Можете ли да ми кажете как точно става, защото съм страшно объркан. Кодът е на С, а не на С++. И как точно да реализирам функции за добавяне, изтриване на елемент, търсене по някакъв ключ?
Това, което следва, е една много груба чернова. В нея дори още не съм направил опит да заделям памет. Но ето я и нея. Защо след въвеждането на данните за първото пътуване не позволява да се въвежда нищо в полето first_stat?
Код: Избери целия код
#include <stdio.h>
#include <stdlib.h>
#include <malloc.h>
#include <string.h>
#include <math.h>

struct Trip
{
       char first_stat[50];
       char last_stat[50];
       char mid_stat[50];
       char hour_leaving[10];
       float price;
} Arr[5];

void createArr ()
{
     int i;
     for (i=0; i<5; i++)
     {
         printf ("%d trip \n \n", i+1);
         printf ("First station: \n \n");
         gets(Arr[i].first_stat);
         printf ("\n \n");
         printf ("Last station: \n \n");
         gets(Arr[i].last_stat);
         printf ("\n \n");
         printf ("Through: \n \n");
         gets(Arr[i].mid_stat);
         printf ("\n \n");
         printf ("Hour leaving: \n \n");
         gets(Arr[i].hour_leaving);
         printf ("\n \n");
         printf ("Price: \n \n");
         scanf ("%f", &Arr[i].price);
         printf ("\n");
     }
}

void print ()
{
     int i;
     for (i=0; i<5; i++)
     {
         printf ("From:              %s \n", Arr[i].first_stat);
         printf ("Through:           %s \n", Arr[i].mid_stat);
         printf ("To:                %s \n", Arr[i].last_stat);
         printf ("Hour leaving:      %s \n", Arr[i].hour_leaving);
         printf ("Price:             %f \n", Arr[i].price);
         for (int j=0; j<50; j++)
         {
             char ch = '-';
             printf ("%c", ch);
         }
         printf ("\n");
     }
}

int main ()
{
    createArr ();
    print ();
    system ("pause");
    return 0;
}


Последно избутване Anonymous от 02 Дек 2015, 21:06
Гост
 

Назад към LaTeX, Matlab, Maple, Mathematika...



Кой е на линия

Регистрирани потребители: Google Adsense [Bot], Google [Bot]

Форум за математика(архив)
cron