C递归中的魔法?谁能解释一下?

not*_*tme -1 c recursion

有人可以向我解释这种递归是如何工作的吗?我被陷的结果如何是20时,递归只留下上,如果a == b它是a = 6b = 6

int main() 
{
    printf("%d \n",mistero(2, 6));
    return 0;
}

mistero( a, b)
{
    if( a == b ){
        return a;
    }
    return a + mistero(a+1, b);
}
Run Code Online (Sandbox Code Playgroud)

Ser*_*rov 7

mistero(2, 6) =
2 + mistero(3, 6) =
2 + 3 + mistero(4, 6) =
2 + 3 + 4 + mistero(5, 6) =
2 + 3 + 4 + 5 + mistero(6, 6) =
2 + 3 + 4 + 5 + 6
                  = 20
Run Code Online (Sandbox Code Playgroud)