Tenemos que desarrollar un programa para gestionar los clientes de una empresa. La empresa tendrá un máximo de 40 clientes.
El tipo cliente será una estructura con los siguientes campos:
- Nombre de la empresa: cadena de 30 caracteres
- NIF: cadena de 10 caracteres
- Dirección: cadena de 100 caracteres
- Teléfono: Cadena de 15 caracteres
- Ocupado: 1 ó 0, sí o no.
Al arrancar, el programa llamará a una función, ini, que inicializará el vector de clientes: pondrá cadenas vacías en los campos cadena, y cero en el campo de ocupación.
A continuación, presentará un menú con las siguientes opciones: Altas, Bajas
Altas: Se usarán, al menos, dos funciones:
- pedirDatos: pedirá al usuario los datos del nuevo cliente.
Parámetros: Ninguno.
Valor de devolución: un cliente, con los datos introducidos por el usuario.
- hacerAlta: añadirá el nuevo cliente en la primera posición libre del vector, y marcará el campo correspondiente como coupado.
Parámetros: cliente nuevo, vector de clientes.
Valor de devolución: Número de orden del cliente en el vector de clientes de la empresa (empezando por el 0). Si no hay ninguna posición de cliente libre, devolverá -1.
Bajas: Se preguntará al usuario si desea identificar al cliente por número o por nombre. Si es por nombre, se obtendrá el número de índice mediante la función:
- buscarPorNombre: buscará el cliente con el nombre de empresa solicitado; si lo encuentra (en alta), devolverá el número del cliente (índice del vector). Si no se encuentra el cliente buscado (o está en baja), devolverá -1.
Parámetros: nombre de empresa a buscar, y vector de clientes.
Valor de devolución: Posición del cliente en el vector (-1 si no se encuentra).
Si es por número, se confirmará que el cliente está en alta mediante la función:
- comprobarNumCliente: comprobará que un cierto número de cliente está en alta.
Parámetros: Número de cliente, y vector.
Valor de devolución: 0 si está en alta, -1 si no.
Una vez que tengamos el número válido de cliente, se presentarán los datos de la empresa mediante la función:
- presentarCliente: presentará por pantalla los datos de un cliente.
Parámetros: Número de cliente, y vector.
Valor de devolución: Ninguno.
A continuación, se pedirá confirmación de borrado; si se recibe, se pondrá el campo ocupado (sí o no) como NO ocupado.





Mode Lineal
