Надо создать список из структур с инфой про студентов, сохранить в файл и считать. Я сделал как несколько отдельных структур. Надо об
ъеденить их как список и сохранить в файл. Я думаю, надо создать функции и потом просто "позакид
ывать" туда эти структуры.
К примеру
*STUDENT getStudent() {
struct STUDENT newStudent;
newStudent.next = NULL;
return newStudent;
}
А вот и сама моя прога
#include<io.h>
#include<conio.h>
#include<stdio.h>
#include<iostream.h>
#include<fcntl.h>
#include<sys/stat.h>
struct STUDENT
{char name[150];
int rost,ves,god,rei;
char pol[10];
STUDENT *next;
};
/*STUDENT getStudent() {
struct STUDENT newStudent;
newStudent.next = NULL;
return newStudent;
}*/
void main(void)
{clrscr();
STUDENT a;char b;
STUDENT *m;
int i=1,k,f2;
FILE * f1 = fopen("D:\\f1.dat","w");
metka:clrscr();
printf("<<--- Vvedite informaciyu ob %i-om studente --->>\n",ftell(f1)/sizeof(a)+1);
printf("FIO : ");
gets(a.name);
printf("Rost : ");
scanf("%i",&a.rost);
printf("Ves : ");
scanf("%i",&a.ves);
printf("God rojdeniya : ");
scanf("%i",&a.god);
printf("Pol M/W : ");
scanf("%s",&a.pol);
printf("Reiting : ");
scanf("%i",&a.rei);
fwrite(&a,sizeof(a),1,f1);
printf("Vvesti eshe (Y/N) : ");
b=getch();scanf("%c",b);
if (b=='y') goto metka;
k=ftell(f1)/sizeof(a);
fclose(f1);
f2=open("f1.dat",O_RDONLY);
rewind(f1);
for(i=0;i<k;i++)
{
m=&a;
read(f2,m,sizeof(a));
clrscr();
printf("<<--- Student # %i --->>\n",i+1);
printf("FIO : %s\n",a.name);
printf("Rost : %i\n",a.rost);
printf("Ves : %i\n",a.ves);
printf("God rojdeniya : %i\n",a.god);
printf("Pol : %i\n",a.pol);
printf("reiting : %i\n",a.rei);
getch();
}
fclose(f1);
}