Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Industrial
Ejercicio OBLIGATORIO de
C
Base de Datos
Curso 2022-2023
Luis Diéguez González
UT4-02 ININ
BASE DE DATOS EN C
Objetivos:
Diseñar una base de datos Básica.
Utilizar y practicar las herramientas vistas de C
Procedimiento:
Se pretende realizar una Base da Datos Básica . La temática de dicha base da datos será propuesta por
cada alumo, siendo condición indispensable que cada uno haga una distinta de los demás. Las
especificaciones son las siguientes:
Menú principal:
Donde elemento podrá ser : persona, artículo, actividad, estudios, etc según sea la temática esccogida de la base
de datos.
Esta opción permitirá introducir los distintos atributos de cada elemento. Por ejemplo, si elemento fuese
una persona, los atributos serían: nombre, apellidos, dirección, DNI, teléfono, etc.
Esta opción permite buscar un registro de la base de datos (por ejemplo: un contacto) por medio de uno o
varios atributos como podrían ser el Apellido o el Teléfono en el caso de una agenda.
por ejemplo, Si se busca por el campo Teléfono; en el caso de una agenda, se pedirá dicho número y en
cuanto encuentre a la persona debe mostrar sus datos por la pantalla, y en caso de no encontrarlo, debe
mostrar un mensaje.
Si se buscase por el campo apellido, hay que tener en cuenta lo siguiente: solo basta con introducir
algunas letras del apellido para que muestre todos los contactos que hay con esas letras iniciales, incluso
si solo se pone una letra, debe buscar todos los apellidos que empiecen son esa letra. Cuando encuentre
los contactos, debe mostrar toda la información en la pantalla de esos contactos.
Esta opción permite listar en la pantalla todos los elementos (registros) que hay introducidos en la base
de datos.
Esta opción permite dar de baja a un elemento de la base de datos (por ejemplo. porque se ha
modificado algún atributo o cualquier otra cosa...). En la siguiente figura podemos ver que para borrar el
contacto nos pide la posición de la memoria. Cuando lo encuentra lo borrar y tiene que “reordenar” de
nuevos nuestros contactos, para que cuando veamos de nuevo la base de datos ya no aparezca.
//librerias necesarias
#include <stdio.h>
..............................
//Definiciónes de variables globales
#define tam 25
struct elemento
{
//Atributos de cada elemento
..............................
..............................
..............................
};
main()
{
//Definiciónes de variables locales
struct elemento nombre _elejido;
..............................
..............................
do
{
switch(opcion_elejida)
{
case opcion 1:
//Agrego elemento con o sin funciones
break;
case opcion 2:
//Busco elemento con o sin funciones
break;
..............................
..............................
..............................
default:
printf("opcion incorrecta\n");
}
//preguntar si queremos realizar mas opciones del menu
1.- Creo un menú con las distintas opciones que se repita mientras se cumpla la
condición del while.
(Hasta aquí ya vimos en teoría)
#include <stdio.h>
Main()
{
int op;
printf("Seleccione una de las siguientes opciones\n");
printf("(1) introducir datos\n");
printf("(2) ………..\n");
printf("…………………….\n");
printf("…………………….\n");
scanf("%d",&op);
switch(opcion_elejida)
{
case opcion 1:
//Agrego elemento con o sin funciones
break;
case opcion 2:
//Busco elemento con o sin funciones
break;
..............................
..............................
..............................
default:
printf("opcion incorrecta\n");
}
//preguntar si queremos realizar mas opciones del menu
2.-
ejemplo:
Añado a cada opción del switch case su funcionalidad simulado por medio de printf (),
Case 1:
Printf(“Opción primera del menú”);
Break;
Y así con el resto de case
3.- Añado las variables que necesite en el resto del programa. De todas, hay una que es
obligatorio añadir. Es una variable tipo estructura ( es lo que sería un DB en en programación
PLC). Esto se contemplará en una explicación aparte.
4.- Ahora solamente tendré que trabajar con un fichero para acceder a el en sus
diferentes modos ( veremos próximamente)