Olá, tenho esse código onde uma função recursiva recebe um vetor de 6 elementos e devolve na tela os valores do vetor na ordem original e na ordem invertida; Consegui mostra os valores na ordem original, mas na ordem invertida está bugando... alguém pode dá uma olhada nisso e identificar onde está o erro?
#include <stdio.h>
int pos=0;
int inv(int num,int vet[]){
if(num <= pos){
return vet;
}else{
int aux = vet[num];
vet[num] = vet[pos];
vet[pos] = aux;
pos++;
return inv(--num, vet);
}
}
main(){
int i, p = 6;
int vet[6]={5,1,8,7,2,0};
printf("Ordem original:");
for (i=0;i<p;i++)
{
printf("%d",vet[i]);
}
int *veti = inv(p,vet);
printf("\nOrdem invertida:");
for (i=0;i<p;i++){
printf("%d", veti[i]);
}
}
Pergunta
alexandre henrique
Olá, tenho esse código onde uma função recursiva recebe um vetor de 6 elementos e devolve na tela os valores do vetor na ordem original e na ordem invertida;
Consegui mostra os valores na ordem original, mas na ordem invertida está bugando... alguém pode dá uma olhada nisso e identificar onde está o erro?
Link para o comentário
Compartilhar em outros sites
1 resposta a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.