Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.73/15: Рейтинг темы: голосов - 15, средняя оценка - 4.73
4eburator

запись структуры в файл

17.10.2010, 13:43. Показов 3315. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте. Мне очень нужна Ваша помощь.
Надо написать программу обработки файла, состоящего из структур. Предусмотреть вывод на экран пользовательского меню, содержащего следующие пункты :
- создание файла,
- просмотр содержимого,
- корректировка (добавление новых данных или исправление старых),
- обработка ( выполнение индивидуального задания),
- выход.
Структура такая:
Список товаров, имеющихся на складе, включает в себя наименование товара, количество единиц товара, цену единицы и дату поступления товара на склад.Вывести список товаров, хранящихся больше месяца.
Структура мной сделана, а вот загнать её в файл никак немогу. Помогите пожалуйста. Вот код структуры:
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
#pragma hdrstop
#include <iostream.h>
#include <stdlib.h>
#include <conio.h>
struct datepost
{
int chislo;
double mes;
int god;
} ;
 
struct tov
{
char name[15];
int kolvo;
long int cena;
struct datepost date;
};
 
int main(int argc, char* argv[])
{ int n,k,i,u,td,tg,d,g,m1; struct tov tovar[15];
double tm,m;
u=0;
i=0;
k=0;
while (u<1) {
u++;
i++;
k++;
cout<<"VVedite naimenovanie tovara: "; cin>>tovar[i].name;
cout<<"VVedite kol-vo tovara: "; cin>>tovar[i].kolvo;
cout<<"VVedite ceny tovara: "; cin>>tovar[i].cena;
cout<<"VVedite chislo postyplenia tovara: "; cin>>tovar[i].date.chislo;
cout<<"VVedite mesyac postyplenia tovara: "; cin>>tovar[i].date.mes;
cout<<"VVedite god postyplenia tovara: "; cin>>tovar[i].date.god;
cout<<"chtoby vvesti eshe najmite 0, esli net, to lyboe drygoe chislo: "; cin>>u;
 
clrscr();};
 
cout<<"vvedite tekyshy den': "; cin>>td;
cout<<"vvedite tekyshy mesyac: "; cin>>tm;
cout<<"vvedite tekyshy god: "; cin>>tg;
 
 
for (i=1;i<k+1;i++) {
 
tm=tm+(td/30);
d=tovar[i].date.chislo/30;
m=tm-tovar[i].date.mes-d;
 
if ((tg>tovar[i].date.god)||(m>1)){
cout<<'\n'<<"imya: "<<tovar[i].name;
cout<<'\n'<<"kol-vo: "<<tovar[i].kolvo;
cout<<'\n'<<"cena: "<<tovar[i].cena;
cout<<'\n'<<"data postuplenia: "<<tovar[i].date.chislo<<"."<<tovar[i].date.mes<<"."<<tovar[i].date.god;}
}
 
 
 
   getch();
 
        return 0;
}
//---------------------------------------------------------------------------
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
17.10.2010, 13:43
Ответы с готовыми решениями:

Запись структуры в файл
С клавиатуры вводится данные в структуру, и эту структуру надо напечатать в файл. Структура имеет вид: struct people { char*...

Запись структуры в файл
Работаю в Borland C(чистый С) Нужно: Создать файл, который содержит ведомости об картотеке в регистратуре поликлинники. Данные должны...

Запись структуры в файл
Хочу записать структуру в файл. Но записывается только одна структура , последняя. #include &quot;stdafx.h&quot; #include...

1
Модератор
Эксперт PythonЭксперт JavaЭксперт CЭксперт С++
 Аватар для easybudda
12843 / 7592 / 1766
Регистрация: 25.07.2009
Сообщений: 13,973
17.10.2010, 14:09
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
...
#define NUM_STRUCTURES 15
...
struct tov tovar[NUM_STRUCTURES];
// заполнить значениями
...
FILE * f;
if ( ( f = fopen("file.dat", "wb") ) == NULL ){
// ошибка открытия файла для записи
}
// запись в файл
if ( fwrite(tovar, sizeof(struct tov), NUM_STRUCTURES, f) != NUM_STRUCTURES ){
// ошибка записи
}
fclose(f); 
...
if ( ( f = fopen("file.dat", "rb") ) == NULL ){
// ошибка открытия файла для чтения
}
// чтение из файла
if ( fread(tovar, sizeof(struct tov), NUM_STRUCTURES, f) != NUM_STRUCTURES ){
// ошибка чтения
}
fclose(f);
...
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
17.10.2010, 14:09
Помогаю со студенческими работами здесь

запись структуры в файл
#include &lt;cstdio&gt; #include &lt;fstream&gt; #include &lt;iostream&gt; using namespace std; struct MyStruct { char name; char...

Запись структуры в файл.
3. Написать процедуры (или функции) записи в файл и считывания из файла массива структур. 4. Использовать файлы трех типов – текстовый...

Запись структуры в файл
Задание заключается в том что бы не используя ofstream и ifstream создать файл и записать в него, данные с клавиатуры. #include...

Запись структуры в файл
Помогите найти ошибку в коде. Задание. Разработать программу на языке С + +, реализующей запись в файл информации о студенте (10...

запись структуры в файл
ПОМОГИТЕ пожалуйста......... не могу сделать так чтобы в файл по завершению работы программы записывалось действие которое...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru