You are on page 1of 10

CORPORATIVO INTERNACIONAL UNIVERSITARIO

ASIGNATURA: INTRODUCCION A LA PROGRAMACION

DOCENTE: L.I. GABRIEL FLORES GONZALEZ

ALUMNO: HERNAN DARIO GONZALEZ VASQUEZ

PRIMER CUATRIMESTRE

OCTUBRE DE 2011

INDICE TEMAS Y SUBTEMAS Pgina

INTRODUCCION

4. TIPOS ESTRUCTURADOS

4.1 MATRICES

4.2 CADENA DE CARACTERES (STRINGS)

4.3 ESTRUCTURAS

4.4 PUNTEROS

5. FUNCIONES

5.1 FUNCIONES

5.2 PASO DE ARGUMENTOS Y PUNTEROS

5.3 RECURSIVIDAD

CONCLUSIONES

BIBLIOGRAFIA

10

INTRODUCCION Algo que tambin es importante en la Programacin es conocer los tipos de datos estructurados que son prcticamente cuatro o estos estn dentro de los ms importantes, los que veremos a continuacin son los siguientes: I. II. III. IV. Matriz o array. Cadena de caracteres (strings). Estructuras. Punteros.

Tambin conoceremos lo que son las funciones, junto con sus declaraciones. Posteriormente estudiaremos lo que es: paso de argumentos y punteros y recursividad.

DESARROLLO
4.1 MATRICES. Un array o una matriz es una coleccin de variables del mismo tipo que se referencian por un nombre en comn. A un elemento especfico de un array se accede mediante un ndice. En C todos los arrays constan de posiciones de memoria contiguas. La direccin ms baja corresponde al primer elemento y la direccin ms alta corresponde al ltimo elemento. Los arrays pueden tener una o varias dimensiones. a) Arrays unidimensionales. La forma general de declaracin de una array unidimensional es: Tipo nombre_de_variable [tamao]. b) Arrays bidimensionales. C admite arrays multidimensionales. La forma ms simple de un array multidimensional es el array bidimensional. Un array bidimensional es esencialmente un array de arrays unidimensionales. Para declarar un array de enteros bidimensional de tamao x, e y se escribira: int enteros [x][y]; c) Arrays multidimensionales. C permite arrays de ms de dos dimensiones. El lmite exacto, si lo hay, viene determinado por el compilador. La forma general de declaracin de un array multidimensional es: Tipo nombre [tamao1][tamao2][tamao3]...[tamaoN]

4.2 CADENA DE CARACTERES (STRINGS). El uso ms comn de los arrays unidimensionales es, con mucho, como cadenas de caracteres. En C, una cadena se define como un array de caracteres que termina con un carcter nulo. Un carcter nulo se especifica como \0 y generalmente es un cero. Por esta razn, para declarar arrays de caracteres es necesario que sean de un carcter ms que la cadena ms larga que pueda contener C incluye una gran cantidad de funciones de manejo de cadenas, las cuales se encuentran en la librera string.h. Las ms importantes son: a) Strcpy (c1,c2 ).

Copia la cadena c1 en la cadena c2. Su definicin completa es la siguiente: Char *strcpy (char *s1, const char *s2). b) Strcat (c1,c2). Concatena al final de la cadena c1 la cadena c2. Su definicin completa es: char *strcat (char *s1, const char *s2) c) Strlen (c1). Devuelve la longitud de c1 (solamente el cadena[strlen(cadena)]=\0). Su definicin completa es: int strlen (const char *s1); d) Strcmp (c1,c2). Compara la cadena c1 con la cadena c2 devolviendo: 0 si son iguales. Menor que 0 si c1<c2. Mayor que 0 si c1>c2. La definicin completa de esta funcin es la siguiente: int strcmp (const char *s1, const char *s2); nmero de caracteres:

4.3 ESTRUCTURAS En lenguaje C, una estructura es una coleccin de variables que se referencia bajo un nico nombre, proporcionando un medio eficaz de mantener junta una informacin relacionada. Una declaracin de estructura forma una plantilla que puede utilizarse para crear estructuras. Las variables que componen la estructura se llaman miembros de la estructura (los miembros de la estructura tambin son llamados elementos o campos). Para poder emplear una estructura es necesario hacer una declaracin de la estructura mediante la palabra clave struct, El formato bsico de la declaracin es el siguiente: Struct Nombre_estructura {

tipo elemento 1; tipo elemento 2; ... tipo elemento N; };

4.4 PUNTEROS Un puntero es una variable que contiene una direccin de memoria. Esta direccin es la posicin de otro objeto (normalmente otra variable) en memoria. Por ejemplo, si una variable contiene la direccin de otra variable, entonces se dice que la primera variable apunta a la segunda. Los punteros se utilizan principalmente para realizar operaciones con estructuras dinmicas de datos, es decir, estructuras creadas en tiempo de ejecucin, siendo su objetivo el de permitir el manejo o procesamiento (creacin, acceso, eliminacin, etc.) de estas estructuras de datos. Si una variable puntero va a contener un puntero, entonces tiene que declararse como tal. Una declaracin de puntero consiste en un tipo base, un * y el nombre de la variable. La forma general de declaracin de una variable puntero es: Tipo * nombre; Algunos ejemplos con estos operadores son los que se muestran a continuacin: int i, j, *p; /* p es un puntero*/

p=&i; /* p apunta a la direccin de i*/ *p = 10; /* i toma el valor 10 */ p=&j; /* p apunta a la direccin de j */ *p = 11; /* j toma el valor de 11 */

5.1 FUNCIONES Antes de empezar a utilizar una funcin debemos declararla. La declaracin de una funcin se conoce tambin como prototipo de la funcin. En el prototipo de una funcin se tienen que especificar los parmetros de la funcin, as como el tipo de dato que devuelve. Los prototipos de las funciones que se utilizan en un programa se incluyen generalmente en la cabecera del programa y presentan la siguiente sintaxis: tipo_de_retorno nombre_de_la_funcin(lista_de_parmetros); Tras declarar una funcin, el siguiente paso es implementarla. Generalmente, este paso se conoce como definicin. Es precisamente en la definicin de una funcin donde se especifican las instrucciones que forman parte de la misma y que se utilizan para llevar a cabo la tarea especfica de la funcin. La definicin de una funcin consta de dos partes, el encabezado y el cuerpo de la funcin. En el encabezado de la funcin, al igual que en el prototipo de la misma, se tienen que especificar los parmetros de la funcin, si los utiliza y el tipo de datos que devuelve, mientras que el cuerpo se compone de las instrucciones necesarias para realizar la tarea para la cual se crea la funcin. La sintaxis de la definicin de una funcin es la siguiente: tipo_de_retorno nombre_de_la_funcin(lista_de_parmetros) { sentencias; } El tipo_de_retorno representa el tipo de dato del valor que devuelve la funcin. Este tipo debe ser uno de los tipos simples de C, un puntero a un tipo de C o bien un tipo struct. De forma predeterminada, se considera que toda funcin devuelve un tipo entero (int). En otras palabras, si en la declaracin o en la definicin de una funcin no se especifica el tipo_de_retorno, el compilador asume que devuelve un valor de tipo int. El nombre_de_la_funcin representa el nombre que se le asigna a la funcin.

5.2 PASO DE ARGUMENTOS Y PUNTEROS En C todos los argumentos que se pasan a una funcin se pasan por valor. En otras palabras, se pasa una copia del valor del argumento y no el argumento en s (por ello, este procedimiento se conoce en algunas ocasiones como paso por copia). Al pasar una copia del argumento original a la funcin, cualquier modificacin que se realice sobre esta copia no tendr efecto sobre el argumento original utilizado en la llamada de la funcin. Se puede considerar un argumento pasado por valor como una variable local de la funcin

a la que se ha pasado, de tal modo que los cambios que se realicen sobre sta tendrn efecto slo dentro de la funcin. Veamos un ejemplo del paso por valor de argumentos a una funcin: #include <stdio.h> void modificar(int variable); main() { int i = 1; printf("\ni=%d antes de llamar a la funcin modificar", i); modificar(i); printf("\ni=%d despus de llamar a la funcin modificar", i); } void modificar(int variable) { printf("\nvariable = %d dentro de modificar", variable); variable = 9; printf("\nvariable = %d dentro de modificar", variable); }

5.3 RECURSIVIDAD Las funciones en C pueden ser recursivas, en otras palabras, pueden llamarse a s mismas directa o indirectamente. La recursividad directa es el proceso mediante el que una funcin se llama a s misma desde el propio cuerpo de la funcin, mientras que la recursividad indirecta implica ms de una funcin. Un proceso recursivo tiene que tener una condicin de finalizacin, ya que de lo contrario podra continuar infinitamente. Un ejemplo tpico de aplicacin de la recursividad es el clculo del factorial de un nmero entero. Recordemos que la factorial de un nmero entero n se calcula de la siguiente manera: n! = n * (n-1) * (n-2) * ... * 2 * 1

CONCLUSIONES Pudimos comprender que dentro del tipo de dato estructurado llamado matriz o array se encuentran tres tipos distintos que fueron: arrays unidimensionales, bidimensionales y multidimensionales cada uno con una funcin distinta. Igualmente pasa con la cadena de caracteres (strings) que tambin cuenta con algunos tipos. Slo las estructuras y los punteros no cuentan con algunos tipos. Prcticamente todos estos tipos de datos son variables ya que su valor puede cambiar durante la ejecucin de algn programa. Dentro del tema de funciones encontramos el paso de argumentos y punteros y tambin lo que es la recursividad.

BIBLIOGRAFIA
1.

http://publicaciones.uclm.es/files/ebook_chapter_pdf/ebook_chapter_pdf_00201_0 5_tipos_estructurados_datos.pdf 27-10-11; 17:10


2. http://www.mcgraw-hill.es/bcv/guide/capitulo/8448148681.pdf 27-10-11: 17:45

10

You might also like