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

Работа с базой данных, содержащей записи со сведениями о студентах - C++

Восстановить пароль Регистрация
 
Bakinowski Wlad
1 / 1 / 0
Регистрация: 08.10.2013
Сообщений: 155
17.05.2014, 22:48     Работа с базой данных, содержащей записи со сведениями о студентах #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
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
#include "stdafx.h"
#include <ctime>
#include <stdlib.h>
#include <fstream>
#include <iostream>
 
using namespace std;
 
struct stud
{
 char FIO[256];
 unsigned short age;
 unsigned short course;
 bool sex;
 unsigned short mark;
}; 
 
void create(ofstream&,int);      // создание файла cл. чисел
void read_file(ifstream &);      // вывод на экран
void calc_age(ifstream &); // Расчёт среднего возраста
void create_chet(ofstream &, ifstream &);  
int _tmain(int argc, _TCHAR* argv[])
{
    int n;
    cout<<"enter n"<<endl; cin>>n; // количество чисел файла
    // открыть file.bin  с именем outfile  для записи 
//= создать==================================================================
    ofstream outfile("file111.txt");               
    if (!outfile)
      { cout<<"error1"<<endl; 
        return 1;
      }
               // создание файла cл. чисел  file.bin
    create(outfile,n);                                              
    outfile.close();
//=вывести на 
 
экран===================================================================
         // открыть file.bin  с именем infile  для чтения 
  ifstream infile ("file111.txt");          
  if (!infile)
    { cout<<"error2"<<endl; 
      return 2;
     }
 read_file(infile);
    infile.close();
//=определить средний 
 
возраст===================================================================
         // открыть file.bin  с именем infile  для чтения 
  ifstream infile1 ("file111.txt");          
  if (!infile)
    { cout<<"error2"<<endl; 
      return 2;
     }
 calc_age(infile1);
    infile.close();
//============================================================================
    system("pause");
    return 0;
}
void create(ofstream& ofs, int n)
{
    stud spisok;
     for (int i = 0; i<n; i++)
     {
      cout << "Enter FIO: ";
      cin >> spisok.FIO;
      cout << "Enter age: ";
      cin >> spisok.age;
      cout << "Enter course: ";
      cin >> spisok.course;
      cout << "Enter sex, 1 for man, 0 for girl ;) ";
      cin >> spisok.sex;
      cout << "Enter mark: ";
      cin >> spisok.mark;
 
 
     // ofs.write((char *)&spisok, sizeof stud);
 
     }
}
void read_file(ifstream& ifs)
{
    stud spisok;
    ifs.seekg (0, ifs.end);
    int length = ifs.tellg();
    ifs.seekg (0, ifs.beg);
    for(int i = 0; i < length; i += sizeof stud)
    {
        
        ifs.read((char *)&spisok, sizeof stud);
        cout << "Number: " << i << endl;
        cout << "FIO: " << spisok.FIO<< endl;
        cout << "age: " << spisok.age<< endl;
        cout << "course: " << spisok.course<< endl;
        cout << "sex:" << spisok.sex<< endl;
        cout << "mark: " << spisok.mark<< endl;
 
    }
}
 void calc_age(ifstream& ifs)
{
stud spisok;
ifs.seekg (0, ifs.end);
int length = ifs.tellg();
ifs.seekg (0, ifs.beg);
 
int count = length / sizeof stud; // количество записей
 
float n = 0; // сумма возрастов
 
for(int i = 0; i < count; i++)
{
ifs.read((char *)&spisok, sizeof stud);
n += spisok.age;
}
 
cout << "Average age: " << n / count;
}
void create_chet(ofstream & ofs, ifstream & ifs)
{
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Убежденный
Системный программист
 Аватар для Убежденный
14174 / 6189 / 981
Регистрация: 02.05.2013
Сообщений: 10,295
Завершенные тесты: 1
17.05.2014, 22:49     Работа с базой данных, содержащей записи со сведениями о студентах #2
Цитата Сообщение от Bakinowski Wlad Посмотреть сообщение
что не так?
Нет описания проблемы.
Bakinowski Wlad
1 / 1 / 0
Регистрация: 08.10.2013
Сообщений: 155
17.05.2014, 22:57  [ТС]     Работа с базой данных, содержащей записи со сведениями о студентах #3
Убежденный, код не работает, почему?

Добавлено через 5 минут
Убежденный, ну так что???
DU
1477 / 1053 / 45
Регистрация: 05.12.2011
Сообщений: 2,279
17.05.2014, 22:59     Работа с базой данных, содержащей записи со сведениями о студентах #4
неужели не очевидно, что работа вашего кода зависит от того, что находится в файлах, которые вы читаете.
и без этих файлов и без описания того, как должно работать и как именно ваш код не работает вам врятли помогут.
Bakinowski Wlad
1 / 1 / 0
Регистрация: 08.10.2013
Сообщений: 155
17.05.2014, 23:11  [ТС]     Работа с базой данных, содержащей записи со сведениями о студентах #5
Написать программу для работы с базой данных, содержащей записи со сведениями о студентах: ФИО, возраст, пол, курс, успеваемость, в которой должны выполняться следующие действия:
• создание файла
• просмотр файла
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
#include "stdafx.h"
#include <ctime>
#include <stdlib.h>
#include <fstream>
#include <iostream>
 
using namespace std;
 
struct stud
{
 char FIO[256];
 unsigned short age;
 unsigned short course;
 bool sex;
 unsigned short mark;
}; 
 
void create(ofstream&,int);      // создание файла cл. чисел
void read_file(ifstream &);      // вывод на экран
void calc_age(ifstream &); // Расчёт среднего возраста
void create_chet(ofstream &, ifstream &);  
int _tmain(int argc, _TCHAR* argv[])
{
    int n;
    cout<<"enter n"<<endl; cin>>n; // количество чисел файла
    // открыть file.bin  с именем outfile  для записи 
//= создать==================================================================
    ofstream outfile("file111.txt");               
    if (!outfile)
      { cout<<"error1"<<endl; 
        return 1;
      }
               // создание файла cл. чисел  file.bin
    create(outfile,n);                                              
    outfile.close();
//=вывести на 
 
экран===================================================================
         // открыть file.bin  с именем infile  для чтения 
  ifstream infile ("file111.txt");          
  if (!infile)
    { cout<<"error2"<<endl; 
      return 2;
     }
 read_file(infile);
    infile.close();
//=определить средний 
 
возраст===================================================================
         // открыть file.bin  с именем infile  для чтения 
  ifstream infile1 ("file111.txt");          
  if (!infile)
    { cout<<"error2"<<endl; 
      return 2;
     }
 calc_age(infile1);
    infile.close();
//============================================================================
    system("pause");
    return 0;
}
void create(ofstream& ofs, int n)
{
    stud spisok;
     for (int i = 0; i<n; i++)
     {
      cout << "Enter FIO: ";
      cin >> spisok.FIO;
      cout << "Enter age: ";
      cin >> spisok.age;
      cout << "Enter course: ";
      cin >> spisok.course;
      cout << "Enter sex, 1 for man, 0 for girl ;) ";
      cin >> spisok.sex;
      cout << "Enter mark: ";
      cin >> spisok.mark;
 
 
     // ofs.write((char *)&spisok, sizeof stud);
 
     }
}
void read_file(ifstream& ifs)
{
    stud spisok;
    ifs.seekg (0, ifs.end);
    int length = ifs.tellg();
    ifs.seekg (0, ifs.beg);
    for(int i = 0; i < length; i += sizeof stud)
    {
        
        ifs.read((char *)&spisok, sizeof stud);
        cout << "Number: " << i << endl;
        cout << "FIO: " << spisok.FIO<< endl;
        cout << "age: " << spisok.age<< endl;
        cout << "course: " << spisok.course<< endl;
        cout << "sex:" << spisok.sex<< endl;
        cout << "mark: " << spisok.mark<< endl;
 
    }
}
 void calc_age(ifstream& ifs)
{
stud spisok;
ifs.seekg (0, ifs.end);
int length = ifs.tellg();
ifs.seekg (0, ifs.beg);
 
int count = length / sizeof stud; // количество записей
 
float n = 0; // сумма возрастов
 
for(int i = 0; i < count; i++)
{
ifs.read((char *)&spisok, sizeof stud);
n += spisok.age;
}
 
cout << "Average age: " << n / count;
}
void create_chet(ofstream & ofs, ifstream & ifs)
{
}
zer0mail
18.05.2014, 00:24
  #6

Не по теме:

Пациент (звонит): "Доктор, помогите!"
Доктор: "Что случилось?"
Пациент: "Болит"
Доктор: "Что болит, где именно?"
Пациент: "Тут"
Доктор: "Я не вижу, объясните"
Пациент: "Ну тут. Вы же доктор, что мне делать?"
...

влад0
4 / 4 / 0
Регистрация: 22.05.2012
Сообщений: 115
18.05.2014, 00:27     Работа с базой данных, содержащей записи со сведениями о студентах #7
Ну как минимум строки 38 и 49 надо за комментировать...
Bakinowski Wlad
1 / 1 / 0
Регистрация: 08.10.2013
Сообщений: 155
18.05.2014, 00:36  [ТС]     Работа с базой данных, содержащей записи со сведениями о студентах #8
влад0,
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
#include "stdafx.h"
#include <ctime>
#include <stdlib.h>
#include <fstream>
#include <iostream>
 
using namespace std;
 
struct stud
{
 char FIO[256];
 unsigned short age;
 unsigned short course;
 bool sex;
 unsigned short mark;
}; 
 
void create(ofstream&,int);      // создание файла cл. чисел
void read_file(ifstream &);      // вывод на экран
void calc_age(ifstream &); // Расчёт среднего возраста
void create_chet(ofstream &, ifstream &);  
int _tmain(int argc, _TCHAR* argv[])
{
    int n;
    cout<<"enter n"<<endl; cin>>n; // количество чисел файла
    // открыть file.bin  с именем outfile  для записи 
//= создать==================================================================
    ofstream outfile("file111.txt");               
    if (!outfile)
      { cout<<"error1"<<endl; 
        return 1;
      }
               // создание файла cл. чисел  file.bin
    create(outfile,n);                                              
    outfile.close();
//=вывести на экран===================================================================
         // открыть file.bin  с именем infile  для чтения 
  ifstream infile ("file111.txt");          
  if (!infile)
    { cout<<"error2"<<endl; 
      return 2;
     }
 read_file(infile);
    infile.close();
//=определить средний возраст===================================================================
         // открыть file.bin  с именем infile  для чтения 
  ifstream infile1 ("file111.txt");          
  if (!infile1)
    { cout<<"error2"<<endl; 
      return 2;
     }
 calc_age(infile);
    infile.close();
//============================================================================
    system("pause");
    return 0;
}
void create(ofstream& ofs, int n)
{
    stud spisok;
     for (int i = 0; i<n; i++)
     {
      cout << "Enter FIO: ";
      cin >> spisok.FIO;
      cout << "Enter age: ";
      cin >> spisok.age;
      cout << "Enter course: ";
      cin >> spisok.course;
      cout << "Enter sex, 1 for man, 0 for girl ;) ";
      cin >> spisok.sex;
      cout << "Enter mark: ";
      cin >> spisok.mark;
 
 
     // ofs.write((char *)&spisok, sizeof stud);
 
     }
}
void read_file(ifstream& ifs)
{
    stud spisok;
    ifs.seekg (0, ifs.end);
    int length = ifs.tellg();
    ifs.seekg (0, ifs.beg);
    for(int i = 0; i < length; i += sizeof stud)
    {
        
        ifs.read((char *)&spisok, sizeof stud);
        cout << "Number: " << i << endl;
        cout << "FIO: " << spisok.FIO<< endl;
        cout << "age: " << spisok.age<< endl;
        cout << "course: " << spisok.course<< endl;
        cout << "sex:" << spisok.sex<< endl;
        cout << "mark: " << spisok.mark<< endl;
 
    }
}
 void calc_age(ifstream& ifs)
{
stud spisok;
ifs.seekg (0, ifs.end);
int length = ifs.tellg();
ifs.seekg (0, ifs.beg);
 
int count = length / sizeof stud; // количество записей
 
float n = 0; // сумма возрастов
 
for(int i = 0; i < count; i++)
{
ifs.read((char *)&spisok, sizeof stud);
n += spisok.age;
}
 
cout << "Average age: " << n / count;
}
void create_chet(ofstream & ofs, ifstream & ifs)
{
}
Добавлено через 2 минуты
zer0mail, очень смешно...
влад0
4 / 4 / 0
Регистрация: 22.05.2012
Сообщений: 115
18.05.2014, 01:08     Работа с базой данных, содержащей записи со сведениями о студентах #9
Какие ошибки у тебя компилятор выдает-то?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.05.2014, 05:13     Работа с базой данных, содержащей записи со сведениями о студентах
Еще ссылки по теме:

Работа с файлом и базой данных в C++ C++
C++ Работа с базой данных. Как заполнить таблицу?
C++ Работа с базой данных web

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

Или воспользуйтесь поиском по форуму:
Fear1911
6 / 3 / 7
Регистрация: 05.02.2014
Сообщений: 131
18.05.2014, 05:13     Работа с базой данных, содержащей записи со сведениями о студентах #10
не с базой
Yandex
Объявления
18.05.2014, 05:13     Работа с базой данных, содержащей записи со сведениями о студентах
Ответ Создать тему
Опции темы

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