Sie sind auf Seite 1von 3

Estructura de un programa en C

# include Directivas del preprocesador


# define Macros del procesador

Declaraciones Globales:
 Prototipos de funciones
 Variables globales

Función Principal main


main ( )
{
Declaraciones Locales
Sentencias
}

Funciones definidas por el Usuario

Tipo_valor_devuelto nombre_ funcion1(lista opcional de parámetros)


{
declaraciones locales
sentencias
}

Tipo_valor_devuelto nombre_ funcion2(lista opcional de parámetros)


{
declaraciones locales
sentencias
}
.
.
.

FUNCIONES EN C
Todo compilador trae una gran cantidad de Librerías, por ejemplo: matemáticas, de entrada-salida, de manejo de textos, de manejo de
gráficos, etc, que solucionan la mayor parte de los problemas básicos de programación . Ejemplos:
clrscr(); getch(); printf(); scanf(); return() //son funciones predefinidas.

Sin embargo será inevitable que en algún momento se tengan que crear funciones propias.

Defnición de Función:
Una función es una sección de código independiente, con nombre, que ejecuta una tarea específica y opcionalmente devuelve un valor al
programa que la llamó. En general toma unos valores de entrada, llamados parámetros y proporcionan un valor de salida o valor de retorno;
aunque tanto unos como el otro pueden no existir.

El formato general de una función en C es:

especificador_de_tipo nombre_de_función( lista_de_parámetros ) {


//variables locales
//código de la función
//valor de retorno (opcional)
}

El especificador_de_tipo indica el tipo del valor que la función devolverá mediante el uso de return. El valor puede ser de cualquier tipo
válido. Si no se específica un valor, entonces la computadora asume por defecto que la función devolverá un resultado entero. No se tienen
siempre que incluir parámetros en una función. la lista de parámetros puede estar vacía.
Las funciones terminan y regresan automáticamente al lugar de donde se les llamó cuando se encuentra la última llave }, o bien, se puede
forzar el regreso antes usando la sentencia return. Además del uso señalado la función return se usa para devolver un valor.

ITC / Tema: Funciones en C / M.A. Yolanda Terán Salgado / 15 de abril de 2011 1


Declaración de funciones:
Antes de escribir una función, es necesario informarle al Compilador los tamaños de los valores con los que trabajará la función y el tamaño
de los valores que ella retornará al programa invocante . Estas informaciones están contenidas en la DECLARACION del PROTOTIPO de la
FUNCION. Formalmente dicha declaración es la siguiente :
tipo del valor de retorno nombre_de_la_función(lista de tipos de parámetros); //prototipo

Ejemplos de declaraciones: (prototipos de funciones) :

float mi_funcion(int i, double j ) ;


double otra_funcion(void) ;
otra_mas(long p) ;
void la_ultima(long double z, char y, int x, unsigned long w) ;

Definición de las Funciones:


La definición de una función puede ubicarse en cualquier lugar del programa, con sólo dos restricciones:
● debe hallarse después de dar su prototipo, y
● no puede estar dentro de la definición de otra función ( incluida main() ). Es decir que , en C las definiciones no pueden anidarse.
NOTA: no confundir definición con llamada; una función puede llamar a tantas otras como desee .

La definición debe comenzar con un encabezamiento, que debe coincidir totalmente con el prototipo declarado para la misma, y a
continuación del mismo, encerradas por llaves se escribirán las sentencias que la componen; por ejemplo:

#include <stdio.h>

float mi_funcion(int i, float j ); // DECLARACION (prototipo) observe que termina en ";"

main() {
float k ; int p ; float z ;
k = mi_funcion( p, z ); // LLAMADA o invocación a la función
printf(“\n cálculo en función es = %f”, k);
} // fin de la función main()

float mi_funcion(int i, float j ) { DEFINICION observe que NO lleva ";"


float res;
printf("llegó: %d", i ); // LLAMADA a otra función predefinida
res=2*j;
return (res); //RETORNO devolviendo un valor float
}

A continuación se muestran ejemplos de cómo se organiza un programa con funciones. Algunos de estos programas ya fueron elaborados,
pero todo el código estaba dentro del main(). Ahora se organizará, de tal forma que las funciones realicen tareas específicas.

Funciones void (no se envía información a la función y la función no regresan información)


Las funciones void dan una forma de simular, lo que en otros lenguajes se conocen como procedimientos (por ejemplo, en PASCAL). Se
usan cuando no requiere regresar un valor. Se muestra un ejemplo que imprime los cuadrados de ciertos números.
//librerías
void cuadrados(); //prototipo de la función definida
void cuadrados() {
int contador;
for( contador=1; contador<10; contador++)
printf("%d\n",contador*contador);
}

main() {
cuadrados();
getch();
}

ITC / Tema: Funciones en C / M.A. Yolanda Terán Salgado / 15 de abril de 2011 2


En la función cuadrados no está definido ningún parámetro, y por otra parte tampoco se emplea la sentencia return para regresar información
de la función al programa principal.
A continuación se muestra un ejemplo que encuentra el promedio de dos enteros:
//librerías
//prototipo de la función
int encontrarProm(int num1, int num2)
{
int promedio;
promedio = (num1 + num2) / 2;
return(promedio);
}

main()
{
int a=7, b=10;
int resultado;
resultado = encontrarProm(a, b);
printf("Promedio=%f\n",resultado);
getch();
}

El siguiente programa calcula el cubo de los números del 1 al 5 utilizando una función definida por el usuario.

NOTA: Pasar los programas elaborados durante el curso, a programas con funciones con las siguientes características:
● que cuando se invoque a la función se envíe información, o
● que la función después de ejecutarse regrese información, o
● que se le envíe información a la función y que la función a su vez regrese información, o
● que no se le envíe información a la función y que la función a su vez, no regrese información.

ITC / Tema: Funciones en C / M.A. Yolanda Terán Salgado / 15 de abril de 2011 3

Das könnte Ihnen auch gefallen