[C con Clase] listas simples
Elois@
guevara.elois en gmail.com
Mar Mar 26 04:45:11 CET 2013
Una disculpa, en el while debe decir while(opc!=7);
El 25 de marzo de 2013 21:43, Elois@ <guevara.elois en gmail.com> escribió:
> Por lo que entiendo, quieres mostrar el menú de opciones, elegir una,
> realizar esa acción y seguir mostrando el menú una y otra vez hasta que el
> usuario decida salir.
> No sé si sea la mejor opción pero puedes crear una función que mande a
> llamar al menú
> int menu(){
> int opcion;
> printf("\n\n*** Teclee una opcion: \n\n\n");
> printf("\n1) Insertar un elemento en la lista");
> printf("\n2) Borrar elemento de la lista");
> printf("\n3) Eliminar el contenido de la lista");
> printf("\n4) Modificar un numero en la lista");
> printf("\n5) Mostrar el contenido de la lista");
> printf("\n6) Consulta de un numero en la lista");
> printf("\n7) Salir del programa\n\n--->");
> scanf("%d",&opcion);
> return opcion;
> }
> Y luego en el main la mandas a llamar así:
>
> int main (void)
> {
> int opc;
> do{
> opc=menu();
> }while(opc=!7);
>
>
> switch(opcion)
> {
> case 1:system("cls");
> inicio=inserta_elemento(inicio,n);//insertar elemento
> break;
> .
> .
> .
> y el resto de tu código, te sugiero solicitar n al usuario antes de
> llamar al método determinado
>
> El 22 de marzo de 2013 09:39, felician draghici <felix1900toamna en yahoo.es>escribió:
>
>> Hola estoy aprendiendo a programar en c/c++ y no se como volver a main en
>> este ejercicio que he hecho con el return de la funcion de insertar
>> numero.No se como utilizarlo y que debe retornar , si alguien me puede
>> echar una mano.saludos
>>
>>
>> /*Ejercicio listas simples
>> -Insertar numeros en la lista
>> -Mostrar numeros de la lista
>> -Borrar
>> -Modificar
>> -Consultar */
>>
>> #include <stdio.h>
>> #include <conio.h>
>> #include <stdlib.h>
>>
>> struct Nodo{
>> int numero;
>> Nodo *sig;
>> };
>>
>> struct Nodo * inserta_elemento(struct Nodo *,int n);
>> struct Nodo * borra_elemento(struct Nodo *,int);
>> struct Nodo * eliminar_lista(struct Nodo *,int);
>> struct Nodo * modifica_elemento(struct Nodo *,int);
>> void consulta(struct Nodo *);
>> void listar_lista(struct Nodo *);
>>
>> int main (void)
>> {
>> int opcion,n;
>> Nodo *aux,*inicio,*actual;
>>
>> printf("\n\n*** Teclee una opcion: \n\n\n");
>> printf("\n1) Insertar un elemento en la lista");
>> printf("\n2) Borrar elemento de la lista");
>> printf("\n3) Eliminar el contenido de la lista");
>> printf("\n4) Modificar un numero en la lista");
>> printf("\n5) Mostrar el contenido de la lista");
>> printf("\n6) Consulta de un numero en la lista");
>> printf("\n7) Salir del programa\n\n--->");
>> scanf("%d",&opcion);
>> fflush(stdin);
>>
>>
>> switch(opcion)
>> {
>> case 1:system("cls");
>> inicio=inserta_elemento(inicio,n);//insertar elemento
>> break;
>> case 2:inicio=borra_elemento(inicio,n);//borrar elemento
>> break;
>> case 3:inicio=eliminar_lista(inicio,n);//eliminar contenido lista
>> break;
>> case 4:inicio=modifica_elemento(inicio,n);//modificar numero en
>> lista
>> break;
>> case 5:listar_lista(inicio);//listar lista
>> break;
>> case 6:consulta(inicio);//consultar elemento
>> break;
>> case 7:break;
>> }
>>
>> getch();
>> }
>> struct Nodo* inserta_elemento(struct Nodo *inicio,int n)
>> {
>> struct Nodo *aux,*actual;
>> do
>> {
>> printf("\nTeclea un numero: ");
>> scanf("%d",&n);
>> fflush(stdin);
>> inicio=NULL;
>> aux=new struct Nodo;
>> aux->numero=n;
>> aux->sig=NULL;
>>
>> printf("%d",aux->numero);
>> if(inicio==NULL)
>> {
>> inicio=aux;
>> }
>> else
>> {
>> if(inicio->numero < n) // si el numero leido es < que el primero
>> {
>> aux->sig=inicio;
>> inicio=aux;
>> }
>> else
>> {
>> actual=inicio;
>> while(actual->sig!=NULL && actual->sig->numero < n)
>> {
>> actual=actual->sig;
>> }
>> aux->sig=actual->sig;
>> actual->sig=aux;
>> }
>> }
>>
>> }while(n != 0);
>>
>> return inicio;
>> }
>>
>>
>> struct Nodo * borra_elemento(struct Nodo *,int)
>> {
>> struct Nodo *inicio,*aux,*actual;
>> }
>> struct Nodo * eliminar_lista(struct Nodo *,int)
>> {
>> struct Nodo *inicio,*aux,*actual;
>> }
>> struct Nodo * modifica_elemento(struct Nodo *,int)
>> {
>> struct Nodo *inicio,*aux,*actual;
>> }
>> void consulta(struct Nodo *)
>> {
>> }
>> void listar_lista(struct Nodo *)
>> {
>> }
>>
>> _______________________________________________
>> Lista de correo Cconclase Cconclase en listas.conclase.net
>> http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net
>> Bajas: http://listas.conclase.net/index.php?gid=2&mnu=FAQ
>>
>
>
>
> --
> *Elois@ Guevara*
>
>
>
--
*Elois@ Guevara*
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.conclase.net/pipermail/cconclase_listas.conclase.net/attachments/20130325/eaec785e/attachment-0001.html>
Más información sobre la lista de distribución Cconclase