erro: redefinição de 'principal'

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.

 

 

 

 

 

 

 

 

 

おすすめ

転載: blog.csdn.net/w2915w/article/details/127634562