Cerrar ya logre arreglarlo
Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.
Mostrar Mensajes Menú#include<stdio.h>
#include<stdlib.h>
#include<string.h>
//Se tiene una lista simplemente enalzada que representa los canales de televisio de un cable operador. Se maneja el nombre de cada
//canal, el tipo de canal, el n° asignado y la cantidad de horas en comerciales que permite. Se solicita:
//A) Declare los struct a ser utilizados
//B) Determine el promedio de comerciales que emiten los canales de television
//C) Agregar un nuevo Canal
//D) Eliminar el o los canales que emiten mayor cantidad de horas en comerciales, debe mostrar por pantalla el detalle de los canales eliminados
struct nodoCanales
{
struct DatosCanal *canal;
struct nodoCanales *sig;
};
struct DatosCanal
{
char nombre;
char tipo
int numero;
int horac;
};
struct nodoCanales *crear();
void enlazarCanal(struct nodoCanales **, struct nodoCanales *);
void mostrarCanal(struct nodoCanales *);
int main()
{
int i=0;
struct nodoCanales *lista = NULL;
struct nodoCanales *aux = NULL;
for(i=0;i<1;i++)
{
enlazarCanal(&lista,crear());
}
aux=lista;
while(aux)
{
mostrarCanal(aux);
aux=aux->sig;
}
return 0;
}
struct nodoCanales *crear()
{
char buffer[50];
int size=0;
struct nodoCanales *nuevo;
nuevo=(struct nodoCanales *)malloc(sizeof(struct nodoCanales));
printf("Ingrese el nombre del canal: \n");
scanf(" %[^\n]",buffer);
size=strlen(buffer);
nuevo->canal->nombre=(char*)malloc(size*sizeof(char));
strcpy(nuevo->canal->nombre,buffer);
printf("Ingrese el tipo de canal: \n");
scanf(" %[^\n]",buffer);
size=strlen(buffer);
nuevo->canal->tipo=(char*)malloc(size*sizeof(char));
strcpy(nuevo->canal->tipo,buffer);
printf("Ingrese el numero del canal: \n");
scanf("%d",&nuevo->canal->numero);
printf("Ingrese la cantidad de horas en comerciales del canal: \n");
scanf("%d",&nuevo->canal->horac);
nuevo->sig=NULL;
return nuevo;
}
void enlazarCanal(struct nodoCanales **head, struct nodoCanales *nuevo)
{
struct nodoCanales *rec = *head;
if(!(*head))
{
*head = nuevo;
}
else
{
while(rec)
{
if(!(rec->sig))
{
rec->sig = nuevo;
rec = nuevo;
}
rec = rec->sig;
}
}
}
void mostrarCanal(struct nodoCanales *nodo)
{
printf("%c \n",nodo->canal->nombre);
printf("%c \n",nodo->canal->tipo);
printf("%d \n",nodo->canal->numero);
printf("%d \n",nodo->canal->horac);
}