MAC0122 - Lista 1 - Recursão

Você não precisa entregar, mas pode usar estes exercícios para estudar!
  1. Escreva uma função recursiva com protótipo
       int num_digitos (int n);
    
    que devolve o número de dígitos de n.

  2. Escreva uma função recursiva com protótipo
       int soma_digitos (int n);
    
    que devolve a soma do número de dígitos de n.

  3. Escreva uma função recursiva com protótipo
       int conta_digitos (int n, int d);
    
    onde 0 <= d <= 9, e devolve o número de vezes que d aparece como dígito em n.

  4. Escreva uma função recursiva com protótipo
       int conta (int v[], int n, int x);
    
    que devolve o número de vezes que o inteiro x ocorre no vetor v[0..n-1].

  5. Escreva uma função recursiva com protótipo
       int soma (int v[], int n);
    
    que devolve a soma dos números no vetor v[0..n-1].

  6. Escreva uma função recursiva com protótipo
       int busca (int v[], int n, int x);
    
    que devolve -1 se x não ocorre em v[0..n-1] ou devolve um índice i com 0 <= i < n tal que v[i] = x.

  7. Escreva uma função recursiva com protótipo
       int minimo (int v[], int n);
    
    que devolve o índice de um elemento mínimo do vetor v[0..n-1].

  8. Escreva uma função recursiva com protótipo
      void maxmin (int v[], int n, int *max, int *min);
    
    que devolve o maior valor do vetor v[0..n-1] em *max e o menor em *min.