Bank Management System is a console-based application developed in C++ that simulates basic banking operations. It allows users to create and manage two types of bank accounts (Savings and Current) with essential features like account creation, deposit, withdrawal, and balance inquiry.
This is a beginner-friendly project that demonstrates object-oriented programming (OOP) concepts in C++, including classes, static members, and member functions.
-
Savings Account
- Minimum opening balance: βΉ500
- Suitable for individual savers
- Standard savings account features
-
Current Account
- Minimum opening balance: βΉ1000
- Designed for business transactions
- Similar operations as Savings account
- Account Opening: Create a new account with customer details
- Deposit: Add funds to an existing account
- Withdrawal: Withdraw money (with balance validation)
- Balance Inquiry: Check current account balance
- Account Management: View account details and transaction history
- Customer Name
- Address
- Phone Number
- Account Type (Savings/Current)
- Account Number (auto-generated)
- Current Balance
class bank
βββ Private Members
β βββ static int acctno (Savings account counter)
β βββ static int acttno (Current account counter)
β βββ char name[20]
β βββ char add[20]
β βββ char ph_no[10]
β
βββ Public Methods
βββ static void increment() - Increment savings account number
βββ static void display() - Display account number
βββ static void increse() - Increment current account number
βββ static void show() - Display current account number
βββ void saving() - Handle savings account operations
βββ void curr() - Handle current account operationsMain Menu (Savings/Current/Exit)
β
βββββββββββββββββββββββββββββββββββββββββββ
β β
ββ Savings Account Menu ββ Current Account Menu
β 1. Account Opening 1. Account Opening
β 2. Deposit 2. Deposit
β 3. Withdrawal 3. Withdrawal
β 4. Balance Check 4. Balance Check
β 5. Back to Main 5. Back to Main
β β
βββββββββββββββββββββββββββββββββββββββββββ- Language: C++
- Platform: Turbo C++ (DOS-based)
- Compilation Target: Windows (legacy DOS mode)
iostream.h- Standard I/O operationsconio.h- Console I/O (Turbo C++ specific)stdlib.h- Standard library functionsdos.h- DOS-specific functions (delay, etc.)
On Turbo C++:
- Open Turbo C++
- File β New β Edit the file
- Copy the code from
BANK.CPP - Press Alt+F9 to compile
- Press Ctrl+F9 to run
On Modern Compilers (with modifications):
# Using g++ (requires refactoring)
g++ -o bank BANK.CPP
./bank-
Start the Program: The welcome screen appears
-
Select Account Type:
- Option 1: Access Savings Account menu
- Option 2: Access Current Account menu
- Option 3: Exit the application
-
Perform Transactions:
- Create an account with minimum balance
- Deposit money
- Withdraw money (up to available balance)
- Check balance and account details
-
Exit: Select option 3 from main menu to exit
1. Create Savings Account (βΉ500 minimum)
- Name: John Doe
- Address: 123 Main St
- Phone: 9876543210
- Initial Deposit: βΉ5000
2. Deposit βΉ2000
- New Balance: βΉ7000
3. Withdraw βΉ3000
- New Balance: βΉ4000
4. Check Balance
- Account Balance: βΉ4000- No Persistent Storage: All data is lost when the program exits
- Single Account Per Session: Only one account can be stored in memory at a time (per account type)
- Limited Validation: Basic input validation only
- Legacy Code: Uses deprecated headers (Turbo C++ style)
- No Interest Calculation: No automated interest application
- No Transaction Log: Individual transactions are not recorded
- Static Account Numbers: Account numbers reset when program restarts
- No Security: No password or authentication system
Suggested improvements for modernization and functionality:
- Database Integration: Use SQLite or MySQL to persist data
- File-Based Storage: Save account details to files
- Multi-Account Management: Handle multiple accounts simultaneously
- Interest Calculation: Implement interest accrual for savings accounts
- Transaction History: Maintain detailed transaction logs
- PIN Protection: Add security with PIN/password authentication
- Modern C++: Refactor to use modern C++ standards (C++14/17/20)
- Cross-Platform: Use standard libraries for broader compatibility
- GUI Interface: Develop a graphical user interface
- Overdraft Facility: Allow current accounts to have overdraft limits
- Cheque Management: Add cheque book functionality
- Transfer Between Accounts: Enable account-to-account transfers
- Total Lines: ~400+ lines
- Classes: 1 (bank)
- Public Methods: 6
- Member Functions: 2
- Main Function: 1 entry point
This project demonstrates:
β Object-Oriented Programming
- Class definition and implementation
- Public and private access specifiers
- Static members and methods
β Control Flow
- Switch-case statements
- Do-while loops
- Conditional statements
β User Interface
- Console-based menu design
- Input/output operations
- Screen clearing and formatting
β Data Management
- Variable declaration and initialization
- Array usage for strings
- Data validation
1. Auto-generate account number (increment static counter)
2. Display generated account number
3. Take user input (name, address, phone, initial amount)
4. Validate minimum balance requirement
5. Store details in class member variables
6. Set initial balance
7. Display confirmation1. Request account number from user
2. Validate account number
3. Display current balance
4. Request withdrawal amount
5. Validate amount β€ balance
6. Deduct from balance
7. Display new balance
8. Show confirmation or errorThis is an educational project. For production use, implement:
- Encryption for sensitive data
- User authentication
- Transaction logging
- Audit trails
- Data backup systems
This is an open-source educational project. Feel free to use, modify, and distribute.
Created as a learning project to understand C++ fundamentals and banking system logic.
The Bank Management System is a fundamental project that introduces banking concepts through programming. While it has limitations, it serves as an excellent learning resource for understanding OOP principles, user interface design, and business logic implementation in C++.
Ideal for: Students, beginners in C++, anyone learning about system design and banking operations.