Wenn dem Armen jetzt noch einer erklärt, wie er das Problem umgeht...
Richtig sauber geht das nur mit dem Umweg über Strings.
Die Eingaben in einen String einlesen und diesen per Software in Zahlenwerte umwandeln. Geht super mit strtol oder sscanf. atoi macht das auch, muss aber gutmütig behandelt werden, weil es Fehleingaben nicht eindeutig kennzeichnet. Also, wenn falsche Zeichen möglich sind, dann eine der ersten beiden nehmen.