ungetc schiebt das letzte, durch getch, eingelesene zeichen wieder zurück in den buffer, damit es beim nächsten getch eingelesen werden kann. das hat nix mit deinem ursprünglichen problem zu tun. auch ungetc, erstellt dir kein formular auf der tastatur