Сама структура
typedef struct
{
int roll;
int number;
char name[30];
float balance;
}account;
Эта функция создает файл, в котором хранится значение всех созданных учетных записей, в этом случае также создается учетная запись
int addAcc()
{
получает значение общих счетов
FILE *frecord;
frecord=fopen("fileRecord.txt","r");
fscanf(frecord,"%d",&maxAcc);
fclose(frecord);
maxAcc++;
frecord=fopen("fileRecord.txt","w+");
fprintf(frecord,"%d",maxAcc);
fclose(frecord);
использует значение общих счетов
FILE *fatm;
fatm=fopen("fileAtm.txt","a+");
gotoxy(50,19);
printf("-----New Account-----");
попросить пользователя ввести необходимые значения
Record[maxAcc].roll=maxAcc;
fprintf(fatm," %d",Record[maxAcc].roll);
gotoxy(50,20);
printf("Name: ");
scanf("%s",&Record[maxAcc].name);
fprintf(fatm," %s",Record[maxAcc].name);
gotoxy(50,21);
printf("Account Number: ");
scanf("%d",&Record[maxAcc].number);
fprintf(fatm," %d",Record[maxAcc].number);
gotoxy(50,22);
printf("Balance: ");
scanf("%f",&Record[maxAcc].balance);
fprintf(fatm," %f",Record[maxAcc].balance);
gotoxy(50,19);
printf(" ");
gotoxy(50,20);
printf(" ");
gotoxy(50,21);
printf(" ");
gotoxy(50,22);
printf(" ");
fclose(fatm);
supervisor();
}
Эта функция предназначена для открытия предыдущего файла, в котором хранится количество существующих учетных записей, а также выводится на консоль. все детали сделанных счетов
int editAcc()//Search/Print does not work properly; possibly of function addAcc
{
FILE *frecord;
frecord=fopen("fileRecord.txt","r");
fscanf(frecord,"%d",&maxAcc);
fclose(frecord);
gotoxy(50,5);
printf("Total number of existing accounts: %d",maxAcc);
FILE *fatm;
fatm=fopen("fileATM.txt","r");
gotoxy(50,8);
printf("-----Edit Account-----");
gotoxy(50,9);
printf("#");
gotoxy(53,9);
printf("Name");
gotoxy(90,9);
printf("Account Number");
gotoxy(110,9);
printf("Balance");
распечатывает содержимое файла
for(counter=0;counter<maxAcc;counter++);
{
fscanf(fatm,"%d",&Record[counter].roll);
fscanf(fatm,"%s",&Record[counter].name);
fscanf(fatm,"%d",&Record[counter].number);
fscanf(fatm,"%f",&Record[counter].balance);
gotoxy(50,10+counter);
printf("%d",Record[counter].roll);
gotoxy(53,10+counter);
printf("%s",Record[counter].name);
gotoxy(90,10+counter);
printf("%d",Record[counter].number);
gotoxy(110,10+counter);
printf("%0.2f",Record[counter].balance);
}
очищает экран
getch();
for(counter=0;counter<20;counter++);
{
gotoxy(50,5+counter);
printf(" ");
}
fclose(fatm);
supervisor();
}