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

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

Войти
Регистрация
Восстановить пароль
 
Esik
Сообщений: n/a
#1

Видоизменить программу для чтения и записи файлов - C++

04.12.2009, 22:20. Просмотров 319. Ответов 0
Метки нет (Все метки)

Помогите написать программу. задача следующая:
В одном файле даны: код фамилии и сама фамилия студента(количество может меняться)
во 2 файле: код предмета и название предмета(количество может меняться)
в 3 файле: код фамилии, код предмета, оценка
Нужно посчитать сумму баллов для каждого студента за все предметы, и отсортировать их в порядке убывания и вывести в 4 файл, где будет 3 первых места и 3 последних места(в файле должна быть фамилия и сумма).
Я не могу видойзменить программу, чтобы ввод осуществлялся с файлов. Ввот исходник в котором ввод осуществляется с клавиатуры...Плиз помогите видоизменить:
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
133
134
#include <iostream.h>
#include <conio.h>
#include <stdio.h>
#include <stdlib.h>
#define k 10 
struct student
{
   char name[k];
    int *marks;
   int sum;
};
 
 
void input(int,int,student *z);
void search(int,student *z);
void out(int,int,student *x);
 
 
int  main()
{  int n,m;
student   *stud;
cout<<"Vvedite kolichestvo studentov: ";cin>>n;
 
cout<<"Vvedite kolichestvo examinov: ";cin>>m;
 
stud=new student[n];
    for(int i=0;i<n;i++)
    {
    stud[i].marks=new int[m];
    }
 
input(n,m,stud);
search(n,stud);
puts("\n===== Results =====\n");
out(n,m,stud);
 
    for( i=0;i<m;i++) //освобождаем память
    {
    delete[]stud[i].marks;
    }
    delete[]stud;
    getch();
    return 0;
}
 
 
void input(int x,int y,student *z)
{         int sum=0;
    for(int i=0;i<x;i++)
   {
     
     cout<<"Vvedite familiu: ";cin>>z[i].name;
    for(int j=0;j<y;j++)
      {  
        cout<<"Vvedite"<<'['<<j<<']'<<"ocenky: ";
         cin>>z[i].marks[j];
      }
   }
 
 
  for(i=0;i<x;i++)
     {
            for(int j=0;j<y;j++)
         {
          sum=sum+z[i].marks[j];
         }
 
         z[i].sum=sum;
         sum=0;
     }
}
 
 
void search(int x,student *z)
{
    student aux;
    bool f;
    int g=x;
 
    do{g--;f=0;
    for(int i=0;i<g;i++)
        if(z[i].sum<z[i+1].sum)
        {
            aux=z[i];
            z[i]=z[i+1];
            z[i+1]=aux;
            f=1;
        }
    }while(f);
 
}
 
 
void out(int a,int y,student *x)
{ 
  int t=0;
  cout<<"Good students:"<<"Ocenki:"<<"Summa:"<<endl;
 
 
        for(int i=0;i<a;i++)
        {
         cout<<x[i].name<<"   ";
         for(int j=0;j<y;j++)
         cout<<x[i].marks[j]<<" ";
         cout<<"= ";
         cout<<x[i].sum;cout<<endl;
         if(x[i+1].sum!=x[i].sum)
         {
            t+=1;
         
         if(t==3){break;}}
        }
 
      t=0;
       cout<<"   "<<endl;
      cout<<"Bad students:"<<"Ocenki:"<<"Summa:"<<endl;
 
      for(i=a-1;i>=0;i--)
        {
         cout<<x[i].name<<"   ";
         for(int j=0;j<y;j++)
         cout<<x[i].marks[j]<<" ";
         cout<<"= ";
         cout<<x[i].sum;cout<<endl;
         if(x[i+1].sum!=x[i].sum)
         {
            t+=1;
         
         if(t==3){break;}}
        }
 
 
 
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.12.2009, 22:20     Видоизменить программу для чтения и записи файлов
Посмотрите здесь:

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

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

Объясните синтаксис записи и чтения объектов из файлов - C++
#include&lt;iostream&gt; #include&lt;fstream&gt; #include&lt;locale.h&gt; #include&lt;iomanip&gt; #include &lt;cstdlib&gt; using namespace std; struct...

Открытие файла для чтения/записи - C++
Помогите реализовать открытие файла под компилятор g++ или DevC++ вечно ругается на std.. using namespace std; не помогает. как...

Как инициализировать дескриптор для записи и чтения файла - C++
Здорова! Написал программку для чтения из файла. Но чото при вызове ничего не происходит. #include &lt;iostream&gt; using std::cout; ...

Выдает ошибку и не читает текст(составить программу для чтения текста) - C++
Надо было составить программу чтобы считывала текст из файла и выводила количество маленьких (4-8 символов) слов во всех строках текста ...

HEX viewer: создать программу для чтения из файла текста в обычном режиме и в шестнадцатеричном - C++
нужно создать программу для чтения из файла текста и выписывания его в обычном режиме и в шестнадцатеричном. кроме того нужно сделать Pg Up...

Разбиение текста для записи в несколько файлов - C++
Здравствуйте уважаемые форумчане. Я еще только начинаю изучать С++. Надеюсь на вашу помощь. В программе мне нужно реализовать...

Блокировка чтения-записи в QNX - C++
Дорогие товарищи помогите пожалуйста написать программу. 1. Пользователь вводит данные с клавиатуры и число читателей. Писатель N-ое...

Ошибка записи и чтения объектов - C++
Всем привет. Говорю сразу: Кто сделает этот код рабочим, заплачу 300 р. на PayPal аккаунт (если таковой имеется) Делаю задание...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

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