Zamian kolejności wierszy w pliku tekstowym.

0

Witam. Piszę program, który ma za zadanie zamienić kolejność wierszy w pliku tekstowym. Mam np: taki plik tekstowy:

Adam
Janek
Blazej
Robert
Przemek
Gienek

i po uruchomieniu programu powinienem otrzymać coś takiego:

Gienek
Przemek
Robert
Blazej
Janek
Adam

Napisałem coś takiego:

#include<stdio.h>
#include<ctype.h>
#include<string.h>
#include<stdlib.h>
#include<errno.h>

int main(void)
{
	FILE *wsk;
	int i = 0;
	int j = 0;
	int k, l;
	char c;
	char tab[10][41];
	char *t[10];

		if ((wsk = fopen("plik.txt", "r")) == NULL)
			fprintf(stderr, "Blad otwarcia pliku: %s\n", strerror(errno));
		else
		{
			while (((c = fgetc(wsk)) != NULL) && (c != EOF))
			{
				if (c == '\n')
				{
					i++;
					j = 0;
				}
				tab[i][j] = c;
				j++;
			}
		}
		for (k = 0; k < i; k++)
		{
			t[k] = tab[k];
		}
		if (fclose(wsk) != 0)
		{
			puts("Blad zamkniecia pliku");
			exit(1);
		}
		if ((wsk = fopen("plik.txt", "w")) == NULL)
			fprintf(stderr, "Blad otwarcia pliku: %s\n", strerror(errno));
		else
		{
			for (k = i; k = 0; k--)
				{
					fputs(t[k], wsk);
				}
		}
		if (fclose(wsk) != 0)
		{
			puts("Blad zamkniecia pliku");
			exit(1);
		}
	getchar();
	getchar();
	return 0;
}
 

Niestety program nie działa prawidłowo. Po uruchomieniu go plik.txt jest pusty. Co robię źle?

0
 for (k = i; k = 0; k--)
0

Edit: Problem rozwiązany.

1 użytkowników online, w tym zalogowanych: 0, gości: 1