step1/step1.c:3:5: erro: redefinição de 'principal' int principal(vazio) ^~~~ No arquivo incluído em step1/step1.c:1:0: step1/../fun.h:13:5: nota: a definição anterior de 'principal' estava aqui int principal() ^~~~
Quando me deparei com dúvidas sobre recursão em Touge e OJ, o compilador que acompanha o site relatou o erro acima.
O tópico é o seguinte: Escreva uma função recursiva que possa gerar os dígitos de um número inteiro de vários dígitos em ordem positiva.
#include<stdio.h>
void printDigit(int n)
{
if (n > 9)
{
printDigit(n / 10);
}
printf("%d ", n % 10);
}
int main()
{
int n = 0;
scanf("%d", &n);
printDigit(n);
}
O acima é o código que escrevi e o seguinte é o código corrigido.
void printDigit(int n)
{
if (n > 9)
{
printDigit(n / 10);
}
printf("%d ", n % 10);
}
A simples exclusão da função principal resolverá o problema, pois a compilação online que acompanha o site inclui a função principal.