говорю что она делает.
записывает информацию о N студентах для каждого
ФИО
Дата рождения
Дата поступления
Название факультета и кафедры
Группа
Номер зачетной книжки
Количество сессий (максимум 9) и предметов(в каждой сессии 10)
И
создает 4 файла
в первый файл идет вся информация о каждом студенте и о результатах каждой сессий вместе с предметом и оценкой
во второй файл записвывается Отличники с указанием отличивщейся сессии и информация о студенте от ФИО до Номера зачетки.
в третий и четвертый записывается что и в третий только информация о Хорошистах и Троешниках соответственно.
у меня пара вопросов.
1.что можно сделать (так сказать) для улучшения.
2.Так как в Си нет библиотеки <fstream> то, как будет лучше первести с Си++ на чистый Си. С помощью
fread или fputs? Если можно, то покажите эту реализацию на моем примере, хотя бы кусочке.
#include <conio.h>
#define c char
#define FNAME "C:\\BORLANDC\\BIN\\file.txt"
#define FNAME1 "C:\\BORLANDC\\BIN\\file1.txt"
#define FNAME2 "C:\\BORLANDC\\BIN\\file2.txt"
#define FNAME3 "C:\\BORLANDC\\BIN\\file3.txt"
#define FIO "F.I.O."
#define Date "Data rozhdeniya"
#define DateP "God postuplenia v instityt"
#define Fak "Fakultet. Kafeda"
#define Grup "Gruppa"
#define Zach "Nomer zachetnoi knigki"
#define Ses "Kolichestvo sessyi"
#define Nses "-aya sessiya"
#define Npr "-iy predmet"
#include <fstream.h>
#include <iostream.h>
void main()
{
{
ofstream face(FNAME);
ofstream face1(FNAME1);
ofstream face2(FNAME2);
ofstream face3(FNAME3);
c f[50];
c im[50];
c o[50];
c dat[11];
c datp[5];
c ffak[20];
c kaff[10];
c group[10];
c zac[8];
c pr[10];
c q[10];
int y1,z1,x1,oc,s,n,k,j,i,x,s1,p1;
int b,ss;
x=1;
x1=1;
y1=1;
z1=1;
cout<<"Vvedite kolicestvo studentov"<<endl;
cin>>n;
do
{
clrscr();
cout<<"\nDani pro "<<x++<<"-go studenta"<<endl;
for(i=0;i<1;i++)
{
cout<<FIO<<endl;
cin>>f>>im>>o;
cout<<Date<<endl;
cin>>dat;
cout<<DateP<<endl;
cin>>datp;
cout<<Fak<<endl;
cin>>ffak>>kaff;
cout<<Grup<<endl;
cin>>group;
cout<<Zach<<endl;
cin>>zac;
face<<"\nDani pro "<<x-1<<"-go studenta"<<endl;
face<<FIO<<endl<<f<<" "<<im<<" "<<o<<" "<<endl;
face<<Date<<endl<<dat<<endl;
face<<DateP<<endl<<datp<<endl;
face<<Fak<<endl<<ffak<<" "<<kaff<<endl;
face<<Grup<<endl<<group<<endl;
face<<Zach<<endl<<zac<<endl;
face<<"\n1-aya sessiya"<<endl;
cout<<Ses<<endl;
cin>>s;
s1=1;
ss=0;
face1<<"\nOtlichnik №"<<x1++<<endl;
face2<<"\nHoroshisty №"<<y1++<<endl;
face3<<"\nTroeshniki №"<<z1++<<endl;
do
{
cout<<endl<<s1++<<Nses<<endl;
for (j=0;j<1;j++)
{
cout<<"Vvdite predmet i ocenky"<<endl;
p1=1;
b=0;
do
{
cout<<p1++<<Npr<<endl;
for (k=0;k<1;k++);
{
cin>>pr>>oc;
face<<p1-1<<Npr<<endl<<pr<<" "<<oc<<endl;
b=b+oc;
ss=ss+s;
if ((b/10)==5)
{face1<<ss/(s*10)<<" "<<"Sessiya"<<endl;
}
}
}
while(p1<11);
face<<"\n"<<s1<<Nses<<endl;
if ((b/10)==4)
face2<<ss/(s*10)<<" "<<"Sessiya"<<endl;
if ((b/10)==3)
face3<<ss/(s*10)<<" "<<"Sessiya"<<endl;
if ((b/10)==5)
{face1<<FIO<<endl;
face1<<f<<" "<<im<<" "<<o<<endl;
face1<<Date<<endl<<dat<<endl;
face1<<DateP<<endl<<datp<<endl;
face1<<Fak<<endl<<ffak<<" "<<kaff<<endl;
face1<<Grup<<endl<<group<<endl;
face1<<Zach<<endl<<zac<<endl;
}
}
}
while(s1<s+1);
if ((b/10)==4)
face2<<FIO<<endl;
face2<<f<<" "<<im<<" "<<o<<endl;
face2<<Date<<endl<<dat<<endl;
face2<<DateP<<endl<<datp<<endl;
face2<<Fak<<endl<<ffak<<" "<<kaff<<endl;
face2<<Grup<<endl<<group<<endl;
face2<<Zach<<endl<<zac<<endl;
if ((b/10)==3)
face3<<FIO<<endl;
face3<<f<<" "<<im<<" "<<o<<endl;
face3<<Date<<endl<<dat<<endl;
face3<<DateP<<endl<<datp<<endl;
face3<<Fak<<endl<<ffak<<" "<<kaff<<endl;
face3<<Grup<<endl<<group<<endl;
face3<<Zach<<endl<<zac<<endl;
}
}
while (x<n+1);
}
cout<<"Danie zapisani v file "<<FNAME<<endl;
cin<<n;
getch();
}