• Viernes 26 de Abril de 2024, 20:37

Autor Tema:  Regresar vector lleno de una funcion a la función principal  (Leído 2057 veces)

RAB

  • Nuevo Miembro
  • *
  • Mensajes: 11
    • Ver Perfil
Regresar vector lleno de una funcion a la función principal
« en: Viernes 26 de Noviembre de 2010, 23:55 »
0
Bueno lo que pasa es que no entiendo (en realidad no sé) como pasar un vector de una función a la función principal y de ahí usarla en otra función.

Voy a poner un ejemplo sencillo solo para ver si se capto bien la idea.

Código: C
  1.  
  2. #include <stdio.h>
  3.  
  4.  
  5. int relle_vector(int vector[])
  6. {
  7.        
  8.         printf("Primero: ");
  9.         scanf("%d", &vector[0]);
  10.         printf("Segundo: ");
  11.         scanf("%d", &vector[1]);
  12.        
  13.         //Aqui es donde no se como regresar el vector lleno
  14.         return vector;
  15. }
  16.  
  17. int menor(int vector[])
  18. {
  19.         int menor;
  20.        
  21.         if(vector[0]>vector[1])
  22.         {
  23.                 menor=vector[0];
  24.         }
  25.         else
  26.         {
  27.                 menor = vector[1];
  28.         }
  29.  
  30.         return menor;
  31. }
  32.        
  33. int main(int argc, char *argv[])
  34. {
  35.         int vector[2];
  36.         int vec2[2];
  37.        
  38.         printf("Escriba dos numeros");  
  39.                      
  40.         vector[2] = relle_vector(vec2);
  41.        
  42.         printf("El numero menor es %dn", menor(vector));
  43.        
  44.         return 0;
  45. }
  46.  
  47.  

Como dije el ejemplo tal vez no tenga mucho sentido pero es solo para entender como pasar regresar el vector lleno.

cualquier sugerencia es bienvenida  ^_^

m0skit0

  • Miembro de PLATA
  • *****
  • Mensajes: 2337
  • Nacionalidad: ma
    • Ver Perfil
    • http://fr33kk0mpu73r.blogspot.com/
Re: Regresar vector lleno de una funcion a la función principal
« Respuesta #1 en: Sábado 27 de Noviembre de 2010, 15:47 »
0
No lo he probado, pero debería funcionar:

Código: C
  1. #include <stdio.h>
  2.  
  3. void relle_vector(int vector[])
  4. {
  5.        
  6.         printf("Primero: ");
  7.         scanf("%d", &vector[0]);
  8.         printf("Segundo: ");
  9.         scanf("%d", &vector[1]);
  10. }
  11.  
  12. int menor(int vector[])
  13. {
  14.         int menor;
  15.        
  16.         if(vector[0]>vector[1])
  17.         {
  18.                 menor=vector[0];
  19.         }
  20.         else
  21.         {
  22.                 menor = vector[1];
  23.         }
  24.  
  25.         return menor;
  26. }
  27.        
  28. int main(int argc, char *argv[])
  29. {
  30.         int vector[2];
  31.        
  32.         printf("Escriba dos numeros");  
  33.                      
  34.         relle_vector(vector);
  35.        
  36.         printf("El numero menor es %dn", menor(vector));
  37.        
  38.         return 0;
  39. }
  40.  
Un vector y un puntero son lo mismo en C.

RAB

  • Nuevo Miembro
  • *
  • Mensajes: 11
    • Ver Perfil
Re: Regresar vector lleno de una funcion a la función principal
« Respuesta #2 en: Sábado 27 de Noviembre de 2010, 20:51 »
0
Gracias, me sirvió perfecto y entendí muy bien lo de los vectores  :good: