#6 KIIV
ty jsi to udělal?
Příspěvky odeslané z IP adresy 77.48.106.–
Napište v jazyku C program, který v daném textovém souboru vyhledá zadaný počet nejdelších slov. Název vstupního souboru a požadovaný počet hledaných nejdelších slov by mělo být možné specifikovat z příkazové řádky při spuštění programu. Nalezená nejdelší slova vypište pro jednoduchost na obrazovku, přičemž slova se mohou opakovat (pokud se ve zpracovávaném textovém souboru vyskytují vícekrát), slova stejné délky dále třiďte podle pořadí jejich výskytu v textu.
Zdravím všechny, už asi dva dny, se snažím vyřešit problém. Dnes
jsem narazil na tohle forum, a tak jsem si říkal, proč můj problém
sem nenapsat. Takže problém spočívá v tom, že chci udělat program,
ktery načte soubor, a ten celý soubor, bych chtěl nacpat do
dynamického pole, v mojem případě (pole) no a jak ho do toho pole
dám, tak bych se v něm chtěl pohybovat, pomoci ukazatele, teda když
zapíšu *pole = 4; celé pole se přesune na 4 prvek v souboru a
pak si ho vypíšu printf("%c",pole); dělám dynamické pole poprvé
teprve těd jsme ho začali brát ve škole
zde je zdroják se kterým mám problém
vypíše jenom znaky co se nachází v souboru a vypíše jeho
velikost... ignorujte řádky pozice kurzoru atd. je to jenom test
v budoucnu bych se chtěl v tom souboru pohybovat, a přídávat
prvky, na určenou pozici v souboru kterou si určím sám.
#include <stdio.h>
#include <stdlib.h>
int main()
{
FILE *soub;
char pocet=0;
char znak=0;
int pozice=0;
int i=0;
int m=0;
char* pole=NULL;
soub = fopen("pole.txt","r");
if(soub==NULL)
{
printf("soubor se neotevrel");
return 0;
}
printf("nachazi se v souboru\n");
do
{
znak=fscanf(soub,"%c",&pocet);
m++;
printf("%c\t",pocet);
}while(!feof(soub));
printf("\npocet bajtu %d\n",m);
pole = (char*)malloc(m*sizeof(char));
fseek(soub,0L,SEEK_SET);
pozice = ftell(soub);
printf("%d",pozice);
if(!pole)
{
printf("neni misto");
}
m=0;
do
{
fscanf(soub,"%c",&znak);
m++;
pole[m]=znak;
printf("%c",pole[m]);
}while(!feof(soub));
fclose(soub);
return 0;
}
PS:budu rád za každou odpověď :)
předem děkuji :P