Almacenar de N números en un vector, almacenarlos en otro vector en orden inverso al vector original e imprimir el vector resultante.
ejemplo
ingresa 3 números
los números serian
6
9
4
el inverso seria
4
9
6
el error esta en la inversión del vector. solo me devuelve una parte de los números
solo me muestra bien los do primeros números y el resto números muy grandes
esto es lo que me muestra en mi resultado
ejemplo
ingresa 3 números
los números serian
6
9
4
el inverso seria
9
6
1769860606
tengo esto hecho
#include "iostream"
#include "stdio.h"
#include "stdlib.h"
#include "string.h"
#include "time.h"
int main()
{
int i,j,h,v1[i],v2[h];
printf("cuanto numeros desea capturar en el vector \n");
scanf("%d",&h);
for(i=0;i<h;i++)
{
printf("Digite el Numero del vector[%d]: ",i);
scanf("%d",&v1[i]);
v2[j]=v1[i];
j--;
}
printf("Vector a la Inversa \n");
for (j=0;j<h;j++)
{
printf("%d \n",v2[j]);
}
}
Mod: Los códigos deben ir en etiquetas GeSHi
Pusiste:
v2[j]=v1;
j--;
En el "for i=0". j no está inicializada. Querrías decir i?
Porque editas tu post cuando se revuelve la duda?
int i,j,h,v1[i],v2[h];
Ahí tampoco inicializas i y h, así que los vectores serán de un tamaño indefinido. Revisa todo el código.
Aparte de lo que te comentan arriba, te has complicado mucho la vida... ;D
#include <stdio.h>
int main() {
int tam;
printf("Ingrese cuantos numeros desea en el vector: ");
scanf("%d", &tam);
int vec[tam];
for(int i = 0; i < tam; i++) {
printf("Ingresa el numero del vector[%d]: ", i);
scanf("%d", &vec[i]);
}
printf("\n\nVector Inverso\n");
for(int i = tam-1; i >=0; i--) { //Se inicia desde el tamaño del vecotr -1 que es la posicion final
//y se va disminuyendo hasta 0 que es la posicion inicial
printf("%d\n", vec[i]);
}
}