Fáljba írnék adatokat, mint pontszám és név és miután lezártam a fáljt ki szeretném olvasni az adatokat belőle és kiiratni a képernyőre, de mindig csak az utolsó sort írja ki, viszont nekem az összes adat kéne. Hogy lenne a helyes kód?
Figyelt kérdés
typedef struct
{
char nev[10];
int pontszam;
}
ADAT;
ADAT adat;
#include <stdio.h>
FILE* fp;
int main()
{
fp=fopen("gyakorlas3.txt","w");
int gd,gm,i,n;
printf("Adja meg a versenyzok szamat!");
scanf("%d",&n);
for (i=0;i<n;i++)
{
printf("Adja meg az %d. versenyzo nevet!",i+1);
scanf("%s",adat.nev);
printf("\n");
printf("Adja meg az %d. versenyzo pontszamat!",i+1);
scanf("%d",&adat.pontszam);
printf("\n");
fwrite(&adat,sizeof(adat),1,fp);
}
fclose(fp);
fp=fopen("gyakorlas3.txt","r");
for (i=0;i<n;i++)
{
fread(&adat,sizeof(adat),1,fp);
printf("%s",adat.nev);
printf("%d",adat.pontszam);
}
}
2015. márc. 25. 20:59
1/1 anonim válasza:
Hasznald szerintem inkabb a fprintf es az fscanf fuggvenyeket az irashoz es olvasashoz
fprintf(fp, "%s %d\n",adat.nev, adat.pontszam);
fscanf(fp, "%s %d\n", adat.nev, &adat.pontszam);
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!