C/Visual C - Ayuda con Arreglos

 
Vista:

Ayuda con Arreglos

Publicado por Andres (3 intervenciones) el 07/11/2007 17:41:47
hola tengo que hacer un programa que lea un numero de X longitud y tengo ke regresar ese mismo numero a la inversa. tengo este codigo pero me esta dando problemas, alguien ke me ayude.

muchas grax!!

#include<stdio.h>
int main(void)
{
char *arr;
char num;
int n=0,i=0,j=0,tmp=0;
printf("De longitud va a ser El Numero que vas a ingresar: ");
scanf("%d", &n);
arr=malloc(n*sizeof(int));
printf("introduce el numero que vasmoa invertir: \n");
do
{
num=getchar();
if(num>='0'&&num<='9')
{
arr[i]=num;
i++;
}
}
while(num!='\n');
for(j=i; j>0; j--)
{
i=0;
while(i<=n)
{
if(arr[i]>arr[i+1])
{
tmp = arr[i];
arr[i]=arr[i+1];
arr[i+1]=tmp;
}
i++;
}
}
for(i=0; i<=n; i++)
{
printf("%d", arr[i]);
}
printf("\n");
}
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Ayuda con Arreglos

Publicado por Nelek (816 intervenciones) el 09/11/2007 07:45:55
Al primer mensaje, el del datawindows... podrías poner un poco de codigo? Si estas guardando una estructura identificada con un codigo y logras leer el codigo no deberia ser dificil tomar los otros datos para presentarlos.



Al segundo mensaje...

if(arr[i]>arr[i+1])

Esto lo que hace es ordenar los numeros de mayor a menor. Si ya sabes que "n" es el largo del numero en cifras... no te compliques tanto.
Prueba:

for (j = 0; j < n j++)
{
aOriginal [ j ] = aInvertido [ n - (j + 1)];
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar