Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 15.05.2010, 21:35   #1
Roker
 
Регистрация: 18.12.2009
Сообщений: 8
Смех Си. Сохранение списков в файл.

Есть прога которая создаёт структуры с информацией про студентов:имя рост вес рейтинг год пол. Потом всё это сохраняется в файл и в конце считывает из него и выводит на экран. На защиту сказали переделать так чтобы это было не несколько отдельных структур а один связный список(в структуре для этого надо добавить указатель на неё). Но у меня не как не получается прогу переделать.
#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);
}
Roker вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Сохранение в текстовый файл Lisёноk Помощь студентам 4 01.05.2010 23:16
Сохранение и загрузка списков (Паскаль) diliana Помощь студентам 12 25.05.2009 12:22
Сохранение в файл Ant1Player PHP 4 31.03.2009 16:33
Сохранение в файл Македонский Общие вопросы Delphi 4 05.09.2007 15:04
Сохранение в файл *.*С Noor Общие вопросы C/C++ 6 08.01.2007 22:44