Witam
Miałem do napisania program w C który zamienia ą Ą itp na a A.
Mam taki kod (on jest tylko dla ĄąĆc dla przykladu reszte pozniej uzupelnie jak bedzie dobrze dzialal):
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
int main(int argc, char* argv[])
{
if(!argv[1] && !argv[2])
{
printf("podaj nazwy plików");
}
else
{
FILE *f1, *f2;
char c;
char pol[]={165, 164, 134, 143};
char nor[]={97, 65, 99, 67};
f1= fopen(argv[1],"r");
if(f1== NULL)
{
printf("Blad! Nie mozna otworzyc pliku!");
};
f2= fopen(argv[2], "w");
while((c = fgetc(f1)) != EOF)
{
if(c==pol[0])
c=nor[0];
fprintf(f2, "%c", c);
};
}
}
Program niestety zle zamienia litery, tzn w zlej kolejnosci je rozpoznaje, moze ktos widzi bledy i wie jak je poprawic?
Cyferki w
char pol[]={165, 164, 134, 143};
char nor[]={97, 65, 99, 67};
są z kodu ASCII
Mam np 1.txt o treści: ąĄćĆ i powstaje 2.txt: ąaćĆ