- Wymaga interakcji użytkownika, pobiera od niego dane.
Ze standardowego wejścia? Wejście możesz przekierować do pliku (wyjście zresztą też). Nie rozumiem tylko dlaczego zależy ci na wywoływaniu ponownie całego programu? W twoim wypadku wystarczy zamieścić kod programu w pętli.
Przykład programu sumujący dwie liczby (gdy po wypisaniu wyniku wciśniesz q algorytm wraca do początku):
do
{
int a, b;
fflush(stdin);
printf("Podaj dwie liczby: ");
scanf("%d%d", &a, &b);
printf("%d + %d = %d\r\nWprowadz q aby kontynuuowac\r\n", a, b, a+b);
fflush(stdin);
}while(getchar() == 'q');
kod ten możesz bardziej zautomatyzować przekierowując we/wy:
freopen("we.txt", "r", stdin);
//freopen("wy.txt", "w", stdout);
int a, b;
while(scanf("%d%d", &a, &b) != -1)
printf("%d + %d = %d\r\n", a, b, a+b);
we.txt w tym wypadku może wyglądać np tak:
1 1 2 2 3 3 4 4
albo przykładowo tak
1 1
2 2
3 3
4 4
Czy o to chodzi?
Aha jeszcze to całe "czyszczenie okienka" - najszybsza metoda (brzydka co prawda bo wywołuje program zewnętrzny) to użycie system([polecenie_czyszczenia_konsoli]);