PDA

View Full Version : [C] Problemi con delle stringhe in enumerazioni


Composition86
05-12-2008, 18:33
Salve a tutti, ho un problema con il seguente programma:
#include <conio.h>
#include <stdio.h>
#include <ctype.h>

typedef enum {lun, mar, mer, gio, ven, sab, dom} tipoGiornoSettimanale;
typedef enum {Paolo, Maria, Luigi, Vito} tipoNome;
char *stringaGiorno[]={"Lunedi'", "Martedi'", "Mercoledi'", "Giovedi'", "Venerdi'", "Sabato", "Domenica"};
char *stringaNome[]={"Paolo", "Maria", "Luigi", "Vito"};

typedef struct {
float peso; //float sta per "reale"
int temperatura;
} cartellaClinica;

void init (cartellaClinica tabulatosettimanale [4][7]);
void stampaMatrice (cartellaClinica tabulatosettimanale [4][7]);

main ()
{
cartellaClinica tabulatoSettimanale[4][7];
char scelta;

do {
init (tabulatoSettimanale);
stampaMatrice (tabulatoSettimanale);

printf ("Vuoi ripetere il programma? (Digita 'n' per terminare) ");
scelta=getche();
} while (tolower(scelta) != 'n');
}

void init (cartellaClinica tabulatosettimanale [4][7])
{
tipoNome n;
tipoGiornoSettimanale g;

for (n=Paolo ; n<=Vito ; n++) {
printf ("\nInserire i dati relativi a %s:\n", stringaNome[n]);

for (g=lun ; g<=dom ; g++) {
printf ("\n%s:\n", stringaGiorno[g]);
printf ("Inserire peso: ");
scanf ("%f", &tabulatosettimanale[n][g].peso);
printf ("Inserire temperatura: ");
scanf ("%d", &tabulatosettimanale[n][g].temperatura);
}
printf ("******************************************\n\n");
}
}

void stampaMatrice (cartellaClinica tabulatosettimanale [4][7])
{
tipoNome n;
tipoGiornoSettimanale g;

printf ("Ecco la tabella dei dati inseriti:\n\n");

for (n=Paolo ; n<=Vito ; n++) {
printf ("Cartella di %s:\n", stringaNome[n]);

for (g=lun ; g<=dom ; g++) {
printf ("\n%s", stringaGiorno[g]);
printf ("\nPeso: %.2f Kg", tabulatosettimanale[n][g].peso);
printf ("\nTemperatura: %d C\n", tabulatosettimanale[n][g].temperatura);
}
printf ("******************************************\n\n");
}
}
Vorrei fare in modo che mi venga visualizzata una stringa contenente il nome del giorno ed il nome del mese, ma il programma parte ma mi da' subito un errore.
Presumo di aver sbagliato qualcosa qui, ma anche omettendo gli asterischi l'errore è lo stesso:
char *stringaGiorno[]={"Lunedi'", "Martedi'", "Mercoledi'", "Giovedi'", "Venerdi'", "Sabato", "Domenica"};
char *stringaNome[]={"Paolo", "Maria", "Luigi", "Vito"};

Dove sbaglio?

EDIT: L'ho sistemato come sopra ed ora funziona.