Загрузка данных


#include <stdio.h>
#include <string.h>
#include <locale.h>
#define AR_LEN 100

struct Route {
	char number[50];
	char station[50];
	int trips;
};

int main(void) {
	setlocale(LC_ALL, "rus");
	struct Route ar[AR_LEN];
	FILE *f_in = fopen("in.txt", "r");
	struct Route route = {};
	int count = 0;
	int i;
	int cnt;
	while (
		   count < AR_LEN && 
		   3 == fscanf(f_in, "%s %s %d", route.number, route.station, &cnt)) {
		int num_idx = -1;
		for (i = 0; i < count; ++i) {
			if (strcmp(route.station, ar[i].station) == 0) {
				num_idx = i;
				break;
			}
		}
		if (num_idx == -1) {
			num_idx = count;
			route.trips = cnt;
			++count;
		}
		else {
			route.trips = ar[num_idx].trips += cnt;
		}
		ar[num_idx] = route;
	}
	fclose(f_in);
	for (i = 0; i < count; ++i) {
		printf("%s %s %d\n", 
			   ar[i].number,
			   ar[i].station,
			   ar[i].trips);
	}
	
	return 0;
}