PDA

Visualizza la versione completa : [C] Controllo if per input


erbuzzicker
09-02-2006, 15:58
Ciao,

sto facendo un compito utilizzando il linguaggio C.

Praticamente vorrei mettere un if che controlli l'input dell'utente, e nel caso questo sia errato, permettere all'operatore di reinserirlo. Bene il controllo questo:

printf ("Inserite la spesa totale del cliente: ");
\\\\\\\\do{
\\\\\\\\\\\scanf ("%f",&spesa_tot);
\\\\\\\\\\\if (spesa_tot<=0)
\\\\\\\\\\\\\\printf ("Valore errato. Reinserire il valore: ");
\\\\\\\\}
\\\\\\\\while (spesa_tot<=0);

Questo funziona solo nel caso l'utente abbia inserito un valore minore od uguale a zero... E se io vorrei che funzionasse anche se l'utente, invece di inserire un numero, inserisse un carattere, cosa dovrei inserire?
if ((spesa_tot<=0) || (?)) che ci devo mettere dove sta il "?"

Vi ringrazio anticipatamente...

mattneri
09-02-2006, 16:23
Usa isdigit()

if ( spesa_tot <= 0 || !isdigit( spesa_tot ))

Loading