Sei sulla pagina 1di 17

Universidad Tcnica de Ambato Facultad de Ciencias Humanas y de la Educacin.

Carrera de Docencia en Informtica

Lenguaje de Programacin C
Integrantes: Mauricio Caguana Christian Cruz Liliana Hidalgo Docente: Semestre: Ing. Mg. Wilma Gavilanes Tercero

SEPTIEMBRE 2012 FEBRERO 2013

INDICE
LENGUAJE C ...................................................................................................................... 3 HISTORIA ............................................................................................................................ 3 CARACTERSTICAS ...................................................................................................... 3 Propiedades ....................................................................................................................... 3 VENTAJAS ....................................................................................................................... 4 DESVENTAJAS................................................................................................................ 4 CONSTANTES Y VARIABLES ......................................................................................... 5 EXPRESIONES ARITMTICAS ...................................................................................... 5 EXPRESIONES LGICAS ................................................................................................ 6 SENTENCIAS....................................................................................................................... 7 SIMPLE (IF) ..................................................................................................................... 7 DOBLE (IF - ELSE) ......................................................................................................... 7 CICLOS REPETITIVOS .................................................................................................... 8 CICLO DO - WHILE ....................................................................................................... 8 CICLO WHILE ................................................................................................................ 9 CICLO FOR .................................................................................................................... 10 SENTENCIAS SELECTIVAS (SWITCH) ...................................................................... 10 VECTORES ........................................................................................................................ 11 MATRIZ (ARRAY BIDIMENSIONAL) ......................................................................... 12 FUNCIONES....................................................................................................................... 14 LA SINTAXIS DE UNA FUNCIN ............................................................................. 14

LENGUAJE C HISTORIA Es un lenguaje orientado a la implementacin de Sistemas Operativos, concretamente Unix. C es apreciado por la eficiencia del cdigo que produce y es el lenguaje de programacin ms popular para crear software de sistemas, aunque tambin se utiliza para crear aplicaciones. C es un lenguaje de programacin creado en 1972 por Dennis M. Ritchie Se trata de un lenguaje fuertemente tipificado de medio nivel pero con muchas caractersticas de bajo nivel. Dispone de las estructuras tpicas de los lenguajes de alto nivel pero, a su vez, dispone de construcciones del lenguaje que permiten un control a muy bajo nivel. Los compiladores suelen ofrecer extensiones al lenguaje que posibilitan mezclar cdigo en ensamblador con cdigo C o acceder directamente a memoria o dispositivos perifricos. CARACTERSTICAS Propiedades

Un ncleo del lenguaje simple, con funcionalidades aadidas importantes, como funciones matemticas y de manejo de archivos, proporcionadas por bibliotecas.

Es un lenguaje muy flexible que permite programar con mltiples estilos. Uno de los ms empleados es el estructurado "no llevado al extremo" (permitiendo ciertas licencias de ruptura).

Un sistema de tipos que impide operaciones sin sentido. Usa un lenguaje de preprocesador, el preprocesador de C, para tareas como definir macros e incluir mltiples archivos de cdigo fuente.

Acceso a memoria de bajo nivel mediante el uso de punteros. Interrupciones al procesador con uniones. Un conjunto reducido de palabras clave.

Por defecto, el paso de parmetros a una funcin se realiza por valor. El paso por referencia se consigue pasando explcitamente a las funciones las direcciones de memoria de dichos parmetros.

Punteros a funciones y variables estticas, que permiten una forma rudimentaria de encapsulado y polimorfismo.

Tipos de datos agregados (struct) que permiten que datos relacionados (como un empleado, que tiene un id, un nombre y un salario) se combinen y se manipulen como un todo (en una nica variable "empleado").

VENTAJAS

Lenguaje muy eficiente puesto que es posible utilizar sus caractersticas de bajo nivel para realizar implementaciones ptimas.

A pesar de su bajo nivel es el lenguaje ms portado en existencia,

habiendo compiladores para casi todos los sistemas conocidos.

Proporciona facilidades para realizar programas modulares y/o utilizar cdigo o bibliotecas existentes.

DESVENTAJAS El mayor problema que presenta el lenguaje C frente a los lenguajes de tipo de dato dinmico es la gran diferencia en velocidad de desarrollo: es ms lento programar en C, sobre todo para el principiante. La razn estriba en que el compilador de C se limita a traducir cdigo sin apenas aadir nada. La gestin de la memoria es un ejemplo clsico: en C el programador ha de reservar y liberar la memoria explcitamente. En otros lenguajes (como BASIC, Matlab o C#) la memoria es gestionada de forma transparente para el programador. Esto alivia la carga de trabajo humano y en muchas ocasiones previene errores, aunque tambin supone mayor carga de trabajo para el procesador. El mantenimiento en algunos casos puede ser ms difcil y costoso que con ciertos lenguajes de ms alto nivel.

CONSTANTES Y VARIABLES Una constante es un dato que permanece sin cambio durante el desarrollo del algoritmo o durante la ejecucin del programa. La mayora de los lenguajes de programacin nos permiten el manejo de diferentes tipos de constantes, estas pueden ser enteras, reales, caracteres y cadenas. En lenguaje C una constante se define por medio de la instruccin #define (directiva del procesador). Una variable es un dato cuyo valor puede cambiar durante el desarrollo del algoritmo o ejecucin del programa. Hay diferentes tipos de variables: enteras, reales, caracteres y cadenas. Una variable que es de cierto tipo solo puede tomar valores que correspondan a ese tipo. Si se intenta asignar un valor de tipo diferente se producir un error. Una variable se identifica por dos atributos: el nombre de la variable (identificador) y el tipo de la variable. El identificador se puede formar con caracteres alfanumricos y el carcter de subrayado (_ ) empezando siempre por una letra. No se admiten como identificadoras palabras reservadas del lenguaje de programacin que se est utilizando. Los nombres de variables que se elijan para el algoritmo o programa deben ser significativos y tener relacin con el objeto que representa. EXPRESIONES ARITMTICAS Este tipo de expresiones nos sirve para representar frmulas matemticas y utilizan los operadores siguientes Operador Accin + * Suma Resta Multiplicacin

/ % ++ --

Divisin Mdulo Incremento Decremento

Las expresiones que tienen 2 o ms operadores requieren reglas de precedencia que permiten determinar el orden en que habrn de efectuarse dichas operaciones. EXPRESIONES LGICAS Estas emplean los operadores lgicos: Operador Operadores Relacionales > >= < <= == != Operadores lgicos && || ! Y O Negacin Mayor que Mayor o igual Menor que Menor o igual Igual Diferente Accin

SENTENCIAS SIMPLE (IF) Una instruccin alternativa simple (o simplemente alternativa simple) es una variante (ms sencilla) de una instruccin alternativa doble. En lenguaje C, para escribir una alternativa simple se utiliza la sintaxis: if ( <expresin_lgica> ) { <bloque_de_instrucciones> } Al igual que ocurre con una instruccin alternativa doble, cuando el

<bloque_de_instrucciones> de una alternativa simple slo contiene una instruccin, los caracteres abrir llave ({) y cerrar llave (}) tambin son opcionales. De modo que, para resolver el problema del ejemplo se puede escribir: #include <stdio.h> int main() { float nota; printf( "\n Introduzca nota (real): " ); scanf( "%f", &nota ); if ( nota >= 5 ) printf( "\n APROBADO" ); } DOBLE (IF - ELSE) Instruccin IF La sentencia if permite comparar 2 valores entre s. Por medio de la condicin cuando se cumple entra a realizar la accion1 si no pasa a cumplir la accion2.

En lenguaje C, para escribir una instruccin alternativa doble se utiliza la sintaxis: if ( <expresin_lgica> ) { <bloque_de_instrucciones_1> } else { <bloque_de_instrucciones_2> }

A la <expresin_lgica> de una instruccin alternativa doble tambin se le denomina condicin. Para que se ejecute el <bloque_de_instrucciones_1>, la condicin tiene que ser verdadera. Por el contrario, si la condicin es falsa, se ejecutar el <bloque_de_instrucciones_2>. En resumen, una instruccin alternativa doble (o simplemente alternativa doble) permite seleccionar, por medio de una condicin, el siguiente bloque de instrucciones a ejecutar, de entre dos posibles. Cuando un bloque de instrucciones slo contiene una instruccin, los caracteres abrir llave ({) y cerrar llave (}) son opcionales.

CICLOS REPETITIVOS CICLO DO - WHILE La estructura do while es otra estructura repetitiva, la cual ejecuta al menos una vez su bloque repetitivo, a diferencia del while o del for que podan no ejecutar el bloque. Esta estructura repetitiva se utiliza cuando conocemos de antemano que por lo menos una vez se ejecutar el bloque repetitivo. La condicin de la estructura est abajo del bloque a repetir, a diferencia del while o del for que est en la parte superior.

do { Grupo cierto de instruccin(es); Instruccin(es) de rompimiento de ciclo; } while (condicin); Veamos un ejemplo en donde se imprimen los nmeros del 1 al 10 usando esta estructura. Al final tambin se imprime en pantalla el valor contenido en la variable principal a fin de mostrar cul es su valor final.

num = 1; do { printf(%d, num); num = num + 1;

} while (num<=10); printf(La variable num vale: %d\n, num); CICLO WHILE While primero evala la condicin y no se cumple entra en el ciclo While hasta que la condicin se cumpla. While (condicin) {

sentencias }

CICLO FOR La sentencia for o para permite ejecutar un conjunto de sentencias evaluando la condicin central del for. Es una estructura de control en la que se puede indicar el nmero mnimo de iteraciones que debe cumplir el lazo for (inicializacin; condicin; incremento) La ejecucin del for sucede de la siguiente manera: Se inicializan las variables en la seccin de inicializacin Se evala la condicin Si el resultado es verdadero se ejecuta el cdigo y al final se ejecuta el incremento Si el resultado es falso se termina la ejecucin del ciclo y se contina con la siguiente lnea del programa. El formato del ciclo for es: For (variable = valor inicial ; condicin ; incremento) {... .... Sentencias.... ... .... } SENTENCIAS SELECTIVAS (SWITCH) La sentencia switch puede comparar una variable con ms de un posible resultado Si ustedes tuvieron el gusto de programar en clper la sentencia es muy parecida a Case. Una instruccin alternativa mltiple (o simplemente alternativa mltiple) permite seleccionar, por medio de una expresin, el siguiente bloque de instrucciones a ejecutar de entre varios posibles. En lenguaje C, para escribir una alternativa mltiple se utiliza la sintaxis: switch ( <expresin> ) { case <expresin_1> : [ <bloque_de_instrucciones_1> ]

10

break; case <expresin_2> : [ <bloque_de_instrucciones_2> ] break; case <expresin_n> : [ <bloque_de_instrucciones_n> ] break; default : <bloque_de_instrucciones_n+1> ] } El resultado de evaluar la <expresin> debe ser un valor perteneciente a un tipo de dato finito y ordenado, es decir, entero, lgico, carcter, enumerado o subrango. Dependiendo del valor obtenido al evaluar la <expresin>, se ejecutar un bloque de instrucciones u otro. Opcionalmente, se puede escribir un <bloque_de_instrucciones_n+1> despus de default :. Este bloque de instrucciones se ejecutar en el caso de que el valor obtenido al evaluar la <expresin>, no se encuentre en ninguna de las expresiones despus de cada case.

VECTORES Vector (llamados arrays) es una zona de almacenamiento continuo, que contiene una serie de elementos del mismo tipo, los elementos de la matriz. Desde el punto de vista lgico una matriz se puede ver como un conjunto de elementos ordenados en fila (o filas y columnas si tuviera dos dimensiones). Un vector es un conjunto de datos del mismo tipo que se identifican bajo un mismo nombre. Para acceder a un elemento especfico se utiliza un ndice (o posicin).

En C, todos los vectores estn constituidos por posiciones de memoria contiguas. Los vectores pueden tener una o varias dimensiones.

11

El formato general de la declaracin es: Tipo Nombre[Tamao]; Ejemplos: int iVec[10]; int iVec[20]={0}; //Todos los elementos se inicializan al valor 0; int iVec[5]={5,7,8,9,1}; //Se pueden inicializar cada uno de los elementos

En todos los vectores el ndice del primer elemento siempre es 0 por lo tanto, cuando se declara int iVec[10] se est declarando un vector que tiene 5 elementos, desde iVec[0] hasta iVec[9] ACCESO A ELEMENTOS Para acceder a un elemento en concreto se debe utilizar el nombre del vector y entre corchetes especificar la posicin de la celda. iVec[0]=3 ; // Asignar el valor 3 al primer elemento // Inicializar todos los elementos a 1: for( i = 0; i<5; i ++) { iVec[i]= 1; } MATRIZ (ARRAY BIDIMENSIONAL) El lenguaje C permite el uso de matrices, es decir, arrays bidimensionales. En general, todo lo que vamos a estudiar en esta seccin se puede extrapolar a arrays incluso ndimensionales (o tensores), aunque en la prctica el uso de arrays con ms de 2 dimensiones no es muy comn. La matriz es una estructura de datos bsica dentro de los lenguajes de programacin y conceptualmente son idnticas a sus homnimas matemticas.

12

Por tanto una matriz es un conjunto de datos de un tamao definido que se encuentran consecutivos en memoria y en la que es posible el acceso al elemento que deseemos simplemente con indicar su posicin.

Una matriz es un array multidimensional. Se definen igual que los vectores excepto que se requiere un ndice por cada dimensin. Su sintaxis es la siguiente:

<tipo> <identificador> [<filas>][<columnas>] Matriz <identificador>[<ndice1>][<ndice2>] INICIALIZACIN int matriz[2][3] = { {1,2,3}, {4,5,6} };

Una matriz bidimensional se podra representar grficamente como una tabla con filas y columnas. En el ejemplo puedes ver como se rellena y visualiza una matriz bidimensional. Se necesitan dos bucles para cada una de las operaciones. Un bucle controla las filas y otro las columnas. for (i=1;i<=limite;i++) { for (j=1;j<=limite;j++) { gotoxy (col,fil); scanf ("%d", & matriz1[i][j]); col=col+8; incremento las columnas } fil=fil+1;incremento las filas col=6; inicializo las columnas }

13

FUNCIONES

La modularizacin, es una tcnica muy usada para hacer los cdigos ms cortos, ya que consiste en reducir un gran problema complejo, en pequeos problemitas ms sencillos, concentrndose en la solucin por separado, de cada uno de ellos. En C, se conocen como funciones aquellas partes de cdigos utilizados para dividir un programa con el objetivo que, cada bloque realice una tarea determinada. En las funciones juegan un papel muy importe las variables, estas pueden ser locales o globales.

Variables Globales: Estas se crean durante toda la ejecucin del programa, y son globales, ya que pueden ser llamadas, ledas, modificadas, etc; desde cualquier funcin. Se definen antes del void main(). Variables Locales: Estas, pueden ser utilizadas nicamente en la funcin que hayan sido declaradas.

LA SINTAXIS DE UNA FUNCIN nombre_de_la_funcion(tipo y nombre de argumentos) { acciones } Dnde: Nombre_de_la_funcion: Es el identificador que le damos a nuestra funcin, la cual debe cumplir las reglas que definimos en un principio para los identificadores. Tipo y nombre de argumentos: son los parmetros que recibe la funcin. Los argumentos de una funcin no son ms que variables locales que reciben un valor. Este valor se lo enviamos al hacer la llamada a la funcin. Pueden existir funciones que no reciban argumentos.

14

Acciones: Constituye el conjunto de acciones, de sentencias que cumplir la funcin, cuando sea ejecutada. Entre ellas estn: Una funcin es una parte del cdigo independiente del programa que se llama dentro de l, como dijimos anteriormente C no tiene procedimientos solamente funciones los procedimientos los simula con funciones que no devuelven nada (Void) la estructura de la funciones en C y es los elementos ms fuertes del lenguaje. El desarrollo de una funcin es: Tipo_de_valor_retorno nombreFuncin( lista de argumentos ) { declaracion de variables locales a la funcin codigo ejecutable return ( exprecion ) // optativo } las variables de nuestras funciones son locales es decir que solamente viven cuando se est ejecutando la llamada a la funcin; el cdigo ejecutable son las sentencias que el programa utiliza para funcionar y el valor de retorno es el resultado que va a devolver la misma funcin ( si se dice que una funcin retorna un entero en el return se debe poner un entero como valor de devolucin Ej: esta funcin de ejemplo cuenta cuantos caracteres existen dentro de una variable que se le pase como parmetro.

Ejemplo:
Construya una funcin que realice intercambio de los valores entre 2 variables. #include <stdio.h> void intercambio(int x, int y){ int temp; temp=x; x=y; y=temp; printf( x=%d y=%d temp=%d\n,x,y,temp);

15

} main(){ int a=1,b=2; printf("a=%d b=%d\n",a,b); intercambio(a,b); printf("a=%d b=%d\n",a,b); return 0; }

16

BIBLIOGRAFIA

http://eztigma.brinkster.net/lenguajec.html
http://html.rincondelvago.com/lenguaje-c.html http://es.wikipedia.org/wiki/C_(lenguaje_de_programaci%C3%B3n)

http://www.monografias.com/trabajos4/lenguajec/lenguajec.shtml#ixzz2HDfnUIbz

17

Potrebbero piacerti anche