Red de conocimiento informático - Consumibles informáticos - Sistema de gestión de cuentas bancarias lenguaje c

Sistema de gestión de cuentas bancarias lenguaje c

Si compila con VC, hay varias advertencias, simplemente puede eliminar la línea con barras dobles a continuación

Compile con VC++6.0

#include

#include

#include

#define BUFFERSIZE 1024

#define MAXACCOUNT 1000

typedef struct BankAccount

{

cuenta int;

clave int;

nombre de char[32];

saldo flotante;

}CUENTA BANCARIA;

CUENTA BANCARIA colección de cuentas[MAXACCOUNT];

int curAccount = 0 ;

void InsertAccount(FILE *fp)

{

BANKACCOUNT newaccount;

printf("ingrese la información de la cuenta \n ");

printf(">>número de cuenta:");

scanf("%d",&(newaccount.account));

printf(">>clave:");

scanf("%d",&(newaccount.key));

printf(">>nombre:") ;

scanf("%s",nuevacuenta.nombre);

printf(">>saldo:");

scanf("%f",& (newaccount.balance));

fseek(fp,0L,SEEK_END);

fprintf(fp,"%d %d %s %.2f\n", nueva cuenta. cuenta,nuevacuenta.clave,nuevacuenta.nombre,nuevacuenta.saldo);

}

void GetAccount(FILE *fp)

{

int accountnum;

int key;

nombre de char[32];

saldo flotante;

int i = 0;

//char buffer[BUFFERSIZE];

//int len;

curAccount = 0;

fseek(fp ,0 ,SEEK_SET);

while(!feof(fp)) /* Debido a que feof() se leerá dos veces al final, la cuenta curAccount final se incrementa en 1 */

{

fscanf(fp,"%d %d %s %f",&num.cuenta,&clave,nombre,&

balance);

accountCollection[curAccount].account = accountnum;

accountCollection[curAccount].key = clave;

strcpy(accountCollection[curAccount].name ,nombre);

accountCollection[curAccount].balance = saldo;

curAccount++;

}

}

void ListAccount(FILE *fp)

{

int i =0;

printf("Hay %d cuentas:\n" ,curAccount-1);/* curAccount menos el 1 adicional */

for(i = 0;i< curAccount-1;i++)

{

printf("CUENTA[%d]:\n",i+1);

printf(">>númcuenta:%d\n",accountCollection[i].cuenta);

printf(">>númcuenta:%s\n",coleccióncuenta[i].nombre);

printf(">>númcuenta:%.2f\n",coleccióncuenta[i ] .balance);

}

}

int SearchAccount(FILE *fp,int accountnum)

{

int i =0;

for(i = 0;i< curAccount-1;i++)

{

if(accountCollection[i] . cuenta == numcuenta)

{

printf("CUENTA[%d]:\n",i+1);

printf("> > número de cuenta:%d\n",colección de cuentas[i].cuenta);

printf(">>núm de cuenta:%s\n",colección de cuentas[i].nombre);

printf(">>númcuenta:%.2f\n",coleccióncuenta[i].saldo);

devuelve 1;

}

}

devuelve 0;

}

void DelAccount(FILE *fp,int accountnum)

{

int i;

if(CuentaBuscar(fp,acco

untnum)==0)

printf("No puedo encontrar la cuenta\n");

else

{

for(i = 0;i

{

if(accountCollection[i].account != accountnum)

fprintf( fp,"%d %d %s %.2f\n",accountCollection[i].account,accountCollection[i].key,accountCollection[i].name,accountCollection[i].balance);

}

printf("¡eliminar correctamente!\n");

}

}

int main()

{

ARCHIVO *fp;

int accountnum;

int i;

hacer{

// clrscr();

puts("********************************* ***** *************");

puts("* Puedes elegir: *");

puts(" * 1 : Insertar una nueva cuenta *");

puts("* 2 : Listar todas las cuentas *");

puts("* 3 : Encontrar una cuenta *") ;

puts("* 4: Eliminar una cuenta *");

puts("* 5: salir *");

puts("* ***** *************************************");

puts( "Por favor ingrese su elección:");

scanf("%d",&i);

//clrscr();

cambiar (i)

{

caso 1:

if(!(fp = fopen("account.txt","a+")))

{

printf("no se puede abrir el archivo account.txt\n");

exit(0);

}

InsertAccount( fp);

printf("presione cualquier tecla para continuar....\n");

//getch() ;

fclose(fp);

break;

caso 2:

if(!(fp = fopen("cuenta. txt ","r")))

{

printf("no se puede abrir el archivo account.txt\n");

exit( 0 );

}

GetAccount(fp);

ListAccount(fp);

fclose(fp);

printf("presione cualquier tecla para continuar....\n");

//getch();

break;

case 3:

printf("ingrese el número de cuenta:\n");

scanf("%d",&accountnum);

if (! (fp = fopen("account.txt","r")))

{

printf("no se puede abrir el archivo account.txt\n") ;

salir(0);

}

ObtenerCuenta(fp);

if(!SearchAccount(fp,accountnum))

printf("No existe la cuenta:%d\n",accountnum);

fclose(fp);

printf("presione cualquier tecla para continuar ....\n");

//getch();

break;

caso 4:

printf( "por favor ingrese el número de cuenta:\n");

scanf("%d",&accountnum);

if(!(fp = fopen("account. txt", "r")))

{

printf("puede'

t abra el archivo account.txt\n");

exit(0);

}

GetAccount(fp);

fclose(fp);

if(!(fp = fopen("account.txt","w+")))

{

printf( "no se puede abrir el archivo account.txt\n");

exit(0);

}

DelAccount(fp,accountnum);

fclose(fp);

printf("presione cualquier tecla para continuar....\n");

// getch();< / p>

descanso;

predeterminado:

descanso

}

}mientras (i != 5); /p>

// getch();

devuelve 0;

}