Foro de elhacker.net

Programación => Ejercicios => Mensaje iniciado por: RadicalEd en 21 Septiembre 2005, 22:11 pm



Título: ejercicio 305
Publicado por: RadicalEd en 21 Septiembre 2005, 22:11 pm
Código:
/*Escribir un programa que permita agregar nº enteros a una lista de números aceptada por teclado. El programa pregunta si debe agregar al principio, al 
final o en el medio y agrega el elemento a la lista.*/
#include <stdio.h>
#include <windows.h>
int iArray[10],iCon;
//int iMed,iIni,iFin;
int inicio(int iVal)
{
 iArray[0]=iVal;
 return 1;
}
int medio(int iVal)//funcion sin comenzar
{
 iArray[10/2]=iVal;
 return 1;
}
int final(int iVal)
{
 iArray[10]=iVal;
 return 1;
}
void mostrar()
{
 for(iCon=0;iCon<=9;iCon++)
 {
  printf("%d\n",iArray[iCon]);
 }   
}
int main(void)
{
 int op;
// iArray[2,8,6];
 for(iCon=0;iCon<=9;iCon++)
 {
  printf("Digita %d numero: ",iCon+1);
  scanf("%d",&iArray[iCon]);
  printf("Posicion \n1(Principio) \n2(Medio) \n3(Final) \n4(Mostrar) \nEscoger: ");
  scanf("%d",&op);
  switch(op)
  {
   case 1: inicio(iArray[iCon]);
        break;
   case 2: medio(iArray[iCon]);
        break;
   case 3: final(iArray[iCon]);
        break;         
   case 4: mostrar();
  }
 }
 mostrar();
 Sleep(2000);
}
Lo que pasa es que lo unico que arregla es el ultimo valor que agregue, osea, si lo pongo a inicio, a final o medio, pero los primeros que coloco nada, no los acomoda.