Разработать рекурсию к готовому коду по вычислению арефметичного выражения введенного в символьную строку на Си

Разработать функцию, параметром которой является символьная строка, хранящая арифметическое выражение вида: n1 ± n2 ± n3 ± n4 ± ..., где n1, n2, n3, n4 ... - цели натуральные числа. Я уже написал код без рекурсии, но не панимаю как здесь применить рекурсию.

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main()
{
    int k;
    char a[1000];
    char string[1000];
    char *arr[100];
    int elements[100];
    char *str;
    printf("Enter expression: ");
    gets(a);
    int length = strlen(a);
    strcpy(string, a);
    str = strtok(a, "+-");
    k = 0;
    while (str != NULL)
    {
        elements[k] = atoi(str);
        k++;
        str = strtok(NULL, "+-");
    }
    printf("Elements: ");
    for (int i = 0; i < k; i++)
    {
        printf("%d ", elements[i]);
    }
    int index = 1, res = elements[0];
    for (int i = 0; i < length; i++)
    {
        if (string[i] == '+')
        {
            res += elements[index];
            index++;
        }
        else if (string[i] == '-')
        {
            res -= elements[index];
            index++;
        }
    }
    printf("\nResult of expression: %d", res);
    return 0;
}

Ответы (0 шт):