/*
Programma: cavallin-agenda.c
Autore: Cavallin Luca
Classe: 4CINF
Data: 30/08/2011
Descrizione: Attività estive
*/
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define DIM 100
void clear(void);
void pEnter(void);
void setColor(int a, int b, int c);
struct item
{
char nome[DIM];
char cognome[DIM];
int numero;
int valido;
};
typedef struct item item;
void inserisciNominativo(item[], int*);
void cancellaNominativo(item[], int*);
void stampaAgenda(item[], int*);
void ricercaNominativo(item[], int*);
int main(void)
{
system("clear");
item agenda[DIM];
int *nnom = 0;
int ch;
do
{
setColor(1, 0, 32);
printf("\n\t\t*****************************************\n");
printf("\t\t* *\n");
printf("\t\t* CAVALLIN - AGENDA *\n");
printf("\t\t* *\n");
printf("\t\t*****************************************\n\n");
printf("\n \t* MENÙ *\n\n");
setColor(1, 0, 0);
printf(" 1| Inserire nominativo \n");
printf(" 2| Cancellare nominativo\n");
printf(" 3| Stampa agenda\n");
printf(" 4| Ricerca nominativo\n");
printf(" 0| Esci\n");
printf("\n Inserisci scelta: ");
scanf("%d", &ch);
system("clear");
switch(ch)
{
case 1:
inserisciNominativo(agenda, &nnom);
pEnter();
break;
case 2:
pEnter();
break;
case 3:
stampaAgenda(agenda, &nnom);
pEnter();
break;
case 4:
pEnter();
break;
case 0:
return 0;
break;
default:
break;
}
clear();
}
while(ch != 0);
return 0;
}
void setColor(int a, int b, int c)
{
printf("\e[%d;%d;%dm", a, b, c);
}
void clear(void)
{
system("clear");
}
void pEnter(void)
{
printf("\n\n Premi INVIO per continuare...\n");
getchar();
}
void inserisciNominativo(item agenda[], int *nnom)
{
clear();
int i, ex;
char tmpNome[DIM], tmpCognome[DIM];
do
{
setColor(1, 0, 32);
printf("\n Inserimento nominativo\n\n");
setColor(1, 0 , 1);
printf(" Nome: ");
getchar();
gets(tmpNome);
printf(" Cognome: ");
gets(tmpCognome);
if(*nnom>0)
{
for(i=0; i<*nnom; i++)
{
if(strcmp(tmpNome, agenda[i].nome) == 0 && strcmp(tmpCognome, agenda[i].cognome) == 0 && agenda[i].valido == 0)
{
ex = 1;
}
}
}
}
while(ex=0);
strcpy(tmpNome, agenda[*nnom].nome);
strcpy(tmpCognome, agenda[*nnom].cognome);
printf(" Telefono: ");
scanf("%d", &agenda[*nnom].numero);
agenda[*nnom].valido = 0;
(*nnom)++;
ex = 0;
}
void cancellaNominativo(item agenda[], int *nnom)
{
}
void stampaAgenda(item agenda[], int *nnom)
{
int i;
clear();
setColor(1, 0, 32);
printf("\n Stampa agenda\n\n");
setColor(1, 0, 1);
for(i=0; i<*nnom; i++)
{
if(agenda[i].valido == 0)
{
printf("\n %s\n", agenda[i].nome);
printf("\n %s\n", agenda[i].cognome);
printf("\n %d", agenda[i].numero);
}
}
}
void ricercaNominativo(item agenda[], int *nnom)
{
}