C Programming - Zwei für Schleifen zur Rekursion

Ich habe versucht, eine rekursive Funktion zu erstellen, die zwei for-Schleifen simuliert. Also müsste function dies tun:

int recursion(int n, int i, int j)
{
    for(i=0; i<n; i++)
    {
        for(j=i+1; j<n; j++)
        {
            printf("%d %d\n", i, j);
        }
    }
}

Aber ich möchte, dass es rekursiv ist. Ich habe versucht, so etwas wie:

int recursion(int n, int i, int j)
{
    if(i<n)
    {
        if(j<n)
        {
            printf("%d %d\n", i, j);
            recursion(n, i+1, j+1);
        }
        recursion(n, i+1, i+1+1);
    }
}

Ich würde einen rekursiven in main wie @ aufruf

recursion(10, 0, 1);

, aber die Ausgabe ist für diese beiden Funktionsversionen nicht identisch. Kann mir jemand sagen, wo ich mich mit der rekursiven irre?

Antworten auf die Frage(6)

Ihre Antwort auf die Frage