Показать сообщение отдельно
Старый 27.05.2019, 01:52   #1 (permalink)
Jeka1606
Новичок
 
Регистрация: 27.05.2019
Сообщений: 1
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию Помощь со структурой

Здравствуйте, помогите немного подредачить код.
Все работает как положено, лишь один косяк есть .
В конце когда вводишь результат нужно по вводу маршрута который введен введён уже находить его , а у меня работает по номеру маршрутах
Код:
      #include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#define N 3
struct MARSH
{
int num;
char start[50];
char stop[50];
};

void print_marsh(int index);
void input_marsh(int index);
void sort_marsh(struct MARSH marsh[]);
struct MARSH marshruty[8];
int main()
{
int i,res;
for(i = 0;i < N;i++)
input_marsh(i);
sort_marsh(marshruty);
printf("======================\n");
for(i = 0;i < N;i++)
{
print_marsh(i);
printf("================\n");
}
do
{
scanf("%d",&res);
for(i = 0;i < N;i++)
{
if (marshruty[i].num == res)
{
printf("================\n");
print_marsh(i);
printf("================\n");
break;
}
else if(i == N - 1)
{
printf("Takogo marshruta net\n");
break;
}
}
}while(res != 999);
getch();
return 0;
}
void print_marsh(int index)
{
printf("Nomer marshruta: %d\n",marshruty[index].num);
printf("Nazvanie nachalnogo marshruta: %s\n",marshruty[index].start);
printf("Nazvanie konechnogo marshruta: %s\n",marshruty[index].stop);
}
void input_marsh(int index)
{
printf("Vvedite nomer marshruta: ");
scanf("%d",&marshruty[index].num);
printf("Vvedite nazvanie nachlnogo marshruta: ");
scanf("%s",&marshruty[index].start);
printf("Vvedite nazvanie konechnogo marshryta: ");
scanf("%s",&marshruty[index].stop);
}
void sort_marsh(struct MARSH marsh[])
{
int i,j;
struct MARSH temp;
for(i = 0;i < N;i++)
for(j = N - 1;j > i;j--)
if (marsh[j - 1].num> marsh[j].num)
{
temp = marsh[j-1];
marsh[j-1] = marsh[j];
marsh[j] = temp;
}
}
Jeka1606 вне форума   Ответить с цитированием
Ads

Яндекс

Member
 
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070