#include<iostream.h>
#include<conio.h>
#include<stdio.h>
#include<dir.h>
#include<string.h>
int n=0;
char path[30]="c:\\2.txt";
FILE *f;
typedef
struct
{
/*struct dy
{
int pon;
int tue;
} day;
*/
char name[20];
} student;
student mas[10];
void load4file()
{
if (searchpath(path)!=NULL)
{
f=fopen(path,"r+");
n=fread(mas,sizeof(student),20,f);
fclose(f);
}
else
{
f=fopen(path,"w");
n=0;
fclose(f);
}
}
void save2file()
{
f=fopen(path,"w");
fwrite(mas,sizeof(student),n,f);
fclose(f);
}
void add()
{
cout<<"Сколько записей хотите добавить?=";
int count;
cin>>count;
int i;
for (i=0;i<count;i++)
{
cout<<"Введите имя=";
cin>>mas[n+i].name;
}
n+=i;
cout<<"Записи успешно добавлены";
getch();
}
void view()
{
clrscr();
int i;
if (n!=0)
{
for (i=0;i<n;i++)
cout<<i+1<<". "<<mas[i].name<<endl;
}
else
cout<<"записи отсутствуют";
}
void edit()
{
if (n!=0)
{
view();
cout<<"============================\n";
cout<<"Введите номер строки которую редактируем=";
int var;
cin>>var;
if (var<=n && var>=1)
{
cout<<"Введите имя=";
cin>>mas[var-1].name;
cout<<"Отредактировано успешно";
}
else
cout<<"Записи отсутствуют";
getch();
}
}
void del()
{
if (n!=0)
{
view();
cout<<"============================\n";
cout<<"Введите номер строки которую удаляем=";
int var;
cin>>var;
if (var<=n && var>=1)
{
int i;
for (i=var-1;i<n-1;i++)
mas[i]=mas[i+1];
student u;
mas[i+1]=u;
n--;
}
else
{
cout<<"номер отсутствует";
getch();
}
}else
{
cout<<"Записи отсутствуют";
getch();
}
}
void main()
{
load4file();
int var=0;
do
{
clrscr();
cout<<"Меню";
cout<<"\n--------------\n";
cout<<"1. Посмотреть записи\n";
cout<<"2. Добавить записи\n";
cout<<"3. Удалить записи\n";
cout<<"4. Редактировать записи\n";
cout<<"5. Сохранить и выйти\n";
cout<<"\n--------------\n";
cout<<"Введите вариант:";
cin>>var;
switch(var)
{
case 1: {view(); getch() ;break;}
case 2: add();break;
case 3: del(); break;
case 4: edit(); break;
case 5: save2file(); break;
default: {cout<<"Нет такого варианта!" ; getch();};
}
}while(var!=5);
}