Ver Mensaje Individual
  #1 (permalink)  
Antiguo 27/06/2013, 08:13
jesm1294
 
Fecha de Ingreso: junio-2013
Mensajes: 2
Antigüedad: 10 años, 10 meses
Puntos: 0
Programa que se congela a ejecutar

Buenas, me llamo Julio, soy de Panamá y es mi primer post (Disculpen por errores). Mi problema es la ejecucion de este programa, se me congela.

Código C:
Ver original
  1. #include<conio.h>
  2. #include<stdio.h>
  3.  
  4. int main()
  5. {int j, cont=0, conta=0;
  6. int tabla[10];
  7.  
  8. for(j=0;j<=10;j++)
  9.   {tabla[j]=0;}
  10.  
  11. for(j=1;j<=10;j++)
  12.  {cont=cont+1;
  13.   printf("\n Asiento#%d \t %d", cont, tabla[j]);}
  14.  
  15. while(conta<=10)
  16. {printf("\n \n BIENVENIDO(A)");
  17. printf("\n \n Introduzca el numero de puesto deseado:");
  18. scanf("%d", j);
  19.  
  20. if (tabla[j]==0)
  21. {printf("Su puesto esta reservado \n");
  22. tabla[j]=1;
  23. conta=conta+1;}
  24.  
  25. else {printf("El puesto esta ocupado \n");}
  26. }
  27.  
  28. printf("\n El bus esta lleno");
  29.  
  30. return 0;
  31.  
  32. }

En secuencia el programa debe hacer esto: Generar un arreglo con 0 para representar los diez puestos vacíos. Luego preguntar asientos para ir llenando, si se repite algún numero decir que ya esta ocupado. Cuando el bus esta lleno imprimirlo en pantalla.

El problema radica en la ejecución, el programa corre hasta que me pregunta el numero de puesto, a partir de ahí introduzco el puesto y se congela (no sigue).

Pensé que mi error en la lectura de la posición, es decir si marcaba el puesto 9, se iba a la posición 9 donde dice "Asiento #9 0" y me iba leer todo eso (Incluyendo asiento#9) y por supuesto me tiraría error, sin embargo elimine esa palabra y nada seguía sin ejecutarme por completo.

El profesor quiere que utilice solo arreglos unidimensionale, pero si no hay mas solución me pueden dar la solución con bidimensional (Que era lo que quería hacer). Soy principiante xD y uso Dev C++