Pomôžte s programom v C

Programovacie jazyky, rady, poradňa...
dimo41
Amateur
Amateur
Príspevky: 14
Registrovaný: 04 nov 2012, 23:01

Re: Pomôžte s programom v C

Príspevok od používateľa dimo41 »

potrebujem pomôcť s týmto programom neviem spraviť to aby mi zo súboru vložilo do 1 pola len čísla a do toho druhého len písmena ak dám fscanf %d tak mi to načíta len prvé číslo a ak dám %c tak mi načítava všetko aj s enterom aj medzery za pomoc vopred ďakujem
Prílohy
program.jpg
robbo
Light Star
Light Star
Používateľov profilový obrázok
Príspevky: 209
Registrovaný: 11 okt 2008, 22:34

Re: Pomôžte s programom v C

Príspevok od používateľa robbo »

dimo: tá funkcia preloz berie ako parameter int kluc[26][2], takže ten kľúč máš ukladať do dvojrozmerného poľa, písmená bude asi najlepšie ukladať ako ich ordinálnu hodnotu
dimo41
Amateur
Amateur
Príspevky: 14
Registrovaný: 04 nov 2012, 23:01

Re: Pomôžte s programom v C

Príspevok od používateľa dimo41 »

ok veď to by som už nejako spravil akurát neviem ako zapísať len čísla a potom len písmena a vynechávať medzery a entery a "Ordinalna hodnota" je čo?
harrison314
Hardcore addict
Hardcore addict
Používateľov profilový obrázok
Príspevky: 8223
Registrovaný: 27 máj 2009, 20:42
Bydlisko: Bratislava
Kontaktovať používateľa:

Re: Pomôžte s programom v C

Príspevok od používateľa harrison314 »

nacitavaj to nejak takto:

Kód: Vybrať všetko

void nacitajRiadok(FILE* f,int* cislo, int *znak)
{
  fscanf(f,"%d",cislo);
  char buffer[5]; //poriadna rezerva
  fscanf(f,"%s",buffer);
  *znak = (int) buffer[0];
}
Tym sa vyhnes tomu aby ti cistalo biele znaky
pcsiete
Medium Star
Medium Star
Príspevky: 413
Registrovaný: 07 dec 2012, 18:47

Re: Pomôžte s programom v C

Príspevok od používateľa pcsiete »

//upravene. Uz nic.
harrison314
Hardcore addict
Hardcore addict
Používateľov profilový obrázok
Príspevky: 8223
Registrovaný: 27 máj 2009, 20:42
Bydlisko: Bratislava
Kontaktovať používateľa:

Re: Pomôžte s programom v C

Príspevok od používateľa harrison314 »

pcsiete napísal:Neostanu potom v systemovom bufferi? A nezoberu sa do '%s'? To by mozno trebalo nacitat subor a potom strtok na kazdy riadok. Az tak tato funkcia.
Nie nezostanu, tu moju funkciu zavola 26-krat a subor sa precita dokonca, pri jeho zavreti sa prostriedky systemu uvolnia.

Medzera sa tam nezoberie, %s necita biele znaky.
dimo41
Amateur
Amateur
Príspevky: 14
Registrovaný: 04 nov 2012, 23:01

Re: Pomôžte s programom v C

Príspevok od používateľa dimo41 »

Ok ďakujem
Napísať odpoveď