načítajte všetky znaky zo súboru do poľa znaky[] a vytvorte z neho reťazec
pomocou funkcie pre prácu s reťazcom nájdite v tomto poli všetky cifry (0 až 9) a uložte ich do nového poľa s názvom cifry[]. Aj toto pole zmeňte na reťazec a vypíšte ho.
pole cifry[] utriedte pomocou algoritmu qsort a zapíšte ho do súboru utriedene.txt
túto úlohu ale asi mám problém s pretečením lebo mi napíše moj počítač ,že prestal pracovať .
Mám napísané toto :
Kód: Vybrať všetko
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include "textovy.h"
int main()
{
FILE *fw;
char znaky;
if((fw=fopen("zdroj.txt","w"))==NULL)//otvaranie a testovanie ci sa subor podarilo otvorit
{
printf("Neexistuje!");
return 1;
}
if((fw=fopen("utriedenie.txt","w"))==NULL)//otvaranie a testovanie ci sa subor podarilo otvorit
{
printf("Neexistuje!");
return 1;
}
znaky=fopen("zdroj.txt","w");
char * hladaneCifry="123456789";//retazec ktoreho znaky budeme hladat v retazci veta
char * nasiel;
int i=0;
nasiel=strpbrk(znaky,hladaneCifry);
while(nasiel!=NULL)
{
++i;
nasiel=strpbrk(++nasiel,hladaneCifry);
}
printf("\nCifry so suboru su %d",i);
char cifry=i;
fw=fopen("utriedenie.txt","w");
putc(cifry, fw);
fclose(fw);
return 0;
}
int comp(const void *prvok1,const void *prvok2)
{
int *prvy=(int *)prvok1;//pretypujeme void * na int*,t.j. na typ ktory porovnavame
int *druhy=(int *)prvok2;//pretypujeme void * na int*,t.j. na typ ktory porovnavame
return *prvy-*druhy;
}