Documentos de Académico
Documentos de Profesional
Documentos de Cultura
PRÁCTICA LABORATORIO:
APUNTADORES, ESTRUCTURAS Y UNIONES
ASIGNATURA:
Sistemas Operativos
DOCENTE:
Edwin Carrasco Poblete
ALUMNO:
Cusco-Perú
2020
}
// si no encuentra el autor retornamos false
return false;
}
2. El programa de gestión de catálogo de libros no permite que los nombres de autor o los
títulos puedan tener nombres con espacios. Modifique el programa para que esto sea
posible.
void leerDatos(struct tLibro *l)
setbuf(stdin,NULL);
setbuf(stdin,NULL);
scanf("%[^\n]", l->autor);
3. Modifique el programa de gestión de catálogo de libros para que se permita agregar una
cantidad ilimitada de libros (utilice listas dinámicas).
//Nombre : libreria
//FCreacion : 01/12/11
//FModif. : ...
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <stdbool.h>
char titulo[21];
char autor[21];
} LISTA;
while(l != NULL)
printf("\n");
p1 = *l;
if(p1 == NULL)
p1 = malloc(sizeof(LISTA));
if (p1 != NULL)
setbuf(stdin,NULL);
scanf("%[^\n]", p1->titulo);
setbuf(stdin,NULL);
scanf("%[^\n]", p1->autor);
p1->enlace = NULL;
*l = p1;
else
while(p1->enlace != NULL)
p1 = p1->enlace;
p2 = malloc(sizeof(LISTA));
if(p2 != NULL)
setbuf(stdin,NULL);
scanf("%[^\n]", p2->titulo);
setbuf(stdin,NULL);
scanf("%[^\n]", p2->autor);
p2->enlace = NULL;
p1->enlace = p2;
char datos[21];
setbuf(stdin,NULL);
scanf("%[^\n]", datos);
puts(datos);
while(l != NULL)
//si existe el titulo retornamos true y mostramos en libro con autor y titulo
printf("El titulo: %s | El Autor: %s\n", l->titulo,l->autor);
return true;
return false;
char datos[21];
setbuf(stdin,NULL);
scanf("%[^\n]", datos);
puts(datos);
while(l != NULL)
//si existe el autor retornamos true y mostramos en libro con autor y titulo
return true;
return false;
void mostrarMenu()
puts("* *");
puts("* *");
puts("*****************");
int main(void)
//Variables
int opcion=0;
do
mostrarMenu();
//Leer datos
scanf("%d",&opcion);
switch (opcion)
case 1:
//Agregar titulos
insertar(&Catalogo);
break;
case 2:
//Mostrar catalogo
mostrarDatos(Catalogo);
break;
case 3:
if(buscarTitulo(Catalogo))
else
break;
case 4:
else
break;
case 5:
break;
default:
break;