С Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы

Файлы и структуры. Поиск студента по имени и сортировка - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Вычисление заданной функции разложением ее в ряд с использованием рекурсии http://www.cyberforum.ru/cpp-beginners/thread1130354.html
Программа вычисляет неправильно. Видимо, я что-то упустила. Не могли бы вы мне чуть-чуть подсказать, в чем моя ошибка? #include<iostream> #include<cmath> #include<conio.h> #include<stdlib.h>...
C++ Вывести строки массива строк, которые являются палиндромами Помогоите решить чайнику 2 задачи по c++ . 2) Массив из M строк по N символов каждая. Необходимо вывести только те строки, которые являются палиндромами, т.е. читаются одинаково слева направо и... http://www.cyberforum.ru/cpp-beginners/thread1130353.html
C++ C++ Консольные программы
Помогите кто как может!!! Задачи пишем в теме сообщения! Одно сообщение - одна задача!
C++ Доступ из нестатического метода к статическому члену класса
Привет! Подскажите, пожалуйста, как можно обратиться из нестатического метода класса к статическому члену? Вот мой метод: void MainWindow::paintEvent(QPaintEvent* pe) { QPainter...
C++ В текстовом файле подсчитать знаки препинания http://www.cyberforum.ru/cpp-beginners/thread1130326.html
Вот мои наброски, но мне выводит кол-во всех знаков! #include <iostream> #include <fstream> using namespace std; int main() { setlocale (0, ""); ifstream inp ("D://text.txt"); ...
C++ Умножение треугольных матриц Подскажите, как можно перемножить две нижние треугольные матрицы, не приводя их к квадратному виду, точнее, как записать цикл. подробнее

Показать сообщение отдельно
tibeg
0 / 0 / 0
Регистрация: 01.08.2013
Сообщений: 103

Файлы и структуры. Поиск студента по имени и сортировка - C++

26.03.2014, 16:31. Просмотров 686. Ответов 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
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
124
125
126
127
128
129
130
131
132
#include <iostream>
#include <fstream>
 
using namespace std;
 
 
    struct STUDENT
    {char familia[15]; char name[10]; int vozrast; int rayting; char pol;} 
 
    const char filename[]="file.txt";
    fstream file;
 
 
void WriteToFile(int num)
 
{
STUDENT st;
file.open(filename,ios::app);
cout << "Vvedite dannie\n";
for (i=0;i<num;i++)
{
 
    cout << "familia:";
    cin  >> st.familia;
 
    cout << "name:";
    cin  >> st.name;
 
    cout << "pol:";
    cin  >> st.pol;
 
    cout << "vozrast:";
    cin  >> st.vozrast;
 
    cout << "rayting:";
    cin  >> st.rayting;
 
    file<<st.familia<<"\n"<<st.name<<"\n"<<st.pol<<"\n"<<st.vozrast<<"\n"<<st.rayting<<"\n";
}
 
    file.close();
    getch();
}
 
 
 
 
void PrintFile()
{
STUDENT st;
 
file.open(filename,ios::in);
cout << "familia\tname\tpol\tvozrast\trayting\n";
 
        while(!file.eof())
            {file>>st.familia>>st.name>>st.pol>>st.vozrast>>st.rayting;
 
        if(file.peek()!=EOF)
             cout <<st.familia<<"\t"<<st.name<<"\t"<<st.pol<<"\t"<<st.vozrast<<"\t"<<rayting<<"\n";}
 
               file.close();
               getch();
}
 
 
 
 
 
void FileRewrite()
 
{file.open(filename,ios::out);
 file.close();
}
 
 
void Vibor()
{
STUDENT st;
 
 file.open(filename,ios::in);
      cout << "familia\tname\tpol\tvozrast\trayting\n";
 
         while(!file.eof())
           {file>>st.familia>>st.name>>st.pol>>st.vozrast>>st.rayting;
 
        if((file.peek()!=EOF)&&(st.pol==1990))
          cout<<st.familia<<"\t"<<st.name<<"\t"<<st.pol<<"\t"<<st.vozrast<<"\t"<<rayting<<"\n";}
 
             file.close(); 
             getch();
}
 
void Porjadok()
{
STUDENT stud[25],x;  int i,j,k=0;
 
file.open(filename, ios::in);
cout << "familia\tname\tpol\tvozrast\trayting\n";
 
     while(!file.eof())
        file>>st.familia>>st.name>>st.pol>>st.vozrast>>st.rayting;
         if (file.peek()!=EOF) {stud[k]=x; k++;}}
 
       file.close();
           for (i=0;i<k-1;i++)
                 for (j=0;j<k-1;j++)
 
                      if (strcmp(stud[j].familia,stud[j+1].familia)>0)
                         {x=stud[j]; stud[j]=stud[j+1]; stud[j+1]=x;}
 
       for(i=0;i<k;i++)
 
        cout<<stud[i].familia<<"\t"<<stud[i].name<<"\t"<<stud[i].pol<<"\t"<<stud[i].vozrast<<"\t"<<stud[i].rayting<<"\n";
getch();
}
 
 
int main()
{
    char menu; 
    int i;
 do
 {clrscr();  cout<<"1-Запись в файл\n2-Вывод на экран\n3-Очистка файла\n4-Выбор\n5-Сортировка\n6-Выход";
  menu=getch();  switch(menu)
  {case '1': cout<<"Количество записей"; cin>>i;
   WriteToFile(i); break;
   case '2':PrintFile(); break;
   case '3':FileRewrite(); break;
   case '4':Vibor(); break;
   case '5':Porjadok(); break;};
  if (menu=='6') break;
 }while(1);}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.