Wczytanie w projekcie.

Wczytanie w projekcie.
J1
  • Rejestracja:prawie 10 lat
  • Ostatnio:ponad 8 lat
  • Postów:7
0

Witam.
Mam do napisania projekt, w którym na wejściu mogę podać:
I x lub
L x lub
D x lub
P

x to liczba typu int, a I, L, D lub P to znak.
Na wejściu wpisuje od razu całośc np. I 3
I mam problem, bo jeśli robię tak
scanf("%c %d", &znak, &zmiennaint);
To przy wpisaniu P po którym nie występuje liczba, program oczekuje jeszcze na wczytanie jakiegoś inta.
Jak sobie z tym poradzić? Z góry dziękuję.

n0name_l
  • Rejestracja:ponad 12 lat
  • Ostatnio:ponad 4 lata
  • Postów:2412
1

Możesz sprawdzić następny znak (jeśli spacja to wczytujemy liczbę, jeśli nie to olewamy resztę).

Kopiuj
int main() {
	char sign;
	int num = -1;
	
	sign = getchar();
	if(getchar() == ' ')
		scanf("%d", &num);
		
	printf("%c %d", sign, num);
	return 0;
}
J1
  • Rejestracja:prawie 10 lat
  • Ostatnio:ponad 8 lat
  • Postów:7
0

Dzięki za pomoc! :)

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.