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

Создание нового файла, который дополняет ранее созданный

07.06.2009, 20:09. Показов 1023. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет.

Прошу выполнить программу на Borlandc 1991 года, версии 3.1:

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

Вариант задания:

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

Прошу написать программу, с // - комментариями. Заранее всем спасибо.
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
07.06.2009, 20:09
Ответы с готовыми решениями:

Глобальный стиль который дополняет остальные стили
Привет, приведу простой пример чего я хочу. Есть кнопка. <Button Style="{StaticResource BaseButtonStyle}"...

Как удалить ранее созданный Mutex?
Вот я создал мутекс var HM :THandle; begin HM:=OpenMutex(MUTEX_ALL_ACCESS, false, '123321'); if HM=0 then ...

Написать текстовый редактор, в котором продемонстрировать открытие файла, сохранение файла, создание нового файла
№ 5. Написать текстовый редактор, в котором продемонстрировать открытие файла, сохранение файла, создание нового файла – чистого листа, на...

1
Voronin
10.06.2009, 11:48
Ответа не увидел. Но для тех, кто столкнется с данной задачей, пишу готовый код программы:

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
#include <iostream.h>
#include <conio.h>
#include <stdio.h>
#include <stdlib.h>
 
#define bool int
#define true 1
#define false 0
 
struct ATS
{
   char fio[30];   // Familiya, imya, otchestvo
   char phone[20]; // nomer telefona
   char date[11];
};
 
void Add();
void wr();
 
int main()
{
   clrscr();
   while (true) // proverka ot 3...+
   {
      char c;
      cout << "Viberite operaciu: \n";
      cout << "\t-> 1. Dobavit v bazu \n";
      cout << "\t-> 2. Print \n";
      cout << "\t-> 3. Vihod \n";
      cout << "Operaciya: "; cin >> c;
      cin.ignore(); // ignoriruet simvols iz buffers
      cin.clear();  // ochistka bufera
 
   switch(c)  //operator vibora varianta
      {
      case '1': Add();   break;  // dobavlenie v ats
      case '2': wr();    break;
      case '3': exit(0); break;  // vihod iz prilozheniya
      }
   }
}
 
void Add()
{
   FILE* F = fopen("Ats.txt", "rt+"); // open ats
   bool f  = false; // true - new file
 
   if (!F) // esli file with ats not exist
   {
      F = fopen("Ats.txt", "wt+"); // create new ats
      f = true;
   }
 
fseek(F, 0, SEEK_END); // ustanovka position to the end (for prisoedineniya)
ATS ats; // ustanovka ATS (struktura) raznaya
cout << "Vvedite FIO:   ";
cin.getline(ats.fio, sizeof(ats.fio)); //read string s size of ats.fio
 
cout << "Vvedite nomer: ";
cin.getline(ats.phone, sizeof(ats.phone));
 
cout << "Vvedite datu:  ";
cin.getline(ats.date, sizeof(ats.date));
 
   // zapolnenie fila
   if (!f) fputc('\n', F);
   fputs(ats.fio, F);        fputc('\n', F); //zapis stroki v file
   fputs(ats.phone, F);  fputc('\n', F); 
   fputs(ats.date,F);      fputc('\n', F);
 
   fclose(F); // vihod iz file
}
 
void wr()
{
     char read_str[20], *result;
     FILE* f = fopen("Ats.txt", "r");
 
     while (!feof(f))
     {
      result=fgets(read_str,20, f); //fgets - vzyatie stroki iz fila
      cout << read_str;
     }
}
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
10.06.2009, 11:48
Помогаю со студенческими работами здесь

Запись данных консоли в созданный ранее файл
Как записать все ,что вывела консоль в текстовый файл ,например на диске D?

Добавление AlphaControls в ранее созданный проект (XE2)
Всем добрый вечер, знаю что темы обсуждались уже неоднократно, большинство из которых я уже прочитал, но вот есть один момент который я так...

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

Программно занести данные в ранее созданный Edit
Есть матрица типа TEdit. Она формируется и выводится на второстепенную форму при нажатии кнопки на главной форме. Все Edit изначально...

Как добавить Gradle в ранее созданный проект без него
Как в андроид студии добавить gradle к проекту. Допустим слетели файлы gradle или скачал исходник без него. Или только создавать новый...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка. Рецензия / Мнение Это мой обзор планшета X220 с точки зрения школьника. Недавно я решила попытаться уменьшить свой. . .
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
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru