Yes, I can see that behaviour now. It wasn't the right thing to do to take out all the "else"s. I think that for this, looking into switch statements is a good plan.

I can see what you were trying to do with the if(num) else "error" block. You've missed out some braces, which is why you're getting the results you're seeing. I'm sure you can figure that out though (and if not, post again...).

I just wanted to point out that
if (num)
isn't going to do what you want it to. It'll be fine if a digit is given, but if a letter is given then the value of num is uninitialised, so it could have any value, probably not zero. Since 0 is an acceptable input, I suggest

Code:
	int num = -1;
	printf("Please enter a numbe from 0-9 ");
	scanf ("%d",&num);
	if (num != -1)
	{
          .....
          .....