Bank Accounts Manager
unknown
c_cpp
2 years ago
6.9 kB
5
Indexable
#include <stdio.h> #include <string.h> #include <stdlib.h> struct customer { char acc_number[30]; char password[30]; float balance; }; void main() { int amount; struct customer clt,clt_2; FILE *file , *file_2; char file_name[30],number[30],password[30]; int choice, choice_2; printf("\nBIENVENUE A HMS BANK\n"); printf("\n1. Creer un compte"); printf("\n2. Se connecter"); printf("\n\nTaper 1 ou 2: "); scanf("%d" , &choice); switch(choice) { case 1: printf("Taper le numero de votre compte: "); scanf("%s" , clt.acc_number); printf("Taper le mot de passe: "); scanf("%s" , clt.password); clt.balance = 0; strcpy(file_name, clt.acc_number); file = fopen(strcat(file_name,".txt"), "w"); fwrite(&clt, sizeof(clt), 1, file); if(fwrite != 0) { printf("\n\n Votre compte a ete cree"); } else { printf("Probleme inattendu, reessayez plus tard"); } case 2: printf("Taper le numero de votre compte : "); scanf("%s" , number); printf("\nTaper le mot de passe : "); scanf("%s" , password); strcpy(file_name,number); file = fopen(strcat(file_name,".txt"), "r"); if(file == NULL) { printf("\nIl n'y a pas de compte sous ce nombre"); } else { fread(&clt,sizeof(struct customer),1,file); fclose(file); if(!strcmp(password,clt.password)) { printf("\n1.Solde"); printf("\n2.Retrait"); printf("\n3.Depot"); printf("\n4.Virement"); printf("\n5.Changement de mot de passe"); printf("\n Taper votre choix: "); scanf("%d" , &choice_2); switch(choice_2) { case 1: printf("\nVotre solde est %.2f MAD", clt.balance); break; case 2: printf("\nEntrer la somme desiree: "); scanf("%d" , &amount); if(amount > clt.balance) { printf("\nSolde insuffisant"); } else { clt.balance -= amount; file = fopen(file_name , "w"); fwrite(&clt,sizeof(struct customer),1,file); if(fwrite != 0) { printf("Vous avez retire %d MAD" , amount); } fclose(file); } break; case 3: printf("\nEntrer la somme desiree: "); scanf("%d" , &amount); clt.balance += amount; file = fopen(file_name , "w"); fwrite(&clt,sizeof(struct customer),1,file); if(fwrite != 0) printf("Vous avez depose %d MAD" , amount); fclose(file); break; case 4: printf("\nTaper le numero de compte du benificiaire: "); scanf("%s" , number); printf("\nEntrer la somme desiree: "); scanf("%d" , &amount); if(amount > clt.balance) { printf ("\nSolde insufisant"); } else { file_2 = fopen(strcat(number,".txt"),"r+"); if(file_2==NULL) { printf("Il n'y a pas de compte sous ce nombre"); } else { fread(&clt_2,sizeof(struct customer),1,file_2); fclose(file_2); clt_2.balance += amount; file_2 = fopen(number,"w"); fwrite(&clt_2,sizeof(struct customer),1,file_2); if(fwrite != 0) { printf("Vous avez transfere %d MAD vers %s ",amount, clt_2.acc_number); fclose(file_2); clt.balance -= amount; strcpy(file_name,clt.acc_number); file = fopen(strcat(file_name,".txt"), "w"); fwrite(&clt,sizeof(struct customer),1,file); fclose(file); } } } break; case 5: printf("\nTaper votre ancien mot de passe: "); scanf("%s",password); if(!strcmp(password,clt.password)) { printf("\n\nTaper votre nouveau mot de passe: "); scanf("%s",password); strcpy(clt.password,password); strcpy(file_name,clt.acc_number); file = fopen(strcat(file_name,".txt"),"w"); fwrite(&clt,sizeof(struct customer),1,file); fclose(file); printf("\nLe mot de passe est bien modifie"); } else { printf("Mot de passe incorrect"); } default: break; } } else { printf("\nMot de passe incorrect"); } } } }
Editor is loading...