Duvida sobre esse programa em C

1 resposta
c
J

Boa tarde, estou com duvidas referente a esse programa que fiz de maneira recursiva.

#include<stdio.h>
# define TAM 5

int vetor [TAM];

main()
{
    int num;
    preencher_vetor(num);
    soma_vetor(num);
    mostrar_vetor(num);
}

preencher_vetor(int vet[], int i)
{
    for(i=0; i<TAM; i++)
    {
        printf("Digite valores para o vetor: ",+i);
        scanf("%d",&vetor[i]);
    }

}

soma_vetor(int vet[], int n)
{
    if(n==0)
    {
        return 0;
    }
    else
    {
        return(vet[n-1]+soma_vetor(vet,n-1));
    }
}

mostrar_vetor(int vet[], int n)
{
    int i;
    for (i=0; i<10; i++)
    {
        printf("%d", vet[i]);
    }
}

Eu executo ele, passa lendo os numeros do vetor, só que não passa nas outras funçoes, simplismente ele para a execução e trava. Alguem poderia me explicar?Texto pré-formatado

1 Resposta

staroski

Quando postar código aqui no fórum, indenta ele, seleciona o código e clica no botão </> senão fica péssimo de ler seu código.

De início dá pra ver que há alguns erros semânticos no seu programa:

  • a função preencher_vetor foi declarada para receber um vetor de int e um int por parâmetro;

  • a função soma_vetor foi declarada para receber um vetor de int e um int por parâmetro;

  • a função mostrar_vetor foi declarada para receber um vetor de int e um int por parâmetro;

Mas acontece que na função main você só passa um parâmetro int para elas.

Criado 5 de junho de 2019
Ultima resposta 5 de jun. de 2019
Respostas 1
Participantes 2