Форум программистов, компьютерный форум CyberForum.ru

Сформировать бинарный файл из элементов заданной структуры - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Программа для нахождения автоморфизмов в графе http://www.cyberforum.ru/cpp-beginners/thread1732663.html
помогите пожалуйста,нашла описание программы,но сама не могу написать ее на с++ Вот описание "Используется полный перебор. Граф представляется матрицей смежности (– вес ребра из вершины в вершину). Для каждой нити параметром служит структура, несущая в себе информацию о числе подстановок, которое необходимо проверить, и об индексе перестановки, с которой нить должна начинать проверку на...
C++ Параметр функции объект класса Добрый день. Помогите написать функцию void PutPerson(int i, Person & man) #include <iostream> using namespace std; class Person{ int man; public: Person (int m); http://www.cyberforum.ru/cpp-beginners/thread1732640.html
C++ Вращать треугольник по часовой стрелке
Здравствуйте, буду признателен если поможете, т.к. математика не моя сильная сторона. Условие такое: Составить программу вывода на экран дисплея треугольника. При нажатии клавиши курсор вправо треугольник вращается по часовой стрелке. Спасибо!
C++ Переписать все целые части исходных чисел в один файл, а дробные – в другой файл
Добрый день ,вы могли бы пожалуйста помочь написать программу,на носу сессия,осталось сдать лабораторные только Задание: Выполнить указанную обработку файлов. Всю исходную информацию ввести через параметры функции main. Числа: 1) Дан текстовый файл с вещественными числами. Переписать все целые части исходных чисел в один файл, а дробные – в другой файл. Строки: 2)Дан текстовый файл....
C++ Найти максимальный модуль комплексного числа из элементов массива http://www.cyberforum.ru/cpp-beginners/thread1732565.html
Реализовать функции: -генерация случайного комплексного числа -вывод на экран комплексного числа Создать массив из N элементов структуры и найти максимальный модуль комплексного числа из этих элементов. Вывести модуль и комплексное число на экран
C++ Создать класс “точка” (Point) Создать класс “точка”(Point) Реализовать следующие функции -Конструкторы (по умолчанию, полный, копирования) -Деструктор -Модификаторы (set_x, set_y, set_point) -Селекторы (get_x, get_y, get_point) -вывод на экран -вычисление длины от точки (0,0) подробнее

Показать сообщение отдельно
itema
0 / 0 / 1
Регистрация: 28.04.2016
Сообщений: 31
12.05.2016, 10:30     Сформировать бинарный файл из элементов заданной структуры
Сформировать бинарный файл из элементов заданной структуры, распечатать его содержимое, выполнить добавление элементов и поиск по одному из параметров. Формирование, печать, добавление и поиск элементов оформить в виде функций.
Структура "Человек": фамилия, имя, отчество, домашний адрес, номер телефона, возраст.
Сделал все, кроме формирования файла. Помогите пожалуйста.
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
153
154
155
156
157
#include <stdio.h>
 
struct humans
{
    char name[30];
    char fam[30];
    char otch[30];
    char adress[30];
    int tnum;
    int age;
};
struct humans mas[30];
struct humans tmp;
struct humans t;
int sch = 0;
int er;
 
void enter_new();
int menu();
void out();
void find();
void formf();
 
int main()
{
    while(1)
    {
        switch(menu())
        {
            
            case 1: formf(); break;
            case 2: enter_new(); break;
            case 3: find(); break;
            case 4: out(); break;
            case 5: return 0;
            default: printf("\nНе верныиМ† выбор\n");
        }
    }
}
 
void enter_new()
{
    if(sch<30)
    {
        printf("\nЗапись номер %d", sch+1);
        printf("\nВведите фамилию ");
        scanf("%s", &mas[sch].fam);
        printf("Введите имя ");
        scanf("%s", &mas[sch].name);
        printf("Введите отчество ");
        scanf("%s", &mas[sch].otch);
        printf("Введите адрес ");
        scanf("%s", &mas[sch].adress);
        printf("Введите номер телефона ");
        scanf("%d", &mas[sch].tnum);
        printf("Введите возраст ");
        scanf("%d", &mas[sch].age);
        sch++;
    }
    else printf("\nВведено максимальное кол-во записеиМ†");
}
 
int menu()
{
    int er;
    printf("Введите: ");
    printf("\n1 - для формирования файла");
    printf("\n2 - для ввода записи");
    printf("\n3 - для поиска");
    printf("\n4 - для вывода записей");
    printf("\n5 - для выхода\n");
    scanf("%d", &er);
    return er;
}
 
void out()
{
    int sw;
    int k;
    if (sch==0)
        printf("\nНет запиcеиМ†: \n");
    else
    {
        printf("\nВведите: ");
        printf("\n1 - если хотите вывести какую-либо запсь");
        printf("\n2 - если хотите вывести все записи");
        scanf("%d", &sw);
        if(sw == 1)
        {
            printf("\nВведите номер записи, которую нужно вывести ");
            scanf("%d", &k);
            printf("\n");
            printf("\nФамилия: %s ", mas[k-1].fam);
            printf("\nИмя: %s ", mas[k-1].name);
            printf("\nОтчество: %s ", mas[k-1].otch);
            printf("\nАдресс: %s ", mas[k-1].adress);
            printf("\nНомер телефона: %d ", mas[k-1].tnum);
            printf("\nВозраст: %d \n", mas[k-1].age);
        }
        if(sw == 2)
        {
            for(int i = 0; i < sch; i++)
            {
                printf("\nФамилия: %s ", mas[i].fam);
                printf("\nИмя: %s ", mas[i].name);
                printf("\nОтчество: %s ", mas[i].otch);
                printf("\nАдресс: %s ", mas[i].adress);
                printf("\nНомер телефона: %d ", mas[i].tnum);
                printf("\nВозраст: %d \n", mas[i].age);
            }
        }
    }
}
 
void find()
{
    int sw;
    if(sch == 0)
        printf("\nНет записей\n");
    else
    {
        printf("\nВведите номер телефона: ");
        scanf("%d", &sw);
        for(int i=0; i < sch; i++)
            if (mas[i].tnum == sw)
            {
                printf("\nФамилия: %s ", mas[i].fam);
                printf("\nИмя: %s ", mas[i].name);
                printf("\nОтчество: %s ", mas[i].otch);
                printf("\nАдресс: %s ", mas[i].adress);
                printf("\nНомер телефона: %d ", mas[i].tnum);
                printf("\nВозраст: %d \n", mas[i].age);
            }
    }
}
 
void formf()
{
    FILE *f;
    if(!(f=fopen("inf.dat","w+")))
    { printf("Ошибка создания фаиМ†ла\n");}
    for(int i = 0; i < sch; i++)
    { printf("Введите ФИО (пустая строка -- конец списка): ");
        fflush(stdin);
        scanf("%s", &mas[i].fam);
        printf("Введите имя: ");
        scanf("%s", &mas[i].name);
        printf("Введите отчество: ");
        scanf("%s", &mas[i].otch);
        printf("Введите адрес: ");
        scanf("%s", &mas[i].adress);
        printf("Введите номер телефона: ");
        scanf("%d", &mas[i].tnum);
        printf("Введите возраст: ");
        scanf("%d", &mas[i].age);
    } fclose(f);
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 06:25. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru