Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
C/C++ - rubrica con puntatori!!
Forum - C/C++ - rubrica con puntatori!! - Pagina 2

Pagine: [ 1 2 ] Precedente | Prossimo
Avatar
miau (Normal User)
Newbie


Messaggi: 2
Iscritto: 04/01/2011

Segnala al moderatore
Postato alle 20:46
Martedė, 04/01/2011
ciao a tt........   ho bisogno del vostro aiuto    nn mi viene la funzione dell'ordinamento
struct elemento *aggiungiContatto(struct elemento *p)
{

//void insert (punt,inf)
// aggiungiContatto() - OPEN

  

  // Dichiaro le variabili
  char nome[50];
  char cognome[50];
  char telefono[30];
  char email[100];
  char sitoweb[200];
  t_contatto daInserire;
  struct elemento *punt;

  // Popolo la variabile daInserire
  printf (" NOME > ");
  scanf ("%s", nome);
  strcpy(daInserire.nome, nome);
  printf (" COGNOME > ");
  scanf ("%s", cognome);
  strcpy(daInserire.cognome, cognome);
  printf (" TELEFONO > ");
  scanf ("%s", telefono);
  strcpy(daInserire.telefono, telefono);
  printf (" EMAIL > ");
  scanf ("%s", email);
  strcpy(daInserire.email, email);
  printf (" SITOWEB > ");
  scanf ("%s", sitoweb);
  strcpy(daInserire.sitoweb, sitoweb);

  if(p != NULL)
  { // IF - OPEN

    /* creazione elementi successivi */
    // Alloco la memoria necessaria
    punt = (struct elemento *)malloc(sizeof(struct elemento));
    // Metto daInserire nell'informazione del puntatore
    punt->inf = daInserire;
    // Metto il puntatore in testa alla lista
    punt->pun = p;

  } else { // ELSE

    /* creazione primo elemento */
    // Alloco la memoria necessaria
    p = (struct elemento *)malloc(sizeof(struct elemento));
    // Metto daInserire nell'informazione del puntatore
    p->inf = daInserire;
    // p punta a NULL, ovvero il marcatore di fine lista
    p->pun = NULL;
    // Assegno p a punt
    punt = p;
}

    // IF - CLOSE
  
  
/* void insert(daInserire,p) {
  int PosTrovata=0;
  while ((p!=NULL) && (PosTrovata== 0)) {
  if (daInserire > p->inf) p=p->pun;
  if (daInserire <= p->inf) PosTrovata=1;
   }
  if (PosTrovata==1)
  //}
  //    
  push(p,punt);
  
  punt = (struct elemento *)malloc(sizeof(struct elemento));
  punt->inf = daInserire;
    // Metto il  puntatore in testa alla lista
    punt->pun = p;
    punt = p;
  /*void push (p,punt){
    
  
      
    // Metto daInserire nell'informazione del puntatore
  
      p=punt;*/

  // Esce dalla funzione e restituisce la lista
   return(punt);

//}
} // aggiungiContatto() - CLOSE

PM
Avatar
miau (Normal User)
Newbie


Messaggi: 2
Iscritto: 04/01/2011

Segnala al moderatore
Postato alle 23:24
Martedė, 04/01/2011
ciao a tt........   ho bisogno del vostro aiuto    nn mi viene la funzione dell'ordinamento
struct elemento *aggiungiContatto(struct elemento *p)
{

//void insert (punt,inf)
// aggiungiContatto() - OPEN

  

  // Dichiaro le variabili
  char nome[50];
  char cognome[50];
  char telefono[30];
  char email[100];
  char sitoweb[200];
  t_contatto daInserire;
  struct elemento *punt;

  // Popolo la variabile daInserire
  printf (" NOME > ");
  scanf ("%s", nome);
  strcpy(daInserire.nome, nome);
  printf (" COGNOME > ");
  scanf ("%s", cognome);
  strcpy(daInserire.cognome, cognome);
  printf (" TELEFONO > ");
  scanf ("%s", telefono);
  strcpy(daInserire.telefono, telefono);
  printf (" EMAIL > ");
  scanf ("%s", email);
  strcpy(daInserire.email, email);
  printf (" SITOWEB > ");
  scanf ("%s", sitoweb);
  strcpy(daInserire.sitoweb, sitoweb);

  if(p != NULL)
  { // IF - OPEN

    /* creazione elementi successivi */
    // Alloco la memoria necessaria
    punt = (struct elemento *)malloc(sizeof(struct elemento));
    // Metto daInserire nell'informazione del puntatore
    punt->inf = daInserire;
    // Metto il puntatore in testa alla lista
    punt->pun = p;

  } else { // ELSE

    /* creazione primo elemento */
    // Alloco la memoria necessaria
    p = (struct elemento *)malloc(sizeof(struct elemento));
    // Metto daInserire nell'informazione del puntatore
    p->inf = daInserire;
    // p punta a NULL, ovvero il marcatore di fine lista
    p->pun = NULL;
    // Assegno p a punt
    punt = p;
}

    // IF - CLOSE
  
  
/* void insert(daInserire,p) {
  int PosTrovata=0;
  while ((p!=NULL) && (PosTrovata== 0)) {
  if (daInserire > p->inf) p=p->pun;
  if (daInserire <= p->inf) PosTrovata=1;
   }
  if (PosTrovata==1)
  //}
  //    
  push(p,punt);
  
  punt = (struct elemento *)malloc(sizeof(struct elemento));
  punt->inf = daInserire;
    // Metto il  puntatore in testa alla lista
    punt->pun = p;
    punt = p;
  /*void push (p,punt){
    
  
      
    // Metto daInserire nell'informazione del puntatore
  
      p=punt;*/

  // Esce dalla funzione e restituisce la lista
   return(punt);

//}
} // aggiungiContatto() - CLOSE

PM
Pagine: [ 1 2 ] Precedente | Prossimo