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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
shilovec5377
29 / 54 / 1
Регистрация: 26.05.2011
Сообщений: 752
#1

сохранить введенных студентов в файл - C++

07.05.2013, 17:31. Просмотров 375. Ответов 8
Метки нет (Все метки)

Всем привет.
люди добрые подскажите как можно сохранить введенных студентов в файл. Сохранение есть и ввод есть.

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
#include <iostream.h>
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
#include <string.h>
#include <fstream.h>
 
 
FILE *fl;
 
typedef struct
{
    char fio[30];
    unsigned char matem;
    unsigned char oaip;
    unsigned char english;
}TStudent;
 
TStudent stud[30]; //массив структур
char name[20];//имя файла
int nst=0;//число введенных структур
 
int menu();    //меню
void spisok(); //Ввести список
void resc();   //Вывести результат на экран
void resf();   //Сохранить результат в файл
 
 
 
int main()
{
    while (true)
    {
        switch (menu())
        {
            
            case 1: spisok(); break; //Ввести список
            case 2: resc(); break; //Вывести результат на экран
            case 3: resf(); break; //Сохранить результат в файл
 
            case 4: return 0;
            default: "Viberite pravilno!";
        }
        puts("pres any key to continue");
        getch();
        system("cls"); 
}
} 
 
 
int menu()//меню
{
    cout<<"viberite:"<<endl;
    cout<<"1.vvod studentov"<<endl;
    cout<<"2.vivesti rezultat na ekran"<<endl;
    cout<<"3.sohranit rezultat v file"<<endl;
    cout<<"4.Exit"<<endl;
    int i;
    cin>>i;
    return i;
}
 
//--пока не работает---------------------------------------------
void resc()//вывести результат на экран
{
    for (int i=0;i<nst;i++)
        if (stud[i].oaip=='4')
            cout<<stud[i].fio<<endl;
}
//----------------------------------------------
 
 
 
 
 
 
 
 
void spisok () //ввод студентов
{
 
    cout<<"vvedite chislo studentov"<<endl;
    cin>>nst;
 
    for (int i=0;i<nst;i++)
    {
        cout<<"vvedite imya: ";
        cin>>stud[i].fio;
        cout<<"vvedite ocenki po matem.: ";
        cin>>stud[i].matem;
        cout<<"vvedite ocenku po oaip: ";
        cin>>stud[i].oaip;
            cout<<"vvedite ocenku po english: ";
        cin>>stud[i].english;
    }
}
 
 
 
 
 
 
 
void resf()////сохранение в файл
 
{
    ofstream f("ofile.txt");
    for (int i=0;i<10;i++)
    { 
        int v;
        cin>>v;
        f<<v<<endl;
}
}
Добавлено через 3 часа 0 минут
Подскажите пж.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.05.2013, 17:31
Здравствуйте! Я подобрал для вас темы с ответами на вопрос сохранить введенных студентов в файл (C++):

Вывести в новый файл список студентов, удалив из него студентов окончивших школу в текущем году. - C++
На основе данных входного файла составить список студентов группы, включив следующие данные: ФИО, год рождения, домашний адрес, какую школу...

Вывести в новый файл список студентов, удалив из него студентов окончивших школу в текущем году - C++
На основе данных входного файла составить список студентов группы, включив следующие данные: ФИО, год рождения, домашний адрес, какую...

Составить файл об информаций студентов в группе. Найти самый высокий и самый низкий уровень успеваемости студентов в группе - C++
блииин ничего непонела !!на языки С нужно написать программу на тему ввод и ввывод файловых возможности! задание - нужно составить файл об...

Дан текстовый файл. Заменить окончание ing каждого слова, встречающегося в заданном предложении на ED и сохранить результат в новый файл. - C++
Всем вечер добрый. Хотелось бы, чтоб кто-нибудь помог с прогой. Её текст ниже: Дан текстовый файл. Заменить окончание ing каждого...

Дописать в файл пять введенных пользователем целых чисел - C++
Напишите программу, которая дописывает в файл A:\numbers.txt пять введенных пользователем целых чисел. Убедитесь при помощи редактора...

Написать программу дополняющую в файл D:\numbers.txt пять введенных пользователем целых чисел - C++
Написать программу дополняющую в файл D:\numbers.txt пять введенных пользователем целых чисел. Убедитесь при помощи редактора текста, что в...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
yoghurt92
374 / 345 / 22
Регистрация: 17.05.2012
Сообщений: 1,049
07.05.2013, 18:03 #2
shilovec5377,

C++
1
2
3
4
5
6
7
8
9
void resf()////сохранение в файл
{
    ofstream fout("ofile.txt", ios::app);
    for (int i=0;i<2;i++)
    {
        fout << stud[i].fio << endl << stud[i].english << endl
                << stud[i].matem << endl << stud[i].oaip << endl << endl;
    }
}
shilovec5377
29 / 54 / 1
Регистрация: 26.05.2011
Сообщений: 752
08.05.2013, 12:27  [ТС] #3
пробую вывести рузультат на экран, выдает нули (сколько ввел человек, столько и нулей).
помогите пж. Вот мой вывод:
C++
1
2
3
4
5
6
7
8
9
10
void resc()//вывести результат на экран
{
    ifstream f("ofile.txt");
    for (int i=0;i<nst;i++)
    { 
        int v;
        f>>v;
        cout<<v<<endl;
}
}
yoghurt92
374 / 345 / 22
Регистрация: 17.05.2012
Сообщений: 1,049
08.05.2013, 13:39 #4
shilovec5377,

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
void resc()//вывести результат на экран
{
    char fio[30];
    unsigned char matem;
    unsigned char oaip;
    unsigned char english;
 
    ifstream fin("ofile.txt", ios::in);
    for (int i=0;i<nst;i++)
    { 
        cin.getline(fio, 30);
        fin >> matem >> oaip >> english;
 
        cout << fio << '\n' << matem << '\n' << oaip << '\n' << english << "\n\n";
    }
}
shilovec5377
29 / 54 / 1
Регистрация: 26.05.2011
Сообщений: 752
08.05.2013, 14:04  [ТС] #5
Что-то не так выводит.
Миниатюры
сохранить введенных студентов в файл   сохранить введенных студентов в файл  
yoghurt92
374 / 345 / 22
Регистрация: 17.05.2012
Сообщений: 1,049
08.05.2013, 14:20 #6
shilovec5377, ну я не копилировал, сейчас посмотрю.

Добавлено через 12 минут
shilovec5377,

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
void resc()//вывести результат на экран
{
    char fio[30];
    unsigned char matem;
    unsigned char oaip;
    unsigned char english;
 
    ifstream fin("ofile.txt", ios::in);
    for (int i=0;i<nst;i++)
    { 
        fin.getline(fio, 30);
        fin >> matem >> oaip >> english;
        fin.ignore(2);
 
        cout << fio << '\n' << matem << '\n' << oaip << '\n' << english << "\n\n";
    }
 
    system("pause");
}
shilovec5377
29 / 54 / 1
Регистрация: 26.05.2011
Сообщений: 752
08.05.2013, 14:41  [ТС] #7
а подскажите пж, почему при следующем запуске не выводится на экран.
yoghurt92
374 / 345 / 22
Регистрация: 17.05.2012
Сообщений: 1,049
08.05.2013, 14:50 #8
shilovec5377, поставь

C++
1
fin.close();
перед

C++
1
system("pause");
а при следующем запуске у тебя переменная для вывода равно нулю как вариант так можно

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
void resc()//вывести результат на экран
{
    char fio[30];
    unsigned char matem;
    unsigned char oaip;
    unsigned char english;
 
    ifstream fin("ofile.txt", ios::in);
    
    fin.getline(fio, 30);
    fin >> matem >> oaip >> english;
    fin.ignore(2);
 
    while(!fin.eof()){
 
        cout << fio << '\n' << matem << '\n' << oaip << '\n' << english << "\n\n";
 
        fin.getline(fio, 30);
        fin >> matem >> oaip >> english;
        fin.ignore(2);
    }
 
    fin.close();
    system("pause");
}
shilovec5377
29 / 54 / 1
Регистрация: 26.05.2011
Сообщений: 752
08.05.2013, 14:51  [ТС] #9
спасиб большое за помощь
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
08.05.2013, 14:51
Привет! Вот еще темы с ответами:

Создать файл, содержащий список студентов группы - C++
Здравствуйте, необходимо создать файл, содержащий список студентов группы со следующими характеристиками: адрес, место работы родителей,...

Создать текстовый файл с информацией об успеваемости студентов - C++
Создать текстовый файл с информацией об успеваемости студентов мОЖНО ЛИ КАК-НИБУДЬ ПОПРОЩЕ ЭТОТ КОД НАПИСАТЬ #include &lt;iostream&gt; ...

Сортировка списка студентов по дате рождения (файл) - C++
Очень нужна помощь умельцев. Помогите пожалуйста отсортировать по дате рождения. На этом примере идет сортировка по году, а мне нужно по...

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


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
08.05.2013, 14:51
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru