From: frolikcc AT indy DOT net (Chris Frolik) Newsgroups: comp.os.msdos.djgpp Subject: newbie needs help Date: Wed, 13 Nov 1996 20:03:13 +0600 Organization: IndyNet - Indys Internet Gateway (info AT indy DOT net) Lines: 38 Message-ID: NNTP-Posting-Host: indy2.indy.net To: djgpp AT delorie DOT com DJ-Gateway: from newsgroup comp.os.msdos.djgpp I am a newbie C programmer, and I just downloaded djgpp as my first compiler. I tried to run a simple program, but had some problems. I am not sure if there is something wrong with my code, or I am just going about it the wrong way. The following is a simplified example of what I compiled: #include void main() { long n=0, x=0, result=0; printf("\n Enter a number between 1 and 100: "); scanf("%ld", &x); printf("\n Enter another number between 1 and 100: "); scanf("%ld", &n); result = x - n; printf("%ld - %ld = %ld", x, n, result); } So, I compiled it and ran it. It worked fine, unless I entered a decimal (i.e. .6) or a letter at the first prompt. If I did, it skipped the second scanf() entirely. Is this supposed to happen? I have no experience with this, so I am not sure. If so, what can I do to prevent it? Also - when printing a float, how can I drop off the trailing zeros? For example, if i have: float x=2.5; printf("%f", x); It prints out 2.500000, while I only want it to print 2.5. Thanks, -Chris