Menú

Mostrar Mensajes

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ú

Temas - attackers

#1
amigos tengo una agenda pero quiero una opcion de mostrar todos los contactos que sean del equipo caraquista

aqui le dejo el codig paa ver si me pueden ayudar




#include <stdio.h>

struct _agenda {
       char nombre[20];
       char telefono[12];
       char equipo[20];
       struct _agenda *siguiente;
       };

struct _agenda *primero, *ultimo;

void mostrar_menu() {
     system("cls");
     printf("\n\nMenu:\n=====\n\n");
     printf("1.- Agregar elementos\n");
     printf("2.- Borrar elementos\n");
     printf("3.- Mostrar contacto\n");
     printf("4.- Mostrar contacto magallanero\n");
     printf("5.- Salir\n\n");
     printf("Escoge una opcion: ");fflush(stdout);
}

void anadir_elemento() {
     struct _agenda *nuevo;

     /* reservamos memoria para el nuevo elemento */
     nuevo = (struct _agenda *) malloc(sizeof(struct _agenda));
     if (nuevo==NULL) printf( "No hay memoria disponible!\n");

     printf("\nNuevo elemento:\n");
     printf("Nombre: "); fflush(stdout);
     gets(nuevo->nombre);
     printf("Telefono: "); fflush(stdout);
     gets(nuevo->telefono);
     printf("Equipo: "); fflush(stdout);
     gets(nuevo->equipo);

     /* el campo siguiente va a ser NULL por ser el último elemento
        de la lista */
     nuevo->siguiente = NULL;


     if (primero==NULL) {
        printf( "Primer elemento\n");
        primero = nuevo;
        ultimo = nuevo;
        }
     else {
          /* el que hasta ahora era el último tiene que apuntar al nuevo */
          ultimo->siguiente = nuevo;
          /* hacemos que el nuevo sea ahora el último */
          ultimo = nuevo;
     }
}



void mostrar_lista() {
     struct _agenda *auxiliar;
     int i;

     i=0;
     auxiliar = primero;
     printf("\nMostrando la lista completa:\n");
     while (auxiliar!=NULL) {
           printf( "Nombre: %s \n Telefono: %s \n equipo: %s\n",
                   auxiliar->nombre,auxiliar->telefono,auxiliar->equipo);
           auxiliar = auxiliar->siguiente;
           i++;
     }
     if (i==0) printf( "\nLa agenda esta vacia!!\n" );
}



void mostrar_magallanes() {

     int x;
           struct _agenda *auxiliar;
     printf("\nLos contacto magallaneros son: \n");
     
     for(x=0; x < 5; x++)
         {
     if(strcmp(primero->equipo[x],"magallanero") == 0)
        {
     printf("los contactos magallanero son");
   printf("\nEl nombre es: %s \n",auxiliar->nombre[x]);
   printf ("el telefono: %s  \n",auxiliar->telefono[x]);
   
          }
          }
          }


void borrar_elemento(){

 free(primero=NULL);

                    }

int main() {
    char opcion;

    primero = (struct _agenda *) NULL;
    ultimo = (struct _agenda *) NULL;
    do {
        mostrar_menu();
        opcion = getch();
            switch ( opcion ) {
               case '1': anadir_elemento();
                      break;
               case '2':  borrar_elemento();
                       break;
               case '3': mostrar_lista(primero);
                       break;
               case '4': mostrar_magallanes();
               break;
               
               case '5': exit( 1 );
               default: printf( "Opción no válida\n" );
                        break;
            }
    } while (opcion!='5');
}





http://pastebin.com/SvxGbaRZ

en la linea 75 a 91 esta la funcion que mas o menos quiero pero no se trabajar con punteros
#2
amigos quien me puede ayudar a pasar este codigo con punteros y con memoria dinamica ???'


#include<stdio.h>
#include<conio.h>
#include <stdlib.h>
#include <string.h>

#define p printf
#define s scanf

struct contacto{
       char equipo[40][80];
       char nombre[40][80];
       char telefono[40][80];

}c1;

int cont=0;
int numero; /** el numero del menu de opciones*/
int numerodeamigos;  /** el numero de amigos que quiero agregar a la agenda */
int contadorAGREGAR;  /** el contador del for agregar*/
int contadorELIMINAR;  /** el contador del for de eliminar */
int x,y;

main(void)
{


/*******************************************/
/*******************************************/
/************ MENU DE OPCIONES **************/
/*******************************************/
/*******************************************/


do
{
system("COLOR 2");
p("\n\tPOR FAVOR ELIJA UNA DE LAS SIGUIENTES OPCIONES\n\n\n\n");
p("\t1.AGREGAR CONTACTO\n");
p("\n\t2.MOSTRAR TODOS LOS CONTACTOS DE TU AGENDA \n\n");
p("\t3.MOSTRAR LOS CONTACTOS CARAQUISTA\n");
p("\t4.MOSTRAR LOS CONTACTOS MAGALLANEROS\n");
p("\t5.BUSCAR CONTACTO\n");
p("\t6.ELIMINAR CONTACTO\n");
scanf("%i",&numero);
switch(numero)
{


/*******************************************/
/*******************************************/
/************ AGREGA LOS CONTACTOS **************/
/*******************************************/
/*******************************************/
case 1:{
system ("cls");
printf("cuantos amigos quiere agregar: ");
scanf("%i",&numerodeamigos);


                            for (contadorAGREGAR=0; contadorAGREGAR<numerodeamigos; contadorAGREGAR++)
                             {
                             system("cls");


               printf("ingrese el nombre: ");
               fflush(stdin);
             gets(c1.nombre[contadorAGREGAR]);


printf("Diga el equipo de su amigo: caraquista o magallanero \n");
fflush(stdin);
  gets(c1.equipo[contadorAGREGAR]);


              printf("Ingrese el telefono: ");
                fflush(stdin);
              gets(c1.telefono[contadorAGREGAR]);

              system("cls");
          printf("\n");
}

}
break;

/*******************************************/
/*******************************************/
/*** MUESTRA LOS CONTACTO DE LA AGENDA *****/
/*******************************************/
/*******************************************/

case 2:
    {
system ("cls");

                        for (contadorELIMINAR=0; contadorELIMINAR<numerodeamigos; contadorELIMINAR++)
   /***abre el for */ {
    printf("\nEl nombre es: %s \n", &c1.nombre[contadorELIMINAR]);
    printf ("el equipo es: %s \n",&c1.equipo[contadorELIMINAR]);
    printf ("el telefono: %s  \n",c1.telefono[contadorELIMINAR]);

    } /**cierra el for**/

    system("pause");
    } /**cierra el case*/

    break;
/*******************************************/
/*******************************************/
/****** MUESTRA CONTACTOS CARAQUISTAS *******/
/*******************************************/
/*******************************************/
case 3:
      {
          for(x=0; x < numerodeamigos; x++)
          {
    if(strcmp(c1.equipo[x],"caraquista") == 0)
    {
        printf("los contactos caraquista son");
    printf("\nEl nombre es: %s \n", &c1.nombre[x]);
    printf ("el telefono: %s  \n",c1.telefono[x]);
    }
    }
    }
break;
/*******************************************/
/*******************************************/
/****** MUESTRA CONTACTOS MAGALLANERO *******/
/*******************************************/
/*******************************************/
  case 4:
                          {
  for(y = 0; y < numerodeamigos; y++)
          {
if(strcmp(c1.equipo[y],"magallanero") == 0)
    {
        printf("los contactos magallanero son");
    printf("\nEl nombre es: %s \n", &c1.nombre[y]);
    printf ("el telefono: %s  \n",c1.telefono[y]);


    }
    }

    break;


    case 5:
         /****/

       {
        char busca[40];
        system("cls");

        fflush(stdin);
        printf("\nBuscar contacto\n Ingrese el nombre del contacto:");
        gets(busca);

        for(x=0;x<numerodeamigos;x++){
                if(strcmpi(busca,c1.nombre[x])==0){
                        printf("\nNombre: %s\n", c1.nombre[x]);
                        printf("Telefono %s\n", c1.telefono[x]);


                }
        }

}break;

/******/


  case 6:
       {
        char busca1[40];
        system("cls");

        fflush(stdin);
        printf("\n eliminar contacto \n Ingrese el nombre del contacto:");
        gets(busca1);
                for(x=0;x<numerodeamigos;x++){
                if(strcmpi(busca1,c1.nombre[x])==0){
                        printf("\nNombre: %s\n", c1.nombre[x]);
                        printf("Telefono: %s\n", c1.telefono[x]);
                        printf("Equipo: %s\n", c1.equipo[x]);
                        printf("ELIMINADO");
                        strcpy(c1.nombre[x],"");
                        strcpy(c1.telefono[x],"");
                        strcpy(c1.equipo[x],"");

       }
       }
       }break;

   }/**cierra el caso 4*/
    } /***cierra el do***/
    }/*** cierra el main **/

    while(numero<9);

     }

#3
amigos tneog un problema con este codigo que despues que quiero mostrar los contactos de mi agenda me sale error

tambien quiero agregarle que busque un contacto en especifico
#include<stdio.h>
#include<conio.h>
#include <stdlib.h>
#define p printf
#define s scanf

struct contacto{
       char nombre[40];
       long telefono;
       char equipo;
       };
     typedef struct contacto tipo_contacto;

int contador;
int numerodeamigos;




void main()
{
tipo_contacto c1;
int numero;
int i;


do
{
p("\n\tPOR FAVOR ELIJA UNA DE LAS SIGUIENTES OPCIONES\n\n\n\n");
p("\t1.AGREGAR CONTACTO\n");
p("\n\t2.MOSTRAR CONTACTOS DE LA AGENDA \n\n");

scanf("%i",&numero);
switch(numero) 
{
               
                case 1:{
system ("cls");
printf("cuantos amigos quiere agregar: ");
scanf("%d",&numerodeamigos);
system("cls");
                     
                            for (contador=0; contador<numerodeamigos; contador++)
                             {

               printf("ingrese el nombre: ");
fflush(stdin);
gets(c1.nombre);
               printf("diga su equipo: ");
fflush(stdin);
scanf("%c",&c1.equipo);

              printf("Ingrese el telefono: ");
fflush(stdin);
scanf("%d",&c1.telefono);

system("cls");
          printf("\n");
}

}
break;



case 2:
    {
system ("cls");


                        for (i=0; i<numerodeamigos; i++)
   /***abre el for */ {
    printf("El nombre es: %s, \n", c1.nombre);
    printf ("el equipo es: %s \n",c1.equipo);
    printf ("el telefono: %d  \n",c1.telefono);
    system("pause");
    } /**cierra el for**/
   

    } /**cierra el case*/
   
    break;
    } /***cierra el do***/
    }/*** cierra el main **/

    while(numero<7);

          return 0;
     }


#4
amigos necesito crear agendas que lleve punteros dinamicos

lo primero que lleva obviamente es ingresar los amigos, nombre, numero de telefono

que elimine 1 amigo

que busque un amigo y apareza su numero de telefono y un listado general que muestre todo los contactos agregado

solo que lleva punteros y no se como hacerlo con punteros


si alguien me da una idea de mas o menos como empezar




#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define p printf
#define s scanf


typedef struct agenda{

      char nombre;

      char apellido;

      int edad;

      };
int *puntero;

typedef agenda *puntero;

main()

{
   


     p("\ndiga el nombre de su amigo: ");
     s("%s",agenda.nombre);
     
   
   
     p("\ndiga el apellido de su amigo: ");
     s("%s",agenda.apellido);

      p("\ndiga el numero de telefono de su amigo: ");
      s("%s",agenda.telefono);
     
}


primero trato de hacerlo de 1 amigo pero no tengo ni idea de como hacerlo con puntero y structud
#5
estaba haciendo este programa que me mandaron en la universidad pero no logro eliminar las pilas que deseo, por ejemplo si agregue 5 pilas y quiero eliminar 4 me elimina es una sola y no logro que me elimine las cuatro de una vez

aqui les dejo el codigo para que me puedan ayudar





#include<stdio.h>
#include<conio.h>
#include <stdlib.h>
#define p printf
#define s scanf
main ()
{

int arreglo[10];
int numero=0;
int tope=0;
int x=0;
int contador;
int cantidad;
int final;
do

{
   
   
   
/**COMANDO PARA CAMBIAR COLOR A LA VENTANA**/

system("color 1f");
/** COMANDO PARA LIMPIAR LA PANTALLA **/
system("cls");







/*******************************************/
/*******************************************/
/************ MENU DE OPCIONES **************/
/*******************************************/
/*******************************************/

p("\n\tPOR FAVOR ELIJA UNA DE LAS SIGUIENTES OPCIONES\n\n\n\n");
p("\t\t\tPILA\n");
p("\n\t1.INGRESAR UN DATO A LA PILA \n\n");
p("\t2.MOSTRAR DATOS DE LA PILA\n\n");
p("\t3.ELIMINAR DATO DE LA PILA \n\n");
p("\t4.SALIR DEL PROGRAMA \n");

/***********************************************/
s("%i",&numero);
switch(numero)
{
             
/*******************************************/
/*******************************************/
/****** AGREGAR ELEMENTO A LA PILA*********/
/*******************************************/
/*******************************************/
case 1:{

system ("cls");

p("CUANTOS ELEMENTOS QUIERE AGREGAR A LA PILA ");
scanf("%d", &cantidad);    

for( contador = 1; contador <= cantidad; contador++ ){
   
p("\t INTRODIZCA EL DATO DE LA PILA NUMERO %d : ", contador);
s("%i",&arreglo[tope]);    
tope++;



}
}
break;


/*******************************************/
/*******************************************/
/************ MUESTRA LAS PILA **************/
/*******************************************/
/*******************************************/


case 2:
{
   
    system ("cls");
    if ( tope==0 ) {
    p("\t LA PILA ESTA VACIA");
    }
   
    else
    {
p("\tDATOS DE LA PILA\n\n");

for(x=0; tope>x ;x++)
{
p("\n\t%d ",arreglo[x]);
}
}
}
getch();
break;


/*******************************************/
/*******************************************/
/******   ELIMINA DATO DE LA PILA  *********/
/*******************************************/
/*******************************************/


case 3:
   
    {
         
          system ("cls");
         
         
                         if (tope==0)
                   {
                         
                         p("\n\t\t NO HAY PILA QUE RETIRAR");
                          getch();
                         }
                         else
{
[b]                p("CUANTOS DATOS QUIERE QUITAR DE LA PILA \? ");
               s("%d",&max);
               for ( max = 0; max<tope; max++);

               {

                             tope--;
                   system ("cls");

               p("LOS ELIMENTOS HAN SIDO ELIMINADOS");
     [/b]
                  getch();
                 
                 
                      }          
                     }
                    }
                   
              break;
                   
/*******************************************/
/*******************************************/
/********   SALE DEL PROGRMA   ***********/
/*******************************************/
/*******************************************/


case 6:
{
printf("\tSALIENDO...\n");
return 0;
}
break;
}
}
while(numero<7);

}



#6
amigos quien me puede ayudar a terminar este codigo o darme un manual sobre agregar pila y eliminarla y mostrarla

casi todo los que consigo son con punteros

#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#define p printf
#define s scanf


void agregar (void);
void retirar (void);
void mostrar (void);

/*********************************************************/

int pila[100],tope=0,max=1;


main()
       {
char sc;
           
         system("cls");    
               system("color A");

               /*** MENUU DE PILA Y COLA ***/

               p("\n\t\t\t\aPROGRMA DE PILA Y COLA\n\n\t\t\t");
               p(" \n\t\t\t**Presione 1 para agregar pilas\n\n");
                p("\n\t\t\t**Presione 2 para eliminar pilas \n\n");
               p("\n\t\t\t**Presione 3 para mostrar las pilas");
                p("\n ");

sc=getch();


switch(sc)

{

case 1:
    agregar ();
    break;
   
   
    case 2 :
         retirar ();
         break;
   
   
   
         case 3 :
              mostrar ();
              break;
             
}
             
             
           


/******otro menu*/
void agregar (void)
(
char seguir



do {
              if (tope==10)
              (
             
                           p("\n\noverflow....\n\n");
              system ("pause");
              )
                     else (
                     
                     p("\n\n intruduzca una numero");
                     tope=tope+1;
                     s("%d",&pila[tope];
                     
                     )                  
                     
                     
                     p("\n\n desea añador otro elemente s/n");
                     
              seguir=getch();
             
system("cls");

) while ((seguir=='s') || (seguir=='S') && (tope<max);


void retirar (void)

(
system ("cls");
if (tope==0)
{
p("underflow presione una tecla ");

}

                     else
                     
                {
                     p("\n\n\nretirado %d de la pila\n\n", pila[tope]);
                     
                     system("pause");
                     pila[tope]=0;
                     tope=tope=-1
                     
                     }
                     )
#7
Programación C/C++ / problema de lenguaje C
14 Julio 2011, 04:46 AM
buenas amigos necesitaba una ayuda de ustedes y es si me podría ayudar hacer un programa en c para poderme guiar que tengo que hacer varios y tener una idea de mas o menos como hacerlo


el enunciado es desarrolle un programa que dimensione una matriz de Nfila por Ncolumna, conociendo  que las columnas son vendedores y que las filas son sus respectivas ventas. calcular el promedio de ventas por vendedor y el promedio total de las ventas
#8
quien me puede ayudar hacer una tabla de multplicar en pseudocodigo es para la universidad... el enunciado es asi..

desarrolle una tabla de multiplicar comprendida del 1 al 9 utilizando 2 vectores



segun lo que yo investigue hice algo asi pero no se si esta bien

algoritmo matrices
variables a[10], b[10], numero

inicio
mostrar " introduzca el numero "

hacer para 
( i=1 ; i <=10 i++)
   {
       mostrar " /n %d x %d = %d numero, i, b[10] }

fin