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

Создать файл записей - C++

Восстановить пароль Регистрация
 
awaylastdays
0 / 0 / 0
Регистрация: 11.06.2014
Сообщений: 46
13.06.2014, 11:22     Создать файл записей #1
Наработки оставил в учебном заведении поэтому не могу скинуть наработки.
Помогите с задачей пожалуйста!
Условие:"Создать файл записей что имеет такие поля: фамилия автора, название произведения.Удалить из файла все записи, в которых фамилия автора начинается с заданной пользователем буквы"

Добавлено через 13 часов 47 минут
вот наработки дальше не знаю как
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
#include <iostream.h>
 #include <stdio.h>
 
 void zapis(void)
 {
 FILE *file;
 char* file_name = "file.txt";
 char load_string[50] = "none";
 
 file = fopen( file_name, "w" );
 
 fputs( "string", file );
 
 fclose( file );
 
 file = fopen( file_name, "r" );
 if( file != 0 )
 {
 fgets( load_string, 50 , file );
 cout << "load_string = " << load_string << endl;
 }
 else
 {
 cout << "File not found !!!" << endl;
 }
 fclose(file);
 }
struct record
    {
    int familiya;
    char tvir[20];
    };
       int familiya1;
int main()
{
int i=0,j,n;
int size=0;
int otvet;
record sozd[100];
 
 
{
    i++;
    size++;
    cout<<"Vvedite Familiyu Avtora:\n";
    cin>>sozd[i].familiya;
    cout<<"Vvedite nazvanie tvoru:\n";
    cin>>sozd[i].tvir;
    cout<<"Prodolghat Zapolnenie?(1-Yes(don`t do this, 2-No(do this))\n";
    cin>>otvet;
 
}
system("pause");
}
Добавлено через 1 час 12 минут
не много доработал код чтоб можно было вводить данные в структуру
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
#include <iostream.h>
 #include <stdio.h>
 
 void zapis(void)
 {
 FILE *file;
 char* file_name = "file.txt";
 char load_string[50] = "none";
 
 file = fopen( file_name, "w" );
 
 fputs( "string", file );
 
 fclose( file );
 
 file = fopen( file_name, "r" );
 if( file != 0 )
 {
 fgets( load_string, 50 , file );
 cout << "load_string = " << load_string << endl;
 }
 else
 {
 cout << "File not found !!!" << endl;
 }
 fclose(file);
 }
struct record
    {
    char familiya[20];
    char tvir[20];
    };
       //char familiya1[20];
int main()
{
int i=0,j,n;
int size=0;
int otvet;
record sozd[100];
 
 
{
    do
{
    i++;
    size++;
    {
    cout<<"Vvedite Familiyu Avtora:\n";
    cin>>sozd[i].familiya;
    }
    {
    cout<<"Vvedite nazvanie tvoru: "<<endl;
    cin>>sozd[i].tvir;
    }
    cout<<"Prodolghat Zapolnenie?(1-Yes(don`t do this, 2-No(do this))\n";
    cin>>otvet;
}
 
while (otvet==1);
//{
//    do
 
 
 
 
}
system("pause");
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
nmcf
4259 / 3690 / 1243
Регистрация: 14.04.2014
Сообщений: 14,458
13.06.2014, 11:37     Создать файл записей #2
В чём сложность? Записывай в файл каждое поле в свою строку, например.
awaylastdays
0 / 0 / 0
Регистрация: 11.06.2014
Сообщений: 46
13.06.2014, 11:49  [ТС]     Создать файл записей #3
nmcf, сложность в том что ещё много задач и не успеваю между ними переключатся и просто нет времени чтоб вникнуть а надо сдать задачи через час( можете помоч ?
nmcf
4259 / 3690 / 1243
Регистрация: 14.04.2014
Сообщений: 14,458
13.06.2014, 11:57     Создать файл записей #4
Ну добавь в цикл ввода после 54-й строки
C++
1
2
fputs(sozd[i].familiya, file);
fputs(sozd[i].tvir, file);
Файл должен быть открыт.
awaylastdays
0 / 0 / 0
Регистрация: 11.06.2014
Сообщений: 46
13.06.2014, 12:05  [ТС]     Создать файл записей #5
nmcf,
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
#include <iostream.h>
#include <stdio.h>
struct record
    {
    char familiya[20];
    char tvir[20];
    };
       char familiya1[20];
int main()
{
        {
        FILE *f;
        f=fopen("F:\\f.txt","r");
        if(f==NULL)
        puts("file not found");
        else
        puts("ok");
        }
 
        puts("reading text file");
        char filename[10];
        FILE *f;
        char c,str[256];
        char key;
        f=fopen("F:\\f.txt","w");
 
 
int i=0,j,n;
int size=0;
int otvet;
record sozd[100];
 
 
{
    do
{
    i++;
    size++;
 
    cout<<"Vvedite Familiyu Avtora:\n";
    cin>>sozd[i].familiya;
    fputs(sozd[i].familiya);
 
 
    cout<<"Vvedite nazvanie tvoru: "<<endl;
    cin>>sozd[i].tvir;
    fputs(sozd[i].tvir);
 
    cout<<"Prodolghat Zapolnenie?(1-Yes(don`t do this, 2-No(do this))\n";
    cin>>otvet;
}
 
while (otvet==1);
 
 
 
        cout<<"Vvedite bukvu: ";
        cin>>familiya1;
 
        //for(int i=1; i<=size; i++)
        //{
 
 
 
}
system("pause");
}
пока так

Добавлено через 5 минут
nmcf, помоги пожалуйста!
nmcf
4259 / 3690 / 1243
Регистрация: 14.04.2014
Сообщений: 14,458
13.06.2014, 12:08     Создать файл записей #6
Второй параметр у fputs() добавь и файлы закрывать не забывай.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
13.06.2014, 12:38     Создать файл записей
Еще ссылки по теме:

C++ Добавление записей в файл. (Исправить ошибку)
C++ Создать текстовый файл и записать в двоичный файл
Создать типированный файл записей, который содержит данные о квартирах, которые продаются C++

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

Или воспользуйтесь поиском по форуму:
awaylastdays
0 / 0 / 0
Регистрация: 11.06.2014
Сообщений: 46
13.06.2014, 12:38  [ТС]     Создать файл записей #7
nmcf, ааааа надо сделать другую задачу не могу я сосредаточится на файлах

Добавлено через 31 секунду
nmcf, если напишете буду очень благодарен

Добавлено через 23 минуты
nmcf, как просто по букве вывести автора ?
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
#include <iostream.h>
#include <stdio.h>
struct record
    {
    char familiya[20];
    char tvir[20];
    };
       char familiya1[20];
int main()
{
        {
        FILE *f;
        f=fopen("F:\\f.txt","r");
        if(f==NULL)
        puts("file not found");
        else
        puts("ok");
        }
 
        puts("reading text file");
        char filename[10];
        FILE *f;
        char c,str[256];
        char key;
        f=fopen("F:\\f.txt","w");
 
 
int i=0,j,n;
int size=0;
int otvet;
record sozd[100];
 
 
{
    do
{
    i++;
    size++;
    {
    cout<<"Vvedite Familiyu Avtora:"<<endl;;
    cin>>sozd[i].familiya;
    fputs(sozd[i].familiya,f);
    }
    {
    cout<<"Vvedite nazvanie tvoru: "<<endl;
    cin>>sozd[i].tvir;
    fputs(sozd[i].tvir,f);
     }
    cout<<"Prodolghat Zapolnenie?(1-Yes(don`t do this, 2-No(do this))\n";
    cin>>otvet;
}
 
while (otvet==1);
 
 
 
        cout<<"Vvedite bukvu: ";
        cin>>familiya1;
 
        for(int i=1; i<=size; i++)
        {
        if(familiya1==sozd[i].familiya);
         cout<<"Cey avtor: "<<sozd[i].familiya<<"\n";
         else
         cout<<"Cyogo avtora naghal nemae\n"  ;
        }
 
 
}
system("pause");
}
Yandex
Объявления
13.06.2014, 12:38     Создать файл записей
Ответ Создать тему
Опции темы

Текущее время: 16:23. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru