PDF de programación - Práctica 3. Lista enlazada en C

Imágen de pdf Práctica 3. Lista enlazada en C

Práctica 3. Lista enlazada en Cgráfica de visualizaciones

Publicado el 14 de Enero del 2017
1.068 visualizaciones desde el 14 de Enero del 2017
185,4 KB
2 paginas
Creado hace 13a (17/03/2011)
Universidad de Cantabria. Ingeniería Informática
Prácticas de Programación II. Curso 2010-2011

Práctica 3. Lista enlazada en C



Práctica 3. Lista enlazada en C



Objetivos

Practicar la modularidad en C, el uso de punteros y la reserva dinámica de memoria.

Lista simplemente enlazada

Escribir en lenguaje C un módulo (fichero de cabecera .h y fichero .c con las funciones básicas
del módulo) que permita gestionar una lista simplemente enlazada de estructuras que almacenan
datos de una competición de turismos.

La estructura almacenará los siguientes campos:
• Nombre del piloto.
• Modelo del vehículo.
• Puntos obtenidos.
• Puntero al siguiente elemento de la lista.

El módulo deberá definir las siguientes operaciones sobre los elementos de la lista:
• Inicializar.: Inicializa la lista, teniendo en cuenta que la lista comienza sin ningún elemento.
• Añadir por la cabeza: Añade un nuevo elemento al principio de la lista.
• Añadir por la cola: Añade un nuevo elemento al final de la lista.
• Buscar ganador: Recorre la lista buscando el piloto con más puntos y devuelve un puntero al
elemento.
• Eliminar elemento de la cabeza: Elimina el primer elemento de la lista.
• Mostrar datos: Dado un puntero a un elemento, muestra los datos del piloto.

Además, se habrá de escribir un programa de prueba para el módulo. Desde dicho programa se
crearán varias listas y se probará el comportamiento de las operaciones desarrolladas en
diferentes situaciones (lista vacía, eliminar el primer o último elemento, etc.).



piloto
vehiculo
puntos
siguiente

piloto
vehiculo
puntos
siguiente

lista

piloto
vehiculo
puntos
siguiente





Universidad de Cantabria. Ingeniería Informática
Prácticas de Programación II. Curso 2010-2011

Práctica 3. Lista enlazada en C



Parte Complementaria

Como parte complementaria se pide implementar y probar las siguientes operaciones:
• Buscar piloto: Dado el nombre de un piloto, lo busca en la lista y en caso de existir devuelve
un puntero al elemento.
• Añadir ordenado por puntos: Dado un nuevo elemento, recorre la lista y lo añade según su
puntuación, considerando que la lista está ordenada de mayor a menor puntuación.
• Ordenar por puntos: Dada una lista, ordena sus elementos de forma descendente de mayor a
menor puntuación.
• Eliminar elemento: Dado un puntero a un elemento de la lista, lo elimina y modifica los
punteros necesarios para seguir manteniendo la lista con el resto de elementos.
• Tongo: Recorre la lista buscando al piloto con más puntos. Una vez lo encuentra modifica su
puntuación y le asigna justamente un punto menos que la puntuación del piloto que está en
segunda posición, de forma que ahora este piloto sería el ganador.

Entrega

La entrega se realizará mediante una tarea de moodle creada a tal efecto. Se han de entregar los
ficheros fuente desarrollados, comprimidos en un fichero zip cuyo nombre esté formado por el
número de práctica y nombre del alumno. Ejemplo: p3JuanLopez.zip.
El plazo de entrega finaliza a las 23:55 del Miércoles anterior a la siguiente sesión de prácticas.
  • Links de descarga
http://lwp-l.com/pdf1006

Comentarios de: Práctica 3. Lista enlazada en C (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad