[ Home  |  FAQ-Related Q&As  |  General Q&As  |  Answered Questions ]


    Search the Q&A Archives


...prevent my C program from accepting alpha entries...

<< Back to: comp.lang.c FAQ list Table of Contents

Question by redmike
Submitted on 5/10/2004
Related FAQ: comp.lang.c FAQ list Table of Contents
Rating: Rate this question: Vote
How do I prevent my C program from accepting alpha entries for a calculation that wants only integers?  If I type in a letter, it does the calculation as if I entered the number 2.


Answer by basti
Submitted on 8/20/2004
Rating: Not yet rated Rate this answer: Vote
maybe a code snippet would help...

 

Answer by tinku
Submitted on 2/21/2005
Rating: Not yet rated Rate this answer: Vote
to avoid alpha entries, u have to check the ASCII value of 0-9. if it is not then ask the use to again enter the value

 

Answer by Manos Theocharopoulos
Submitted on 4/28/2005
Rating: Not yet rated Rate this answer: Vote
Use getchar() instead of scanf() and check for the ASCII code of the character.They range between 48 for 0 and 57 for 9.
Or use the Macro isdigit.

 

Answer by kakapada
Submitted on 9/5/2005
Rating: Not yet rated Rate this answer: Vote
Just check the input with its ASCII value and if the ASCII does not fall into the permissible range then just discard the input.Here is an example
    .........
    ..........
    while(1)
    {
       scanf("%d",&num); /*num is integer*/
       ch = num; /*ch is character*/
       if ( ch>= 48 && ch<= 58)
         break;
     }
    .........
    .........

48 is the ASCII value for 0 and 58 is for 9

 

Your answer will be published for anyone to see and rate.  Your answer will not be displayed immediately.  If you'd like to get expert points and benefit from positive ratings, please create a new account or login into an existing account below.


Your name or nickname:
If you'd like to create a new account or access your existing account, put in your password here:
Your answer:

FAQS.ORG reserves the right to edit your answer as to improve its clarity.  By submitting your answer you authorize FAQS.ORG to publish your answer on the WWW without any restrictions. You agree to hold harmless and indemnify FAQS.ORG against any claims, costs, or damages resulting from publishing your answer.

 

FAQS.ORG makes no guarantees as to the accuracy of the posts. Each post is the personal opinion of the poster. These posts are not intended to substitute for medical, tax, legal, investment, accounting, or other professional advice. FAQS.ORG does not endorse any opinion or any product or service mentioned mentioned in these posts.

 

<< Back to: comp.lang.c FAQ list Table of Contents


[ Home  |  FAQ-Related Q&As  |  General Q&As  |  Answered Questions ]

© 2008 FAQS.ORG. All rights reserved.