I am tring to make a function to check to make sure the floating piont value is a valid number. i am having some problem getting it to work correctly.
any help would be great.
thanks
Sal
Code:#include <stdio.h> #include "floatgetnum.h" /* prototype */ float getnum(); int main() { float retval=0; printf("Please enter a floating point number"); do { retval = getnum(); printf("The number was %f\n", retval); }while (retval !=-1); return 0; } float getnum() { char ch; int nflag,dflag,number,pos=0; int dplace=1; ch=getchar(); while (ch!='\n'&&ch!=' ') { switch (ch) { case '-': nflag=1; pos++; break; case '+': pos++; break; case '.': if (dflag==1) { printf ("Invaild user input\n"); return EOF; } else { dflag++; pos++; } break; case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': number*=10; number+=atoi(&ch); if (dflag==1) { dplace*=10; } pos++; break; } ch=getchar(); if (nflag==1) { number*=-1; } if (dflag==1) { number=number/dplace; } } return number; }/*function*/


