View Single Post
Staro 26.02.2006., 12:55   #1
ejSid
Lunatic
Moj komp
 
ejSid's Avatar
 
Datum registracije: Feb 2006
Lokacija: Varaždin
Postovi: 213
Question Čitanje iz datoteke u c-u help!!!

Kako da napravim da mi program čita sve što je zapisano u datoteci a ne samo zadnji unos?evo kod cijelog zadatka(crvenoi je problem):
#include<stdio.h>
#include<stdlib.h>
#include<conio.h>

void main(){
struct podaci
{
long int m,t;
char i[500], p[500], a[500], e[500];
} datoteka;
long int m,t;
char i[500], p[500], a[500], e[500];
int y,q,j;
FILE *f;
Arintf("Dobro dosli u adresar");
printf("\n\nIzbornik:\n1.Pregled osoba koje su vec u adresaru\n2.Unos novih podataka\n3.O programu\n4.Izlaz");
D:scanf("%d", &y);
switch (y){
case 1:
clrscr();
f=fopen("podaci.dat","r");
if (f==NULL){
printf("Greska pri otvaranju datoteke!!!");
exit(1);
}
fread(&datoteka,sizeof(struct podaci),1,f);
printf("\n\nIme: %s\nPrezime: %s\nAdresa: %s\nBroj mobitela: %d\nBroj telefona: %d\nE-mail: %s", i,p,a,m,t,e);
fclose(f);
}
getch();
clrscr();
goto A;
break;

case 2:
clrscr();
f=fopen("podaci.dat","a");
if (f==NULL){
printf("greska pri otvaranju datoteke!!!");
exit(1);
}
Brintf("Unesite ime: ");
scanf("%s", &i);
printf("\nUnesite prezime: ");
scanf("%s", &p);
printf("\nUnesite mjesto stanovanja: ");
scanf("%s", &a);
printf("\nUnesite broj mobitela: ");
scanf("%d", &m);
printf("\nUnesite broj telefona: ");
scanf("%d", &t);
printf("\nUnesite e-mail: ");
scanf("%s", &e);
printf("\n\n\nPritisnite\n1.Za spremanje podataka\n2.Za editiranje Podataka");
C:scanf("%d", &q);
switch (q){
case 1:
fprintf(f,"%s\n", i);
fprintf(f,"%s\n", p);
fprintf(f,"%s\n", a);
fprintf(f,"%d\n", m);
fprintf(f,"%d\n", t);
fprintf(f,"%s\n", e);
printf("Korisnik je spremljen pritisnite bilo koju tipku za povratak an glavni izbornik!!!");
fclose(f);
getch();
clrscr();
goto A;
break;
case 2:
clrscr();
goto B;
break;
default:
printf("Niste unijeli ponudene brojeve,molim vas da unesete 1 ili 2!!!");
goto C;
}
case 3:
clrscr();
printf("\n\n\n\n\nPritisnite bilo koju tipku za povratak na glavni meni.");
getch();
clrscr();
goto A;
break;
case 4:
clrscr();
printf("Hvala sto ste koristili ovaj adresar!!!");
getch();
break;
default :
clrscr();
printf("Niste unjeli niti jedan broj iz izbornika,molmi Vas da unesete \n1.Pregled osoba koje su vec u adresaru\n2.Unos novih podataka\n3.O programu\n4.Izlaz!!!");
goto D;
}
}
ejSid je offline   Reply With Quote