skandelabro Admin
Cantidad de envíos : 213 Edad : 35 Localización : En tu Mente Oro : 2 Medallas : Fecha de inscripción : 04/09/2008
| Tema: Colas lenguaje C "Ingresar usuario segun el sexo" Miér 10 Dic 2008, 23:25 | |
| Saludos: Lo que hace este programa es que primeramente, uno debe ingresar el numero de personas que quiere almacenar, luego pregunta si quiere ingresar un hombre o una mujer, si optamos por hombre guardara el nombre en una cola definida para hombres, y si optamos por mujer guardara el nombre en una cola de mujeres... podemos imprimir los usuarios hombres y los usuarios mujeres...y tambien podemos eliminar usuarios al momentod e eliminar el programa despliega el nombre de la persona eliminada... Acá el codigo: - Código:
-
#include<stdio.h> #include<conio.h> #include<stdlib.h> #include <string.h> void ingresar(); void insertar_colas(); void insertar_colas2(); void imprimir_colas(); void imprimir_colas2(); void eliminar_colas(); void eliminar();
typedef struct nodoc { char nombre[15];//donde se guarda el telefono struct nodoc *sgte;//puntero siguiente }nodoc; typedef struct nodom { char nombrem[15];//donde se guarda el telefono struct nodom *sgte;//puntero siguiente }nodom;
nodoc *act_1,*fin1=NULL,*inicio_1=NULL; nodom *act_2,*fin2=NULL,*inicio2=NULL;
char ident[15],sexo; main() { int opcion; do { system("color "); system("CLS"); printf("\n\t\t\t\t***MENU***\n"); printf("\n\n Trabajo de Listas Enlazadas con Colas\n"); printf("\n * Julio Cortes Fredes Todos los derechos reservados *\n\n"); printf(" ---Trabajar con COLAS---\n"); printf("\n 1.- Ingrezar"); printf("\n 2.- Borrar nombres segun el sexo:"); printf("\n 3.- Mostrar Lista de Hombres:"); printf("\n 4.- Mostrar Lista de Mujeres:"); printf("\n 5.- SALIR"); printf("\n\n * Para Salir Presione 4: "); printf("\n\n Ingrese una opcion: "); fflush(stdin); scanf("%d",&opcion); printf("\n"); if(opcion>5) { printf("\n Opcion NO VALIDA concentrese porfavor"); printf("\n\n ** PRESIONE CUALQUIER TECLA PARA VOLVER AL MENU **"); getch(); } switch(opcion) { case 1: ingresar(); break; case 2: eliminar(); break; case 3: imprimir_colas(); break; case 4: imprimir_colas2(); break; case 5: exit(0); } } while(opcion!=0); getch(); } void ingresar() { fflush(stdin); printf("\nIngrese F si es mujer, ingrese M si es hombre:"); scanf("%c",&sexo); if(sexo=='m'|| sexo=='M') { insertar_colas(); } else if(sexo=='f' || sexo=='F') { insertar_colas2(); } } /*for(i=0;i<n;i++) { printf("\nIngrese F si es mujer, ingrese M si es hombre:"); scanf("%c",&sexo); if(sexo=='m'|| sexo=='M') { insertar_colas(); } else if(sexo=='f' || sexo=='F') { insertar_colas2(); } }*/ void insertar_colas() { printf("\n\n Ingrese nombre de hombre: "); scanf("%s",ident); act_1=(nodoc*)malloc(sizeof(nodoc)); strcpy(act_1->nombre,ident); act_1->sgte=NULL; if(fin1==NULL) fin1=inicio_1=act_1; else { fin1->sgte=act_1; fin1=act_1; } } void insertar_colas2() { printf("\n\n Ingrese nombre dela mujer: "); scanf("%s",&ident); act_2=(nodom*)malloc(sizeof(nodom)); strcpy(act_2->nombrem,ident); act_2->sgte=NULL; if(fin2==NULL) fin2=inicio2=act_2; else { fin2->sgte=act_2; fin2=act_2; } }
void eliminar_colas() { if(inicio_1!=NULL) { act_1=inicio_1; inicio_1=inicio_1->sgte; if(inicio_1==NULL) fin1=NULL; free(act_1); } if(inicio_1==NULL) { fin1=inicio_1; printf("la lista esta vacia"); getch(); } } void eliminar_colasm() { if(inicio2!=NULL) { act_2=inicio2; inicio2=inicio2->sgte; if(inicio2==NULL) fin2=NULL; free(act_2); } if(inicio2==NULL) { fin2=inicio2; printf("la lista esta vacia"); getch(); }
} void imprimir_colas() { act_1=inicio_1; while(act_1!=NULL) { printf(" Usuario: %s \n",act_1->nombre); act_1=act_1->sgte; } printf("\n\n ** PRESIONE CUALQUIER TECLA PARA VOLVER AL MENU **"); getch(); }
void imprimir_colas2() { act_2=inicio2; while(act_2!=NULL) { printf(" Usuario: %s \n",act_2->nombrem); act_2=act_2->sgte; } printf("\n\n ** PRESIONE CUALQUIER TECLA PARA VOLVER AL MENU **"); getch(); } void eliminar() { printf("\nIngrese F si es mujer, ingrese M si es hombre:"); fflush(stdin); scanf("%c",&sexo); if(sexo=='m'|| sexo=='M') { printf(" Se ha eliminado a %s",inicio_1->nombre); getch(); eliminar_colas(); } else if(sexo=='f' || sexo=='F') { printf(" Se ha eliminado a %s",inicio2->nombrem); getch(); eliminar_colasm(); } }
Si tienen alguna duda o pregunta pueden hacerla Adios | |
|