Con il termine `terminare il programma con '\n'' intendi premendo invio?
se si basta che sostituisci
con:
codice:
/* Linux converte CR in NL */
/* Windows ? */
do {
i = getchar();
} while(i != 0x0a && i != 0x0d);
/* 0x0a corrisponde al valore ascii del carattere `\n'
* 0x0d corrisponde al valore ascii del carattere '\r' */
Una cosa se mi posso permettere:
codice:
#define MAX_STRINGA 100
char normale[MAX_STRINGA];
...
int main(int argc, char **argv)
{
...
scanf("%s",normale);
...
}
Cosa succede se immetto una stringa piu lunga di cento caratteri? segmentation fault!
usa
codice:
fgets(normale, sizeof(normale) - 1, stdin);
al posto
di scanf per risolvere il problema.