Para no hacer muy largo el mensaje pues resumiré diciendo que estoy estudiando electrónica y estoy cursando programación (aunque en 2 semanas termina el semestre). Sin embargo desde que entramos a arreglos he tenido ciertos problemas para entender y problemas en mis programas, lo de entender lo resolví más o menos estudiando pero mis programas fallan mucho por cosas que de plano no entiendo o no encuentro error. Este es el programa que necesito corregir:
Código
#include <stdio.h> #include <stdlib.h> #include <string.h> int main() { int temp; int sp, p, can, i; int * datos=NULL; char cambios; for (i=1; i<=can; i++) { } do { for(p=0, sp=p+1, cambios='n'; p<=(can-1); p++) { temp=datos[p]; datos[p]= datos[sp]; datos[sp]=temp; cambios='s'; } } while (cambios=='s'); for(i=1; i<=can; i++) { } return 0; }
El problema es que originalmente me decía que no podía convertir un valor void a int pero era debido a que por error lo guardé como c++ y no como c, al cambiarlo se resolvió pero surgió el problema de que cuando lo corro despues de ingresar el número de dígitos que quiero utilizar e ingreso los dígitos el programa deja de funcionar y no encuentro por que. El programa, en teoría, debería dejar que uno introduzca la cantidad de dígitos que quiera y posteriormente introducir los respectivos dígitos; despues bebería organizarlos en el vector horizontal los dígitos de menor a mayor para que si digo que quiero 3 dígitos e introduzco 3, 7 y 1 deberían terminar como 1, 3 y 7 en el arreglo.
Perdón si mi petición tiene un formato muy simple pero la verdad hace tiempo que no entro a los foros y estoy algo oxidado en darles formato jaja.
Mod: Código corregido con etiquetas GeSHi para hacerlo más legible