Ahoj,
mám problém se zápisem upravených znaků do souboru.
Zadání příkladu je takové:
Napište program který:
1. načtete větu z klávesnice
2. uloží tuto větu do souboru data.txt
3. čte ze souboru data.txt jednotlivé znaky, malé znaky (a-z) převede na velké a postupně je ukládá do soboru VELKE.txt a zároveň je tiskne na obrazovku.
Můj kód:
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
int main()
{
FILE *data, *VELKE;
char nactenaVeta[100];
char cteniZeSouboru[100];
int i, znak;
printf("Zadejte vetu pro nacteni: ");
gets(nactenaVeta);
data = fopen("data.txt", "w");
fputs(nactenaVeta, data);
fclose(data);
VELKE = fopen("VELKE.txt", "w");
for(i = 0; i < strlen(nactenaVeta); i++)
{
znak = fgetc(data);
if(znak >= 97 && znak <= 122)
{
znak -= 32;
fputc(znak, VELKE);
}
}
fclose(VELKE);
printf("Mala pismena byla nahrazena velkymi pismeny!\n");
printf("Vysledek najdete v souboru VELKE.txt\n");
system("pause");
return 0;
}
Je mi jasné, že dělám chybu v části změny malých písmen za velká. Načtení a zápis do data.txt funguje. Ovšem do VELKE.txt se už nic nezapíše. Když to debuguju, tak je problém "znak = fgetc(data);"...
Díky za pomoc!