Каждая строка файла содержит следующие данные: пол, имя, рост. Распечатать средний женский рост и имя самого высокого мужчины по данным файла. Использовать структуру для описания понятия человек.
Написал прогу для заполнения файла:
#include <stdlib.h>
#include <conio.h>
#include <stdio.h>
class qwe
{
public:
char sex;
char name[15];
float height;
qwe();
};
qwe :: qwe()
{
randomize;
if (random(2)==1) sex='m'; else sex='f';
int k;
for(k=0; k<random(10)+5; k++)
name[k]=char(random(25)+65);
name[k]='\0';
height=(random(500)+1500)/10;
}
qwe info[15];
void main()
{
clrscr();
FILE *f;
char ch='\n';
f=fopen("C:\\123.txt","w");
for (int i=0;i<15;i++)
{
fwrite(&info[i].sex,sizeof(info[i].sex),1,f);
fwrite(&info[i].name,sizeof(info[i].name),1,f);
fwrite(&info[i].height,sizeof(info[i].height),1,f);
fwrite(&ch,sizeof(ch),1,f);
}
fclose(f);
getch();
}
Вроде работает...
Теперь пытаюсь считать - ошибку выдает на функции fread. Какие параметры должны быть у этой функции?
#include <stdlib.h>
#include <conio.h>
#include <stdio.h>
class qwe
{
public:
char sex;
char name[15];
float height;
};
void main()
{
clrscr();
qwe human[15];
FILE *f;
f=fopen("C:\\123.txt","w");
fseek(f, SEEK_SET, 0);
for (int i=0;i<15;i++)
{
fread(human[i].sex,sizeof(char),1,f);
fread(human[i].name,sizeof(info[i].name),1,f);
fread(human[i].height,sizeof(float),1,f);
}
fclose(f);
getch();
}
М | Просьба обратить внимание на п.3 правил этого раздела! Lapp |