Sunteți pe pagina 1din 11

BIENVENIDO A LA CLASE DE INSTRUCCIONES BASICAS EN LENGUAJE C

El Lenguaje C es un Lenguaje estrechamente relacionado con el Sistema Operativo UNIX, debido a que este Sistema Operativo fue escrito en C. Sin embargo, es un lenguaje de uso general, ya que no est ligado a ningn sistema operativo mquina concreta, lo que permite la portabilidad de programas escritos en l. El Lenguaje C no es un lenguaje fuertemente estructurado tal como el lenguaje Pascal. Al igual que otros lenguajes tienes sus inconvenientes, no obstante, es extremadamente eficaz y expresivo para una extensa gama de aplicaciones de programacin.

AHORA DAREMOS INICIO A LA CLASE REFERENTE A LA ESTRUCTURA DE UN PROGRAMA EN C Introduccin a la Clase


Antes de tratar el tema de la Estructura de un programa en Lenguaje C es conveniente repasar algunos conceptos ya vistos. Recuerdas que es un algoritmo?

Es una secuencia de pasos lgicos para realizar una tarea especfica como la solucin de un
problema. Bien. Y qu es una variable?

Es una localidad de memoria, donde se guarda un valor


Sera bueno recordar a que se refieren los trminos programa fuente, programa objeto y compilacin.

Programa Fuente es el resultado de traducir un algoritmo en un lenguaje de programacin. No es


ejecutable directamente por el computador.

La Compilacin es la conversin del programa fuente en un programa objeto. Y el Programa Objeto es un programa escrito en lenguaje de mquina, que resulta de la
compilacin de un programa fuente. Es un programa ejecutable directamente por el computador. Que tal si mencionamos los pasos para resolver un problema con el computador:

Leemos el enunciado del problema. Hacemos el anlisis respectivo. Escribimos el algoritmo que resuelve el problema. Hacemos la prueba de escritorio o corrida en fro del algoritmo para verificar si funciona. Escribimos el programa fuente, es decir, codificamos el algoritmo con un lenguaje de
programacin.

Compilamos el programa fuente. Ejecutamos o corremos el programa en el computador para obtener el resultado deseado.
Pues bien, hasta ahora solo hemos elaborado algoritmos, ahora para convertir esos algoritmos en programas que puedan ser probados en el computador, vamos a recurrir al Lenguaje de Programacin C. En esta clase veremos las instrucciones bsicas de este lenguaje.

Estructuras Bsicas de Programacin

Cuerpo la Clase
Tenemos el siguiente algoritmo para calcular en mayor (may) entre tres nmeros enteros (ent1, ent2, ent3):

INICIO del algoritmo mayor DEFINIR ENTERO: ent1, ent2, ent3, may ESCRIBIR Ingrese 3 nmeros enteros diferentes LEER ent1, ent2, ent3 Si ent1 > ent2 ENTONCES may ent1 CASO CONTRARIO may ent2 FIN SI SI ent3 > may ENTONCES may ent3 FIN SI ESCRIBIR EL MAYOR ENTRE , ent1, , ent2, y ent3, es , may FIN

Ahora, vamos a observar este algoritmo convertido en un programa en Lenguaje C.


/* Programa No. 1: Programa que calcula el mayor entre 3 enteros # include <stdio.h > void main( ) { int ent1, ent2, ent3, may; printf(Ingrese 3 nmeros enteros: ); scanf(%d %d %d , &ent1, &ent2, &ent3 ); if ( ent1 > ent2 ) may = ent1; else may = ent2; if ( ent3 > may ) may = ent3; printf( El mayor entre %d, %d y %d es: %d , ent1, ent2, ent3, may); } */

La primera lnea:
/* Programa que calcula el mayor entre 3 enteros */

Es el comentario inicial que indica lo que hace el programa. Los comentarios comienzan con /* y terminan con */ , para indicar que no es cdigo ejecutable, sino comentarios para documentar el programa, por lo cual son ignoradas por el compilador. Son opcionales, sin embargo, es recomendable incluirlos.

Elaborado por: .........................................................................................NEREYDA CARRERO MIRANDA

Estructuras Bsicas de Programacin

El rea del programa entre el comentario inicial y la lnea de inicio de la funcin principal main, se conoce como Area de Declaraciones Globales, la cual incluye: Declaracin de directrices del preprocesador, declaracin de prototipos de funciones y declaracin de variables globales. La segunda lnea del programa:
# include <stdio.h >

Pertenece a las declaraciones de Directrices del Preprocesador. Las directrices son lneas que se inician con el signo # y son procesadas por el pre-procesador de C, antes de la compilacin del programa. Las directrices mas usadas son: # include # define /* Directriz de inclusin */ /* Directriz de sustitucin */

La instruccin # include <stdio.h> Le indica al pre-procesador que incluya dentro del programa el contenido del archivo de cabecera de entrada/salida estndar (stdio.h). Este archivo de cabecera contiene la informacin y declaraciones utilizadas por el compilador al compilar funciones estndar de biblioteca de entrada/salida como printf. Tambin contiene informacin que ayuda al compilador a determinar si las llamadas a las funciones de biblioteca han sido escritas de manera correcta. La directriz # define crea constantes simblicas. Ej: La instruccin # define NUM 100 Define la constante simblica NUM cuyo valor es 100.

La siguiente lnea del programa:


void main( ) {

Indica la definicin de la Funcin Principal. Es un rea obligatoria dado que todo programa en C comienza su ejecucin con esta funcin. Incluye lo siguiente: void main( ) { Lista de declaracin de variables Sentencias y operaciones asociadas al cuerpo de la funcin

}
La lnea void main( ) forma parte de todo programa en C. Los parntesis despus de main indican que es una funcin. La llave de la siguiente lnea { inicia el cuerpo de la funcin y la llave derecha } correspondiente a la ltima lnea indica el fin de la funcin.

Elaborado por: .........................................................................................NEREYDA CARRERO MIRANDA

Estructuras Bsicas de Programacin

A continuacin en el programa est la lista de Declaracin de Variables:


int ent1, ent2, ent3, may;

La declaracin de variables debe ser colocada despus de la llave izquierda de una funcin y antes de cualquier enunciado ejecutable. Todas las variables deben declararse colocando el tipo de dato y el nombre, antes de que puedan ser utilizadas en el programa. Los nombres identificadores de las variables, al igual que los nombres de las constantes, arreglos y funciones, deben seguir unas reglas que usted debe consultar en la gua del curso.

Los tipos bsicos de datos en C son: int:para los nmeros enteros. char : float: para un carcter . para nmeros en punto flotante y precisin normal.

double: para nmeros en punto flotante de doble precisin. Cada uno de estos datos ocupa un espacio de memoria definido en bytes y aceptan unos modificadores que usted deber consultar en la gua del curso.

A continuacin en el programa sigue la lnea:


printf(Ingrese 3 nmeros enteros: );

La funcin printf imprime una cadena de caracteres sobre la pantalla del computador. Est definida en la biblioteca stdio.h , razn por la cual, si se va a utilizar en el programa, se debe incluir mediante # include <stdio.h> La funcin printf tiene dos argumentos: printf( cadena de formato, var1,...,varn ) El primer argumento, cadena de formato, contiene los especificadores de formato para las variables que se van a imprimir y algn texto opcional. El segundo argumento, es la lista de variables, constantes, expresiones que se van a imprimir. Ejemplo: printf( \ n Nombre del Cliente:%s ,nombre ); Cuando la funcin printf es invocada por el programa, se desplegarn los caracteres literales que no estn precedidos por el smbolo %, que se encuentran en la cadena de formato. Los especificadores de formato precedidos por el signo % indican que debe imprimirse la respectiva variable del segundo argumento. En el ejemplo se imprimir Nombre del Cliente: y en el lugar ocupado por %s se imprimir el valor de la variable nombre. Por tanto, el nmero de especificadores de formato debe coincidir con el nmero de variables. Los caracteres \n tampoco se imprimen pues corresponden a una secuencia de escape que indica la realizacin de un salto de lnea. Consulte en el texto o en la gua del curso otras secuencias de escape y el especificador de formato para cada tipo de dato.

Elaborado por: .........................................................................................NEREYDA CARRERO MIRANDA

Estructuras Bsicas de Programacin

La siguiente lnea del programa es:


scanf(%d %d %d , &ent1, &ent2, &ent3 );

La funcin scanf permite leer datos. Trabaja con la direccin de las variables en que se almacenan los datos. El operador & es utilizado para indicar la direccin de memoria de la variable. Cada instruccin scanf contiene una cadena de control de formato que describe el especificador de formato de los datos que se leen. Y contiene adems, la respectiva lista de variables donde se almacenan los datos ledos. En la instruccin: scanf( %d%f, &edad, &sueldo)

El %d indica que se leer un dato tipo entero que se almacenar en la direccin de memoria de la variable edad. El %f indica que se leer un dato tipo real que se almacenar en la direccin de memoria de la variable sueldo. En la lnea del programa scanf(%d %d %d , &ent1, &ent2, &ent3 ); se leen los tres valores enteros.

Las siguientes instrucciones del programa implican el uso de las estructuras de seleccin o instrucciones de toma de decisin.
if ( ent1 > ent2 ) may = ent1; else may = ent2; if ( ent3 > may ) may = ent3;

La instruccin if else Se utiliza para representar tomas de decisin simple o doble. Si la toma de decisin es simple se escribe: if ( condicin ) { Instruccin o grupo de instrucciones } La condicin debe estar encerrada entre parntesis. La estructura if ejecuta la instruccin(es) indicadas entre llaves solo cuando la condicin es verdadera, de lo contrario la instruccin(es) es pasada por alto. Si se trata de una sola instruccin a ejecutar en caso de que la condicin sea verdadera, se pueden omitir las llaves. Ejemplo: if ( ent3 > may ) may = ent3; Si el nmero ent3 es mayor que el valor guardado en may, la condicin es verdadera. Por tanto, en may se almacena el valor de ent3, y pasa a la ejecucin de la siguiente instruccin en el programa. Si may no es mayor que ent3 la condicin es falsa, por tanto, ignora la instruccin may = ent3; y pasa a la siguiente instruccin en el programa.

Elaborado por: .........................................................................................NEREYDA CARRERO MIRANDA

Estructuras Bsicas de Programacin

Si la toma de decisin es doble, se escribe: if ( condicin ) instruccin(es)1; else instruccin(es)2; La estructura if else permite especificar que se ejecuten acciones distintas cuando la condicin sea verdadera, que cuando sea falsa. Ejemplo: if ( ent1 > ent2 ) may = ent1; else may = ent2; Si ent1 es mayor que ent2 entonces en may se almacena el valor de ent1, si ent1 no es mayor que ent2, entonces en may se almacena el valor de ent2.

Las ltimas instrucciones:


printf( El mayor entre %d, %d y %d es: %d , ent1, ent2, ent3, may); }

Imprimen la salida del mayor de los tres nmeros y cierra la llave de la funcin main. A continuacin, observa el siguiente programa que cuenta las repeticiones de un ciclo mientras.
/* Programa No. 2: Programa de Repeticin Controlada por contador */

# include < stdio.h > void main ( ) { int contador = 0; while ( contador < 10 ) { ++ contador; printf ( %d \ n , contador ); } }

En el programa anterior se introducen las instrucciones:


while ( contador < 10 ) { ++ contador; printf ( Repeticin No. %d \ n , contador ); }

Elaborado por: .........................................................................................NEREYDA CARRERO MIRANDA

Estructuras Bsicas de Programacin

La instruccin while, corresponde al ciclo de repeticin repita mientras y permite la repeticin de un bloque de instrucciones mientras una condicin sea verdadera. Su sintaxis es la siguiente: while ( condicin ) { } La instruccin o grupo de instrucciones que se repiten, constituyen el cuerpo del ciclo. Si el cuerpo del ciclo est formado una instruccin se pueden omitir las llaves ( { } ). La condicin debe ir entre parntesis, y se evala al comienzo del ciclo. Esta instruccin funciona exactamente igual que el ciclo repita mientras estudiado en el parcial anterior. En el caso del Programa No. 2 se evala si el contador es menor que 10. Si es verdadero se incrementa el contador y se imprime el nmero de la repeticin. El ciclo se detiene cuando el contador se hace igual a 10. En Lenguaje C existe otra estructura de repeticin similar a la estructura while. Su sintaxis es la siguiente: do Instruccin(es); while ( condicin ); La condicin debe estar encerrada entre parntesis. La estructura do while prueba la condicin despus de ejecutar el cuerpo del ciclo, por tanto, el cuerpo del ciclo se ejecutar por lo menos una vez. Las instrucciones que pertenecen al cuerpo del ciclo se encuentran entre las palabras reservadas do y while. El cuerpo del ciclo se ejecutar repetidamente mientras la condicin se mantenga verdadera. La otra estructura de repeticin que se corresponde con el ciclo de repeticin automtica es la estructura for. Su sintaxis es la siguiente: for ( expresion1; expresion2; expresion3 ) { } Donde: expresion1: inicializa la variable de control del ciclo expresion2: es la condicin del ciclo expresion3: incrementa la variable de control del ciclo Ejemplo: for ( con = 0; con < 10; con + + ) { } Cuando la instruccin for inicia su ejecucin, la variable con se inicializa en 0. A continuacin se evala la condicin. Si el resultado es verdadero, se ejecuta el cuerpo del ciclo encerrado entre llaves. A continuacin se incrementa la variable con y el ciclo se inicia de nuevo. El ciclo finaliza cuando el resultado de la evaluacin de la condicin se hace falso.
7

Instruccin(es);

Instruccin(es);

++ contador; printf ( %d \ n , contador );

Elaborado por: .........................................................................................NEREYDA CARRERO MIRANDA

Estructuras Bsicas de Programacin

Es recomendable que usted profundice el uso de las estructuras de repeticin en Lenguaje C a travs de la consulta del texto, de la gua y de la ejercitacin prctica en el computador. Ahora, identifica algunas caractersticas comunes entre los dos programas presentados (Programa No. 1 y Programa No. 2):

Los dos programas comienzan con una lnea de comentario, que indica lo que hace el programa
y que est encerrada entre /* y */

Los dos programas tienen al menos una lnea que comienza con el signo # Los dos programas poseen la lnea void main ( ) y a continuacin un conjunto de instrucciones
encerradas entre llaves.

Muy Bien. En este momento estamos listos para detallar las partes fundamentales de todo programa en lenguaje C, destacando las partes que son opcionales y las partes que son obligatorias. La estructura de un programa en Lenguaje C se caracteriza por tener cuatro partes fundamentales: - Comentario Inicial - Area de Declaraciones Globales - Area Principal - Area de Definicin de Funciones Secundarias (Que estudiaremos posteriormente) Observa el siguiente programa: /* Programa para mostrar el postincremento */

# include < stdio.h > int c ; c = 5; printf ( %d \ n , c ); printf ( %d \ n , c ++); printf ( %d \n , c);

Estar bien definida su estructura? Por qu?

No. Porque no incluye el rea principal (void main) que es obligatoria en todo programa.

Elaborado por: .........................................................................................NEREYDA CARRERO MIRANDA

Estructuras Bsicas de Programacin

De acuerdo. Resumiendo, todo programa en C tiene la siguiente estructura:

/*

*/

Comentario Inicial

# include <stdio.h> Area de Declaraciones Globales # define MAX 100 void main( ) {

Area Principal : : }

float area( float x ) :

Area de Funciones Secundarias

Elaborado por: .........................................................................................NEREYDA CARRERO MIRANDA

Estructuras Bsicas de Programacin

Cierre de la Clase
Podras mencionar algunas ventajas de conocer la estructura de un Programa en Lenguaje C?

Una vez que se conoce la estructura de un programa en Lenguaje C, se puede identificar las
partes fundamentales de dicha estructura, presentes en cualquier programa escrito en este lenguaje.

Facilitar la compresin de cualquier programa en este lenguaje. Facilitar el proceso de diseo de programas. Permite evitar errores de programacin.
Dado el siguiente programa, identifica sus partes fundamentales:

/*

Programa que calcula la sumatoria de todos los numeros pares entre 2 y 100

*/

# include < stdio.h > void main ( ) { int n = 2, suma = 0; do { suma = suma + n; n + = 2; } while ( n <= 100 ); printf( La sumatoria de los numeros pares entre 2 y 100 es: %d, suma); }

Identificadas las partes fundamentales del programa, vamos a tomar conciencia de los pasos seguidos para identificar la estructura de un programa escrito en Lenguaje C:

Identificamos primero el comentario inicial, que est encerrado entre /* y */, y que sabemos que
es opcional.

Identificamos las directrices del compilador, es decir, las lneas de programas que comienzan con
el signo #

Verificamos si se hacen declaraciones de variables globales, y prototipo de funcin. Estas


declaraciones las identificamos porque generalmente van despus de las directrices del compilador y antes de la lnea void main( )

Identificamos la funcin principal que comienza con la lnea void main( ), ubicando la llave de inicio
y de cierre del cuerpo de esta funcin.

Determinamos la existencia de definicin de funciones secundarias definidas por el programador.


Estas definiciones generalmente van despus de la llave de cierre de la funcin void main ( )

Elaborado por: .........................................................................................NEREYDA CARRERO MIRANDA

10

Estructuras Bsicas de Programacin

Con frecuencia algunos estudiantes incurren en errores al definir la estructura de un programa en Lenguaje C. Algunos errores frecuentes son:

Omitir la llave de inicio o fin del funcin Principal Olvidar encerrar los comentario entre: /* */, colocarlos en el siguiente orden: */ /* Colocar declaraciones de variables entre enunciados ejecutables Escribir palabras reservadas, es decir, palabras propias del lenguaje con maysculas. Ejemplo:
MAIN

Presentar incoherencia entre la declaracin de una funcin definida por el programador y el


respectivo prototipo de funcin en el rea de Declaraciones Globales (Esto lo estudiaremos a mayor profundidad cuando estudiemos el tema de funciones). Que tal si mencionan algunas aplicaciones de los conocimientos adquiridos acerca de la estructura de un programa en Lenguaje C.

El conocimiento de la Estructura de un programa en Lenguaje C, permite conocer rpidamente que


archivos de cabecera se utilizan, cules funciones han sido definidas por el programador, que variables globales y locales son utilizadas, lo que facilita la comprensin del programa. Para finalizar, es recomendable que usted codifique en Lenguaje C los algoritmos elaborados durante el primer parcial para ejecutarlos en el computador. Adems, se sugiere la revisin de los ejercicios planteados en la seccin de Ejercitacin y Prctica para las instrucciones bsicas del Lenguaje C.

Elaborado por: .........................................................................................NEREYDA CARRERO MIRANDA

11

S-ar putea să vă placă și