zdecydowanie lepiej byłoby tak:
for ( ; scanf("%i", &n) == 1; ) { ... }
lub jeszcze lepiej (prościej):
while (scanf("%i", &n) == 1) { ... }
natomiast informację, co to daje najprościej znaleźć w podręczniku C:
- instrukcja for
- operacje wejścia/wyjścia - scanf() - format
jeżeli masz awersję do podręcznika w postaci papierowej, to równie dobrze powie ci to google.pl