0 / 0 / 0
Регистрация: 05.11.2019
Сообщений: 21
1

Как засунуть структуру в файл?

22.06.2020, 16:57. Показов 213. Ответов 0

Author24 — интернет-сервис помощи студентам
Не знаю как сделать так чтобы данные записывались в файл и считывались от туда же при поиске, HELP!


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
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
#include<stdio.h>
#include <iostream>
#include<stdlib.h>
#include<conio.h>
#include<locale.h>
#include<string.h>
#define N 100
#define M 5
 
using namespace std;
 
 
//Объявление структур
////////////////////////////////////////////////////// 
struct data_rozhdeniy
{
    int day;
    int month;
    int year;
};
struct sportsmen
{
    char fio[N];
    int data_rozgh;
    int team;
    sportsmen *next;
    data_rozhdeniy rozhdenie;
};
 
 
//Прототипы функций
//////////////////////////////////////////////////////
void Create(sportsmen **info);
int ShowAll(sportsmen *info);
void Rewrite(sportsmen *info);
 
 
//Головная функция
////////////////////////////////////////////////////// 
int main()
{
    sportsmen *info = NULL;
    setlocale(LC_CTYPE, "Russian");
    
    cout << "____________________________________________________________________________\n\n";
    while (1)
    {
        puts("1 - Добавление спорсмена");
        puts("2 - Просмотр всех спорсменов");
        puts("3 - Изменение");
        puts("4 - Выход");
        cout << "----------------------------------------------------------------------------\n\n";
        puts("Выберите команду:");
        switch (getch())
        {
        case '1': Create(&info);       break;
        case '2': ShowAll(info);       break;
        case '3': Rewrite(info);       break;
        case '4': return 0;            break;
        }
 
    }
    
    system("pause");
}
 
//Функция создания
//////////////////////////////////////////////////////
void Create(sportsmen **info)
{
    sportsmen *info_copy = *info;
    do {
        system("cls");
        if (!(*info = (sportsmen *)calloc(1, sizeof(sportsmen))))
        {
            puts("Нет памяти!");
            return;
        }
        puts("Введите Ф.И.О спортсмена:");
        fflush(stdin);
        fgets((**info).fio, 100, stdin);
        puts("Введите дату рождения:");
        puts("День Мес Год");
        scanf("%d %d %d", &(**info).rozhdenie.day, &(**info).rozhdenie.month,
        &(**info).rozhdenie.year);
        puts("Введите название команды:");
        fflush(stdin);
        scanf("%d", &(**info).team);
        puts("Продолжить(y/n)?");
        (**info).next = info_copy;
        info_copy = *info;
    } while (getch() == 'y');
}
 
 
//Функция просмотра
//////////////////////////////////////////////////////
int ShowAll(sportsmen *info)
{
    sportsmen *info_copy;
    info_copy = info;
    system("cls");
    if (!info)
    {
        puts("Информации нет!");
        return 0;
    }
    do {
        printf("Фамилия И.О:  ");
        puts(info_copy->fio);
        printf("Дата рождения(день.месяц.год): %d. %d. %d\n",
        info_copy->rozhdenie.day, info_copy->rozhdenie.month,
        info_copy->rozhdenie.year);
        printf("Введите название команды: %d", info_copy->team);
        info_copy = info_copy->next;
        puts("\n=====================\n");
    } while (info_copy);
}
 
//Функция коррекции
//////////////////////////////////////////////////////
void Rewrite(sportsmen *info)
{
    system("cls");
    char str[20];
    if (!info) { printf("Стек пуст!"); return; }
    printf("Введите фамилию для поиска:");
    fflush(stdin);
    printf(str);
    do {
        if (!strcmp(info->fio, str))
        {
            puts("Введите Фамилию И.О");
            fflush(stdin);
            printf(info->fio);
            puts("Введите дату рождения:");
            puts("День Мес Год");
            scanf("%d %d %d", &(*info).rozhdenie.day, &(*info).rozhdenie.month,
                &(*info).rozhdenie.year);
            puts("Введите название команды:");
            fflush(stdin);
            scanf("%d", info->team);
            return;
        }
        else
        {
            printf("Такой фамилии нет!");
            return;
        }
    } while (info);
    return;
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
22.06.2020, 16:57
Ответы с готовыми решениями:

Как глобальную переменную засунуть в структуру?
#include&lt;stdio.h&gt; #include&lt;malloc.h&gt; #include&lt;string.h&gt; typedef struct Item { char *info;...

Как засунуть файл в программу?
Ребят, всем привет, подскажите, пожалуйста, как засунуть файл в программу: нужно присвоить кнопке...

Как засунуть файл на свой сайт?
Здравствуйте, я хочю сделать сайт (делаю это впервые), страничку уже создал. Вопрос: как закачать...

Как в exe файл засунуть mp3 файлы?
У меня mediaplayer. Там несколько таких строк: MediaPlayer1.FileName := 'd:\02.mp3'; Как при...

0
22.06.2020, 16:57
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
22.06.2020, 16:57
Помогаю со студенческими работами здесь

Как в exe файл засунуть mp3 файлы?
У меня mediaplayer. Там несколько таких строк: MediaPlayer1.FileName := 'd:\02.mp3'; Как при...

Как без дров засунуть файл на комп?
Приветствую уважаемые господа форумчани. Подскажите пожалуйста: Установил чистую Windows 7 без...

Как программно создать архив, и засунуть туда файл
Всем привет...))) Подскажите пожалуйста как программно создать архив, и засунуть туда файл... За...

Как засунуть json файл в таблицу, предварительно создав ее
Есть готовый json, парсится с помощью js и jquery , далее либо с помощью js написать скрипты ,...

Как засунуть .exe, все .dll и шрифт в один .exe файл?
Я часа два пытался найти ответ на этот вопрос на русских и английских форумах, но ничего понятного...

Можно ли засунуть шрифт в екзе файл?
Здравствуйте! Ребята подскажите по такому вопросу можно ли засунуть шрифт в екзе файл, а потом...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru