C Program to Display the ATM Transaction

This C Program performs ATM transaction. The types of ATM transaction are
1) Balence checking
2) Cash withdrawal
3) Cash deposition.
You can opt any of the above transaction according to your need of transaction.

Here is source code of the C Program to display the ATM transaction. The C program is successfully compiled and run on a Linux system. The program output is also shown below.

  1. /*
  2.  * C Program to Display the ATM Transaction
  3.  */
  4. #include <stdio.h>
  5.  
  6. unsigned long amount=1000, deposit, withdraw;
  7. int choice, pin, k;
  8. char transaction ='y';
  9.  
  10. void main()
  11. {
  12. 	while (pin != 1520)
  13. 	{
  14. 		printf("ENTER YOUR SECRET PIN NUMBER:");
  15. 		scanf("%d", &pin);
  16. 		if (pin != 1520)
  17. 		printf("PLEASE ENTER VALID PASSWORD\n");
  18. 	}
  19. 	do
  20. 	{
  21. 		printf("********Welcome to ATM Service**************\n");
  22. 		printf("1. Check Balance\n");
  23. 		printf("2. Withdraw Cash\n");
  24. 		printf("3. Deposit Cash\n");
  25. 		printf("4. Quit\n");
  26. 		printf("******************?**************************?*\n\n");
  27. 		printf("Enter your choice: ");
  28. 		scanf("%d", &choice);
  29. 		switch (choice)
  30. 		{
  31. 		case 1:
  32. 			printf("\n YOUR BALANCE IN Rs : %lu ", amount);
  33. 			break;
  34. 		case 2:
  35. 			printf("\n ENTER THE AMOUNT TO WITHDRAW: ");
  36. 			scanf("%lu", &withdraw);
  37. 			if (withdraw % 100 != 0)
  38. 			{
  39. 				printf("\n PLEASE ENTER THE AMOUNT IN MULTIPLES OF 100");
  40. 			}
  41. 			else if (withdraw >(amount - 500))
  42. 			{
  43. 				printf("\n INSUFFICENT BALANCE");
  44. 			}
  45. 			else
  46. 			{
  47. 				amount = amount - withdraw;
  48. 				printf("\n\n PLEASE COLLECT CASH");
  49. 				printf("\n YOUR CURRENT BALANCE IS%lu", amount);
  50. 			}
  51. 			break;
  52. 		case 3:
  53. 			printf("\n ENTER THE AMOUNT TO DEPOSIT");
  54. 			scanf("%lu", &deposit);
  55.                         amount = amount + deposit;
  56. 			printf("YOUR BALANCE IS %lu", amount);
  57. 			break;
  58. 		case 4:
  59. 			printf("\n THANK U USING ATM");
  60. 			break;
  61. 		default:
  62. 			printf("\n INVALID CHOICE");
  63. 		}
  64. 		printf("\n\n\n DO U WISH TO HAVE ANOTHER TRANSCATION?(y/n): \n");
  65. 		fflush(stdin);
  66. 		scanf("%c", &transaction);
  67. 		if (transaction == 'n'|| transaction == 'N')
  68.                     k = 1;
  69. 	} while (!k);
  70. 	printf("\n\n THANKS FOR USING OUT ATM SERVICE");
  71. }


Output:
$ cc pgm33.c
$ a.out
ENTER YOUR SECRET PIN NUMBER:1520
********Welcome to ATM Service**************
1. Check Balance
2. Withdraw Cash
3. Deposit Cash
4. Quit
******************?**************************?*
 
Enter your choice: 1
 
YOUR BALANCE IN Rs : 1000
 
 
DO U WISH TO HAVE ANOTHER TRANSCATION?(y/n):
********Welcome to ATM Service**************
1. Check Balance
2. Withdraw Cash
3. Deposit Cash
4. Quit
******************?**************************?*
 
Enter your choice: 2
 
ENTER THE AMOUNT TO WITHDRAW: 200
 
 
PLEASE COLLECT CASH
YOUR CURRENT BALANCE IS800
 
DO U WISH TO HAVE ANOTHER TRANSCATION?(y/n):
********Welcome to ATM Service**************
1. Check Balance
2. Withdraw Cash
3. Deposit Cash
4. Quit
******************?**************************?*
 
Enter your choice: 3
 
ENTER THE AMOUNT TO DEPOSIT5000
YOUR BALANCE IS 5800
 
 
DO U WISH TO HAVE ANOTHER TRANSCATION?(y/n):
********Welcome to ATM Service**************
1. Check Balance
2. Withdraw Cash
3. Deposit Cash
4. Quit
******************?**************************?*
 
Enter your choice: 1
 
YOUR BALANCE IN Rs : 5800
 
 
DO U WISH TO HAVE ANOTHER TRANSCATION?(y/n):
********Welcome to ATM Service**************
1. Check Balance
2. Withdraw Cash
3. Deposit Cash
4. Quit
******************?**************************?*
 
Enter your choice: 4
 
THANK U USING ATM
 
 
DO U WISH TO HAVE ANOTHER TRANSCATION?(y/n):
********Welcome to ATM Service**************
1. Check Balance
2. Withdraw Cash
3. Deposit Cash
4. Quit
******************?**************************?*
 
Enter your choice: 4
 
THANK U USING ATM
 
 
DO U WISH TO HAVE ANOTHER TRANSCATION?(y/n):
********Welcome to ATM Service**************
1. Check Balance
2. Withdraw Cash
3. Deposit Cash
4. Quit
******************?**************************?*
 
Enter your choice: n
 
THANK U USING ATM
 
 
DO U WISH TO HAVE ANOTHER TRANSCATION?(y/n):
 
THANKS FOR USING OUT ATM SERVICE.

Sanfoundry Global Education & Learning Series – 1000 C Programs.

Here’s the list of Best Reference Books in C Programming, Data-Structures and Algorithms

If you wish to look at other example programs on Simple C Programs, go to Simple C Programs. If you wish to look at programming examples on all topics, go to C Programming Examples.

If you liked this C Program, kindly share, recommend or like below!

About

Manish Bhojasia, a technology veteran with 17+ years @ Cisco & Wipro, is Founder and CTO at Sanfoundry. He is Linux Kernel Developer and SAN Architect and is passionate about competency developments in these areas. He lives in Bangalore and delivers focused training sessions to IT professionals in Linux Kernel, Linux Debugging, Linux Device Drivers, Linux Networking, Linux Storage & Cluster Administration, Advanced C Programming, SAN Storage Technologies, SCSI Internals and Storage Protocols such as iSCSI & Fiber Channel. Stay connected with him below.


Sanfoundry Training Center of Excellence (CoE)

Manish Bhojasia, a technology veteran with 17+ years @ Cisco & Wipro, is Founder and CTO at Sanfoundry. He is Linux Kernel Developer and SAN Architect and is passionate about competency developments in these areas. He lives in Bangalore and delivers focused training sessions to IT professionals in Linux Kernel, Linux Debugging, Linux Device Drivers, Linux Networking, Linux Storage & Cluster Administration, Advanced C Programming, SAN Storage Technologies, SCSI Internals and Storage Protocols such as iSCSI & Fiber Channel. Stay connected with him below.







Subscribe Newsletter & Posts
Sanfoundry Internships
Follow Manish & Sanfoundry