miércoles, 8 de junio de 2011

Cartel Giratorio

Cada Intro que pulses, el mensaje cambiara:


/*Escribe el codigo de un programa para mostrar por pantalla 4 mensaje
publicitario mediante una lista enlazada simple circular
(conecta el ultimo con el primero)*/
#include<stdio.h>
#include<stdlib.h>
struct registro{
    char mensaje[150];
    struct registro *sig;
};
typedef struct registro nodo;
int mostrar_menu(){
    int opcion;
    printf("\n********** MENU **********");
    printf("\n0.Salir del Programa.");
    printf("\n1.Crear lista enlazada.");
    printf("\n2.Reproducir lista enlazada.");
    printf("\nElige una opcion: ");
    scanf("%d",&opcion);
    return(opcion);
}
void crear_lista(nodo *inicio){
    nodo *registro;
    registro=inicio;
    int cont=1;
    char seguir='s';
  
    printf("\nIntroduce los mensajes: ");
    do{
        printf("\n Mnesaje %d: ",cont++);
        scanf(" %[^\n]",registro->mensaje);
        printf("\nDeseas introducir otro mensaje(s/n)?: ");
        scanf(" %c",&seguir);
        if(seguir=='s'){
          registro->sig=(nodo *) malloc(1*sizeof(nodo));
          registro=registro->sig;
        }
        else{
          printf("\nFin de los Mensajes.");
          registro->sig=inicio;
        }
    }while(seguir=='s');
    return;
}
void mostrar_lista(nodo *inicio){
    nodo *registro;
    registro=inicio;
    char seguir='s';
    do{
       printf("\n**********");
       printf("%s",registro->mensaje);
       registro=registro->sig;
       getchar();
       system("cls");
    }while(registro->sig!=0);
  
    return;
}
main(){
    int opcion;
    nodo *inicio;
    char seguir='s';
    inicio=(nodo *) malloc(1*sizeof(nodo));
  
    do{
       opcion=mostrar_menu();
       switch(opcion){
            case 0:
                printf("\nFin del Programa.");
                break;
            case 1:
                crear_lista(inicio);
                break;
            case 2:
                mostrar_lista(inicio);
                break;
            default:
                printf("\nError.");
        }
    }while(seguir=='s');  


       getchar();
       getchar();
}

No hay comentarios:

Publicar un comentario