A Complete Banking program
Download
#include<stdio.h>
#include<conio.h>
#include<math.h>
#include<string.h>
static struct customer
{
char name[25];
long int bal,acno;
}cust;
void main()
{
int i,c,ch;
void acc(void);
void deposit(void);
void withdraw(void);
void detail(void);
void one(void);
do
{
clrscr();
gotoxy(2,2);
printf("%c",201);
for(i=3;i<79;i++)
{
gotoxy(i,2);
printf("%c",205);
}
printf("%c",187);
for(i=3;i<25;i++)
{
gotoxy(2,i);
printf("%c",186);
}
gotoxy(2,25);
printf("%c",200);
for(i=3;i<79;i++)
{
gotoxy(i,25);
printf("%c",205);
}
gotoxy(79,25);
printf("%c",188);
for(i=24;i>2;i--)
{
gotoxy(79,i);
printf("%c",186);
}
gotoxy(30,5);
printf("BANK TRANSACTIONS");
gotoxy(25,6);
printf("------------------------------\n");
gotoxy(23,7);
printf("%c",201);
for(i=24;i<52;i++)
{
gotoxy(i,7);
printf("%c",205);
}
printf("%c",187);
for(i=8;i<21;i++)
{gotoxy(23,i);
printf("%c",186);
}
gotoxy(23,21);
printf("%c",200);
for(i=24;i<52;i++)
{
gotoxy(i,21);
printf("%c",205);
}
gotoxy(52,21);
printf("%c",188);
for(i=20;i>7;i--)
{
gotoxy(52,i);
printf("%c",186);
}
gotoxy(28,9);
printf("1. NEW ACCOUNT");
gotoxy(28,11);
printf("2.DEPOSIT");
gotoxy(28,13);
printf("3.WITHDRAW");
gotoxy(28,15);
printf("4.LIST OF ACCOUNTS");
gotoxy(28,17);
printf("5.DETAILS OF AN A/C");
gotoxy(28,19);
printf("6.EXIT");
gotoxy(24,22);
printf("Select(1/2/3/4/5/6):");
scanf("%d",&ch);
switch(ch)
{
case 1: clrscr();
acc();
getch();
break;
case 2: deposit();
break;
case 3: clrscr();
withdraw();
break;
case 4: clrscr();
detail();
getch();
break;
case 5: clrscr();
one();
break;
}
}while(ch<6);
return;
}
/* ******************************************* */
/*FUNCTION STARTS*/
/*Adding new accounts*/
void acc()
{
int i,c;
char ch;
FILE *fp;
clrscr();
fp=fopen("bank.dat","a+");
do
{
clrscr();
gotoxy(10,5);
printf("%c",201);
for(i=11;i<60;i++)
{
gotoxy(i,5);
printf("%c",205);
}
printf("%c",187);
for(i=6;i<20;i++)
{
gotoxy(10,i);
printf("%c",186);
}
gotoxy(10,20);
printf("%c",200);
for(i=11;i<60;i++)
{
gotoxy(i,20);
printf("%c",205);
}
gotoxy(60,20);
printf("%c",188);
for(i=19;i>5;i--)
{
gotoxy(60,i);
printf("%c",186);
}
gotoxy(27,3);
printf("ADDING ACCOUNTS");
gotoxy(26,4);
printf("*************");
gotoxy(15,7);
printf("Account No. :");
scanf("%ld",&cust.acno);
gotoxy(15,9);
printf("Customer Name :");
fflush(stdin);
gets(cust.name);
gotoxy(15,11);
printf("Amount :");
scanf("%ld",&cust.bal);
fseek(fp,0,2);
fwrite(&cust,sizeof(cust),1,fp);
gotoxy(15,14);
printf("------------------------------");
gotoxy(23,16);
printf("Continue(y/n)");
fflush(stdin);
ch=getchar();
}while(ch=='y'||ch=='Y');
fclose(fp);
gotoxy(23,23);
printf("Press any key to cotinue");
return;
}
/*UPDATION OF DEPOSIT*/
void deposit()
{
FILE*fp,*ft;
int i,c,f=0;
long int ano,balance;
char ch;
do
{
clrscr();
gotoxy(10,5);
printf("%c",201);
for(i=11;i<60;i++)
{
gotoxy(i,5);
printf("%c",205);
}
printf("%c",187);
for(i=6;i<20;i++)
{
gotoxy(10,i);
printf("%c",186);
}
gotoxy(10,20);
printf("%c",200);
for(i=11;i<60;i++)
{
gotoxy(i,20);
printf("%c",205);
}
gotoxy(60,20);
printf("%c",188);
for(i=19;i>5;i--)
{
gotoxy(60,i);
printf("%c",186);
}
gotoxy(27,3);
printf("UPDATION OF DEPOSIT");
gotoxy(26,4);
printf("***************");
gotoxy(15,7);
printf("Account No. :");
scanf("%ld",&ano);
fp=fopen("bank.dat","r+");
ft=fopen("customer.dat","a+");
while(fread(&cust,sizeof(cust),1,fp)==1)
{
if(cust.acno==ano)
{
f=1;
gotoxy(15,9);
printf("Customer Name :");
fflush(stdin);
puts(cust.name);
gotoxy(15,11);
printf("Balance :");
printf("%ld",cust.bal);
gotoxy(15,13);
printf("Deposit Amount :");
scanf("%ld",&balance);
cust.bal=balance+cust.bal;
fwrite(&cust,sizeof(cust),1,ft);
}
else
{
fwrite(&cust,sizeof(cust),1,ft);
}
}
if(f==0)
{
clrscr();
gotoxy(15,10);
printf("A/C No. not found!!");
}
fclose(fp);
fclose(ft);
remove("bank.dat");
rename("customer.dat","bank.dat");
gotoxy(15,14);
printf("--------------------------------");
gotoxy(23,16);
printf("Continue (y/n)");
fflush(stdin);
ch=getchar();
}while(ch=='y'||ch=='Y');
gotoxy(23,23);
printf("Press any key to continue.");
return;
}
/*WITHDRAWAL PROGRAMME*/
void withdraw()
{
int i,c,f=0;
long int ano,balance;
char ch;
FILE *fp,*ft;
clrscr();
do
{
clrscr();
gotoxy(10,5);
printf("%c",201);
for(i=11;i<60;i++)
{
gotoxy(i,5);
printf("%c",205);
}
printf("%c",187);
for(i=6;i<20;i++)
{
gotoxy(10,i);
printf("%c",186);
}
gotoxy(10,20);
printf("%c",200);
for(i=11;i<60;i++)
{
gotoxy(i,20);
printf("%c",205);
}
gotoxy(60,20);
printf("%c",188);
for(i=19;i>5;i--)
{
gotoxy(60,i);
printf("%c",186);
}
gotoxy(27,3);
printf("WITHDRAWING FROM A/C");
gotoxy(26,4);
printf("***********************");
gotoxy(15,7);
printf("Account No. :");
scanf("%ld",&ano);
fp=fopen("bank.dat","r+");
ft=fopen("customer.dat","a+");
while(fread(&cust,sizeof(cust),1,fp)==1)
{
if(cust.acno==ano)
{
f=1;
gotoxy(15,9);
printf("Customer Name :");
fflush(stdin);
puts(cust.name);
gotoxy(15,11);
printf("Balance :");
printf("%ld",cust.bal);
gotoxy(15,13);
printf("Withdrawal Amount :");
scanf("%ld",&balance);
gotoxy(15,14);
printf("------------------------------");
if(cust.bal>balance)
cust.bal=cust.bal-balance;
else
if(cust.bal==balance)
{
gotoxy(20,15);
printf("Your Account Will be Closed!!!");
gotoxy(20,16);
printf("Are You Sure(Y/N)?");
fflush(stdin);
ch=getchar();
if(ch=='Y'||ch=='y')
continue;
}
else
{
clrscr();
gotoxy(15,10);
printf("Sorry! Your requirement is larger than your A/C!");
}
fwrite(&cust,sizeof(cust),1,ft);
}
else
{
fwrite(&cust,sizeof(cust),1,ft);
}
}
if(f==0)
{
clrscr();
gotoxy(15,10);
printf("A/C No. not found!!");
}
fclose(fp);
fclose(ft);
remove("bank.dat");
rename("customer.dat","bank.dat");
gotoxy(23,18);
printf("Continue (y/n)");
fflush(stdin);
ch=getchar();
}while(ch=='y'||ch=='Y');
gotoxy(23,23);
printf("Press any key to continue.");
return;
}
/* DETAILS OF ONE */
void one()
{
int i,c,f=0;
long int ano;
char ch;
FILE *fp;
clrscr();
do
{
clrscr();
gotoxy(10,5);
printf("%c",201);
for(i=11;i<60;i++)
{
gotoxy(i,5);
printf("%c",205);
}
printf("%c",187);
for(i=6;i<20;i++)
{
gotoxy(10,i);
printf("%c",186);
}
gotoxy(10,20);
printf("%c",200);
for(i=11;i<60;i++)
{
gotoxy(i,20);
printf("%c",205);
}
gotoxy(60,20);
printf("%c",188);
for(i=19;i>5;i--)
{
gotoxy(60,i);
printf("%c",186);
}
gotoxy(23,3);
printf("DETAILS OF A CUSTOMER");
gotoxy(22,4);
printf("*********************");
gotoxy(15,7);
printf("Account No. :");
scanf("%ld",&ano);
fp=fopen("bank.dat","r+");
while(fread(&cust,sizeof(cust),1,fp)==1)
{
if(cust.acno==ano)
{
f=1;
gotoxy(15,9);
printf("Customer Name :");
fflush(stdin);
puts(cust.name);
gotoxy(15,11);
printf("Balance :");
printf("%ld",cust.bal);
break;
}
}
if(f==0)
{
clrscr();
gotoxy(15,10);
printf("A/C No. not found!!");
}
fclose(fp);
gotoxy(15,14);
printf("---------------------------");
gotoxy(23,16);
printf("Continue(y/n)");
fflush(stdin);
ch=getchar();
}while(ch=='y'||ch=='Y');
gotoxy(23,23);
printf("Press any key to continue.");
return;
}
void detail()
{
FILE *fp;
int i,j,n,c,ch;
fp=fopen("bank.dat","r+");
clrscr();
gotoxy(10,5);
printf("%c",201);
for(i=11;i<70;i++)
{
gotoxy(i,5);
printf("%c",205);
}
printf("%c",187);
for(i=6;i<20;i++)
{
gotoxy(10,i);
printf("%c",186);
}
gotoxy(10,20);
printf("%c",200);
for(i=11;i<70;i++)
{
gotoxy(i,20);
printf("%c",205);
}
gotoxy(70,20);
printf("%c",188);
for(i=19;i>5;i--)
{
gotoxy(70,i);
printf("%c",186);
}
i=9;
gotoxy(31,3);
printf("ACCOUNT DETAILS");
gotoxy(25,4);
printf("*********************");
while(fread(&cust,sizeof(cust),1,fp)==1)
{
gotoxy(16,7);
printf("Ac.No. Name Balance");
gotoxy(15,8);
printf("------------------------------------");
gotoxy(16,i);
printf("%ld",cust.acno);
gotoxy(28,i);
puts(cust.name);
gotoxy(38,i);
printf("%ld",cust.bal);
i++;
}
if(i==20)
{
gotoxy(22,22);
printf("Press any key to continue...");
getch();
clrscr();
gotoxy(10,5);
printf("%c",201);
for(i=11;i<70;i++)
{
gotoxy(i,5);
printf("%c",205);
}
printf("%c",187);
for(i=6;i<20;i++)
{
gotoxy(10,i);
printf("%c",186);
}
gotoxy(10,20);
printf("%c",200);
for(i=11;i<70;i++)
{
gotoxy(70,20);
printf("%c",188);
for(i=19;i>5;i--)
{
gotoxy(70,i);
printf("%c",186);
}
i=9;
}
fclose(fp);
return;
}
}
|