LordGutts 0 Denunciar post Postado Maio 21, 2016 Amigos preciso de ajuda para inveter a ordem de um vetor dentro de uma função, acredito que a lógica da função está certa mas não entendo porque não está invertendo. #include <stdio.h> void inverso(int pvet[], int pt); int main () { int vet[10], i; for(i= 0; i < 10; i++) { printf("Digite Vetor[%d]: ", i); scanf("%d", &vet[i]); } inverso(vet, 10); for(x= 0; x < 10; x++) printf("Digite Vetor[%d]: %d \n", x, vet[x]); getchar(); return 0; } void inverso(int pvet[], int pt) { int aux, x, j; j = 9; for(x=0;x<pt;x++) { aux = pvet[x]; pvet[x] = pvet[j]; pvet[j] = aux; j--; } printf("\n"); } Compartilhar este post Link para o post Compartilhar em outros sites
_Isis_ 202 Denunciar post Postado Maio 21, 2016 Execute esse programa na mão. O que acontece quando se chega na metade do array? Compartilhar este post Link para o post Compartilhar em outros sites
LordGutts 0 Denunciar post Postado Maio 21, 2016 Execute esse programa na mão. O que acontece quando se chega na metade do array? Nossa amigo muito obrigado eu coloquei i < pt isso faz acarreta numa repetição depois da metade. Aproveitando o tópico e a sua ajuda sabe me informar um livro para estudar melhor endereçamento de memória, estou tendo sérias dificuldades para entender os tipos de variáveis e suas capacidades. Compartilhar este post Link para o post Compartilhar em outros sites