ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

Funciones en C/C++


Enviado por   •  3 de Junio de 2017  •  Práctica o problema  •  1.880 Palabras (8 Páginas)  •  207 Visitas

Página 1 de 8

Funciones en C/C++

A la hora de trabajar en un programa de una cierta complejidad es importante modularizar el código, para esto se divide secciones de código que van a ser reutilizada en diferentes funciones,  estas realizan una tarea específica, esto permite un código mucho más legible, prolijo y que no repite líneas de código.

Declaración de una función:

tipo_retorno nombreDeLaFuncion(tipo variable1, tipo variable2){

                código…

}

Donde:

tipo_retorno es el tipo de dato que va a devolver la función, estos pueden ser: int, float, bool, void(vacio no devuelve nada), char, etc. NO se pueden devolver arrays de una función.

nobreDeLaFuncion: aquí pondremos el nombre con el que queramos llamar a la función.

tipo variable1 : pondremos el nombre que tendrá la variable dentro de la función y el tipo de dato que contiene, por ejemplo: (numero int).

Ejemplo de una función que suma dos números y devuelve el resultado:

Ej codigo:

#include

int suma(int a,int b);    // arriba siempre es necesario declarar la existencia de la función por esto se agrega

                                        // esta línea de código en el encabezado del programa por cada función creada.

int suma(int a,int b){    // defino mi función

 

    int resul;                   //código de la función

    resul=a+b;

    return resul;           // devuelvo el resultado de la suma

}

int main()  //programa principal

{

    int num1=20;

    int num2=14;

    int resultado;

    resultado = suma(num1,num2); // llamo a la función que definí para q realice la suma

    printf("%d",resultado);

    return 0;  

}

Otro ej:

#include

void saludo(char nombre[]);         //declaro las dos funciones en el encabezado

int promedio(int arr[10]);

void saludo(char nombre[]){  //función que recibe un nombre en un array

                                                    //e imprime un msj saludando ese nombre

    printf("*********************************\n");

    printf("hola %s, como estas?\n",nombre);

    printf("*********************************");

    printf("\n\n\n");

}                                                     //esta función no devuelve nada por eso no tiene return.

int promedio(int arr[10]){     //otra función que calcula el promedio de los números de un array de 10 elementos

    int i;

    int suma=0;                        //inicializo las variables

    int prom=0;

    for (i=0; i<10;i++){             //recorro el array y voy totalizando

        suma = suma + arr[i];

    }

    prom = suma / 10;          //calculo el promedio

    return prom;                    // devuelvo el promedio

}

main(){                                           //programa principal

    char nom[]={"pepe"};                         //creo un array con un nombre

    saludo(nom);                                       //llamo a la función saludo y le paso ese array

    int numeros[10]={5,10,15,25,30,40,50,80,90,35};  //creo un array de 10 enteros

    int prom;

    prom = promedio(numeros);                                   //llamo a la función promedio y guardo el resultado en prom

    printf("promedio del array = %d",prom);                 //imprimo el promedio

}

Pasaje de parámetros en funciones

El pasaje de parámetros se le dice a los valores que le damos a una función para que trabaje con ellos. Estos se pueden pasar de diferentes maneras a una función, en C/C++ hay 3 formar, por valor, por referencia y por punteros.

Las funciones en C/C++ reciben por defecto todas sus variable por valor.

Por valor significa que la función va a copiar los valores de esas variables en nuevas variables con las que va a trabajar en la función, por lo tanto estas variables son “copias” locales a la función que tienen el mismo valor que se les paso por parámetro, cualquier cambio que realicemos a ellas no se ve reflejado en las variables originales.

Ej:

#include

void swap(int a, int b);  

void swap(int a, int b){  //define la función swap que intercambia los valores de a y b

    int tmp;

    tmp = a;

    a=b;

    b=tmp;

    }

int main()

{

    int a=15;

    int b=100;

    printf("valor a y b antes de swap: %d %d\n",a,b);

    swap(a,b);

    printf("valor a y b después de swap: %d %d",a,b);

    return 0;

}

...

Descargar como (para miembros actualizados) txt (8 Kb) pdf (51 Kb) docx (14 Kb)
Leer 7 páginas más »
Disponible sólo en Clubensayos.com