On my machine signed ints have a maximum value of 2,147,483,647. I've written a program that's designed to tell the user when the input value is too high. I have an error message (using printf) saying, "Error: Integer exceeds the 2,147,483,647 limit!" The problem is the program doesn't print the error message. Instead, it responds with apparently random output to terminal (whenever the int limit of 2,147,483,647 is exceeded).
Here's the offending code:
Code:
int number,RightDigit,TotalDigits,D1,D2,D3,D4,D5,D6,D7,D8,D9,D10;
printf("Type in any number less than 2,147,483,648:");
scanf("%i",&number);
if (number<10)
TotalDigits=1;
else if (number<100)
TotalDigits=2;
else if (number<1000)
TotalDigits=3;
else if (number<10000)
TotalDigits=4;
else if (number<100000)
TotalDigits=5;
else if (number<1000000)
TotalDigits=6;
else if (number<10000000)
TotalDigits=7;
else if (number<100000000)
TotalDigits=8;
else if (number<1000000000)
TotalDigits=9;
else if (number<=2147483647)
TotalDigits=10;
else
printf("Error:Integer exceeds 2,147,483,647 limit!");
Any ideas on how to get my program to print the error message?