Witam wszystkich użytkowników.
Na wstępie zaznaczam ze jestem w tym zielony i przed studiami nie miałem styczności z żadnym językiem programowania.
Mam pewien problem a mianowicie muszę napisać program w C który pobiera zawartość z istniejacego pliku i tworzy dwa nowe pliki w jednym zapisując wyłącznie duże litery a w drugim tekst bez spacji.
Próbuje napisać to od 2 godzin bez skutku, nie wiem dlaczego nie działa warunek i zapisują mi się puste pliki.
Czy mógłby ktoś poprawić to co napisałem i wytłumaczyć co robię zle?
Pozdrawiam
#include<stdio.h>
#include<stdlib.h>
int main(void)
{
FILE *f1,*f2;
int i=0;
char zn;
char tekst[50];
if((f1=fopen("plik.c","r"))==NULL)
{
printf("Nie otwarto pliku\n");
return 1;
}
else
while((zn=getc(f1))!=EOF)
{
putchar(zn);
}
if((f2=fopen("duzelitery.c","w"))==NULL)
{
printf("Nie otwarto 2 pliku\n");
return 1;
}
while((zn=getc(f1))!=EOF)
{
if(zn>='A'&&zn<='Z')
fprintf(f2,"%s",zn);
}
fclose(f1);
fclose(f2);
system("pause");
return 0;
}
PS: Jaki warunek muszę dać w petli czy if-ie żeby nie wyświetlało spacji?