è lungo...
codice:
#include <stdio.h>
#include <stdlib.h>
#include "rub.h"
void menu()
{
printf("\n\nKandalf Rubric 0.1\n\n");
printf("1. Inserisci nuovo contatto\n");
printf("2. Cancella un contatto\n");
printf("3. Cancella tutto\n");
printf("4. Ricerca un contatto\n");
printf("5. Visualizza tutti\n");
printf("0. Esci\n");
}
tel *crea(tel *p, char nome, long num)
{
if (p == NULL)
{
p = malloc(sizeof(p));
p->num = num;
p->nome = nome;
p->next = NULL;
}
return p;
}
void stampa(tel *p)
{
if (p == NULL)
printf("\nFine\n");
else {
printf("%ld ", p->num);
printf("%s ", p->nome);
stampa(p->next);
}
}
main()
{
tel *puntLista;
puntLista = NULL;
int ins;
char nome;
long num;
menu();
do {
scanf("%d", &ins);
switch (ins) {
case 1:
printf("Nome\n");
scanf("%s", &nome);
printf("Numero\n");
scanf("%ld", &num);
puntLista = crea(puntLista, nome, num);
break;
case 2:
printf("canc\n");
break;
case 3:
printf("elim\n");
break;
case 4:
printf("cerc\n");
break;
case 5:
stampa(puntLista);
break;
default:
printf("Opzione non valida riprova\n");
break;
}
menu();
} while (ins != 0);
}