Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.56/9: Рейтинг темы: голосов - 9, средняя оценка - 4.56
igor_m
0 / 0 / 0
Регистрация: 14.12.2014
Сообщений: 123
1

Считать из бинарного файла в массив структур фамилию, имя, оценку по математике, оценку по информатике

23.01.2015, 23:56. Просмотров 1829. Ответов 9
Метки нет (Все метки)

необходимо считать из бинарного файла в массив структур фамилию, имя, оценку по математике, оценку по информатике, оценку по физике
0
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.01.2015, 23:56
Ответы с готовыми решениями:

Распечатать анкетные данные студентов, имеющих оценку 4 по физике и оценку 5 по высшей математике.
15. Распечатать анкетные данные студентов, имеющих оценку 4 по физике и оценку...

Найти максимальную оценку студента и вывести его ID потом фамилию и максимальную оценку
Здравствуйте! Мне нужно найти максимальную оценку студента и вывести его ID...

Определить оценку абитуриента по математике на вступительных экзаменах
Определить оценку абитуриента по математике на вступительных экзаменах, если...

Определить, сколько учеников имеют по информатике оценку "5"
1.Известны оценки по информатике каждого из 20 учеников класса. В начале списка...

Файл: Записать фамилию и оценку студента в файл
Такая проблема. Нужно разработать программу, которая будет записывать фамилию и...

9
nmcf
6515 / 5744 / 2617
Регистрация: 14.04.2014
Сообщений: 24,494
24.01.2015, 14:01 2
И что не получается? Структуру хотя бы описал?
0
igor_m
0 / 0 / 0
Регистрация: 14.12.2014
Сообщений: 123
24.01.2015, 14:03  [ТС] 3
нет, в том и дело, что не могу разобраться, как ее правильно описать и далее считать
0
nmcf
6515 / 5744 / 2617
Регистрация: 14.04.2014
Сообщений: 24,494
24.01.2015, 14:07 4
C++
1
2
3
4
5
struct S
{
    char fm[20], im[20];
    int omath, oinf, ophys;
};
Считывать с помощью read() из ifstream.
0
igor_m
0 / 0 / 0
Регистрация: 14.12.2014
Сообщений: 123
24.01.2015, 14:10  [ТС] 5
а можно поподробнее?
0
nmcf
6515 / 5744 / 2617
Регистрация: 14.04.2014
Сообщений: 24,494
24.01.2015, 14:19 6
Сначала файл создать нужно. Потом уже считывать. Сделай сначала ввод с клавиатуры в массив.
0
igor_m
0 / 0 / 0
Регистрация: 14.12.2014
Сообщений: 123
24.01.2015, 14:24  [ТС] 7
C++
1
2
3
4
5
6
7
8
9
10
11
    f.open("list.dat", ios::in | ios::binary);
    struct S
    {
        char lastname[15], firstname[15];
        unsigned int math,inf,phys;
    };
    S rat[100];
    for (i = 0; !f.peek() != EOF; i++)
    {
        f.read((char*)&rat[i], sizeof(rat[i]));
    }
ну вот у меня, но считывает неправильно
0
nmcf
6515 / 5744 / 2617
Регистрация: 14.04.2014
Сообщений: 24,494
24.01.2015, 14:59 8
Файл как ты создал? Где фрагмент записи в файл?
0
igor_m
0 / 0 / 0
Регистрация: 14.12.2014
Сообщений: 123
24.01.2015, 15:00  [ТС] 9
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
#include <iostream>
#include <fstream>
using namespace std;
 
int main()
{
    setlocale(LC_ALL, "Russian");
    const int N = 20;
    ifstream text;
    fstream f;
    int n, i = 0;
    char temp[30];
    text.open("list.txt");
    f.open("list.dat", ios::out | ios::binary);
    cout << "Данные, содержащиеся в бинарном файле:" << endl << endl;
    while (!text.eof())
    {
        text >> temp;
        f.write((char*)&temp, sizeof(temp));
        cout << temp << " ";
        i++;
        if (i == 5)
        {
            i = 0;
            cout << endl;
        }
    }
    text.close();
    f.close();
    f.open("list.dat", ios::in | ios::binary);
    struct S
    {
        char lastname[15], firstname[15];
        unsigned int math,inf,phys;
    };
    S rat[100];
    for (i = 0; !f.peek() != EOF; i++)
    {
        f.read((char*)&rat[i], sizeof(rat[i]));
    }
}
вот, сначала требовалось переписать данные из текстового в бинарный, а затем в массив структур занести данные из бинарного
0
nmcf
6515 / 5744 / 2617
Регистрация: 14.04.2014
Сообщений: 24,494
24.01.2015, 15:04 10
Лучший ответ Сообщение было отмечено igor_m как решение

Решение

Суть в том, что бинарный файл нужно записывать и считывать одинаково, т. е. структурами. Исправляй.
1
24.01.2015, 15:04
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
24.01.2015, 15:04

Запись из бинарного файла, в массив структур
Имеется бинарный файл, в него записан массив структур.Как мне произвести запись...

Считывание структур из бинарного файла в динамический массив
Доброго времени суток, форумчане, помогите пожалуйста, поделитесь знаниями или...

Нужно сохранить и прочитать динамический массив структур из бинарного файла
struct city{ char name_city; char metro; int year_city; int naselenie; ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru