O que o programa a seguir faz?
Passo 1
Opa, tudo bom?
Inicialmente pessoal são incluídas a biblioteca padrão em C, em seguida define-se uma constante nomeada por “SIZE” que possui valor 10.
Depois é feito um protótipo da função someFunction, onde é definido o tipo dessa função, o seu nome e seus respectivos parâmetros formais.
Passo 2
Olhando agora para o main, temos a inicialização do vetor a com seus respectivos valores. Além disso temos o famoso printf que imprime para o usuário a mensagem "Resposta é: "
Nota - se também o chamamento da função someFunction com seus respectivos parâmetros reais. E de quebra ainda temos o comando \n que possibilita a quebra de linha. E aí, até aqui tudo beleza?
Passo 3
Seguindo agora para a famosa função someFunction, como parâmetros formais temos um vetor b, uma variável startIndex que de início tem o valor 0, e temos também uma variável size que indica o tamanho do nosso vetor.
Em seguida temos o operador condicional If que determina que enquanto a variável de controle startIndex for menor que o tamanho do nosso vetor b é para continuar chamando a própria função, quando isso ocorre chamamos de recursividade. Dessa forma o programa primeiro testa todos os casos que tornam o operador condicional verdadeiro e armazena esses resultados, em seguida ele começa a imprimir para o usuário desde o último valor registrado até primeiro, aparecendo para o usuário o vetor inverso.
Bons estudos!