// PROTOTIPOS
struct usuario{ char nombre [40];
int edad;
char telefono [10];
char direccion [25];
};
void menu();
void depositar(int cantidad);
void retirar(int cantidad);
struct usuario leer_datos (void);
void mostrar_datos (struct usuario A);
// VARIABLE GLOBAL
int saldo_actual = 100;
int cantidad;
#include <stdio.h>
#include <stdlib.h>
int main()
{ struct usuario w;
w = leer_datos ();
mostrar_datos(w);
menu();
system ("pause");}
void menu()
{ // VARIABLE PARA ALMACENAR LA OPCION
int opc;
do{
printf("1. Consultar saldo"); printf("\n2. Depositar"); printf("\n3. Retirar"); printf("\n**** REGISTRAR NUEVO CLIENTE ****"); printf("\n4. Registrarse"); printf("\n5. Datos del nuevo cliente"); printf("\n6. Salir");
// ALMACENAMOS SU OPCION
printf("\nDigite su opcion: "); scanf("%i" , &opc);
// CREAMOS UN SWITCH PARA REDIRECCIONAR A LAS FUNCIONES
switch(opc)
{ printf("\n*** Ha seleccionado la opcion Consultar saldo... ***\n"); case 1: printf("\nTu saldo actual es de %i " , saldo_actual); break;
case 2:
printf("\n*** Ha seleccionado la opcion Depositar... ***\n"); printf("\nCuanto dinero desea depositar: "); scanf("%i" , &cantidad); depositar(cantidad); // LE ENVIAMOS EL PARAMETRO A LA FUNCION
break;
case 3:
printf("\n*** Ha seleccionado la opcion retirar... ***\n"); printf("\nCuanto dinero desea retirar: "); scanf("%i" , &cantidad); retirar(cantidad); // LE ENVIAMOS EL PARAMETRO A LA FUNCION
break;
case 4:
printf("\n*** Ha seleccionado la opcion Registrarse... Bienvenido ***\n"); leer_datos ();
break;
case 5:
printf("\n*** Ha seleccionado la opcion Datos del nuevo cliente... ***\n"); void mostrar_datos (struct usuario A);
case 6:
printf("\n*** Ha seleccionado la opcion salir... gracias por su visita gracias por su visita***\n"); break; // CERRAMOS EL PROGRAMA
default:
printf("\nOpcion no valida");
}
}while (opc!=6);
}
// CREAR LAS FUNCIONES DEPOSITAR
void depositar(int cantidad)
{
saldo_actual += cantidad; // ACTUALIZAMOS EL SALDO ACTUAL
printf("\nHas depositado exitosamente %i USD, tu saldo actual es de %i USD\n" , cantidad , saldo_actual );
}
// FUNCION PARA RETIRAR
void retirar(int cantidad)
{ // CONDICIONAL DE CHECKEO
if (cantidad <= saldo_actual) // SI SE CUMPLE, ENTRAMOS AL CONDICIONAL
{
saldo_actual -= cantidad;
printf("\nHas retirado exitosamente %i USD, tu saldo actual es de %i USD\n" , cantidad , saldo_actual );
}
else
{ printf("\nNo tienes suficiente dinero, tu saldo actual es de %i\n", saldo_actual); }
}
struct usuario leer_datos (void){struct usuario cliente;
printf ("\n A continuacion comenzaremos su registro... \n"); puts("Ingrese nombre: "); //Operador punto gets(cliente.nombre);
puts("Ingrese su edad: "); fflush(stdin);
scanf("%d",&cliente.edad); fflush(stdin);
puts("\nIngrese su direccion: "); gets(cliente.direccion);
puts("\nIngrese su numero telefonico: "); gets(cliente.telefono);
printf ("\n REGISTRO EXITOSO \n ahora puede revisar sus datos en la opcion 5 del menu, Bienvenido..."); return(cliente);
}
void mostrar_valor(struct usuario A){ //Paso por valor printf("\n***** Datos de el nuevo usuario ******\n"); printf("\n nombre: %s \n", A.nombre); printf("\edad: %d\n", A.edad); printf("\nDireccion: %s\n", A.direccion); printf("\ntelefono: %s\n", A.telefono);}