Descargar
Partes: 1, 2, 3, 4, 5, 6
  1. Presentaci�n
  2. Conceptos b�sicos
  3. Lenguaje de Programaci�n Estructurado C
  4. Operadores, Expresiones y Estructuras
  5. Ciclos
  6. Funciones en C
  7. Estructuras de Datos
  8. Memoria din�mica
  9. Recursi�n
  10. Estructuras y Uniones
  11. Tipos Abstractos de Datos (TAD�s) y Pilas
  12. Colas
  13. Listas Enlazadas
  14. Nota Final
  15. Bibliograf�a

Presentaci�n

El Presente documento ha sido elaborado con la finalidad, de proveer a los estudiantes, de un recurso �gil y f�cil de comprender por aquellos que inician su estudio en la programaci�n del lenguaje C.

�Por qu� decid� escribir este manual?

Sencillo, cuando en la universidad empezamos a estudiar C, nos pidieron que, si pod�amos, compr�ramos un libro texto para apoyar las clases, o busc�ramos un manual en la Internet… yo opt� por la segunda opci�n, ya que como todos sabr�n los libros de programaci�n son muy caros (al menos aqu� en El Salvador), pero me encontr� con dos grandes problemas:

  1. Los Manuales que bajaba estaban incompletos, es decir; las explicaciones, los ejemplos y la informaci�n en general era muy pobre, por no decir escasa.
  2. si al dado caso, encontraba alg�n manual que estuviera completo, ten�a muchos errores, en sus ejemplo(errores de sintaxis, de ejecuci�n y hasta de l�gica) o en la explicaci�n que se daba. Lo cual al yo cometer esos ejemplos, mis profesores me lo hac�an saber.

Por esas razones decid� escribir mi propio manual, para evitar que, otros estudiantes les suceda lo mismo que a m�, y as� les evitar� gastos en impresiones innecesarios.

Cabe recalcar que, no soy un experto programador… todav�a sigo estudiando, pero quiero colaborar de una manera desinteresada, a la formaci�n de las personas.

Espero que, este peque�o manual les sirva de mucho y sobre todo, le saquen mucho provecho.

PARTE I :

CONCEPTOS B�SICOS

CAPITULO I "MARCO INTRODUCTORIO"

Marco Conceptual

Se muy bien, que usted, querido lector; est� muy ansioso por comenzar a programar, pero considero que es importante; conocer un poco del lenguaje C, tanto de sus or�genes como de sus ventajas, pero no se preocupen, ser� breve en esta introducci�n te�rica. Adem�s que es importante conocer o recordar algunos conceptos que, son importantes al momento de programar.

  • Computadora

Componentes de Una Computadora

Hemos definido una, computadora como una m�quina que recibe datos y ordenes, que al ejecutarlas produce cierta informaci�n; dicha informaci�n se presenta en un "idioma" codificado; por que ha de saberse que las computadoras no entienden nuestro idioma, o cualquier otro en el mundo. Dicho "idioma" est� compuesto �nicamente por dos elementos los ceros y los unos. Mejor conocido como c�digo Binario, con el cual se representan los datos, que arroja la computadora.

En una forma m�s general, y creo que m�s sencilla, una computadora se comprende por dos grandes grupo: El Hardware y el Software.

Hardware

El Hardware de un computador es un conjunto de elementos f�sicos, que la componen.

Ve�moslo gr�ficamente:

Podr�amos entrar en detalle de cada una de las partes descritas anteriormente, pero ese, no es el objetivo de estas insignificantes p�ginas; sino que esto es una mera introducci�n te�rica, por ello s�lo dar� una breve explicaci�n.

En la Unidad Central de Proceso (o CPU, por sus siglas en ingles �Central Proccessing Unit-) se contiene la Unidad de Control, que su funci�n es organizar y clasificar las instrucciones recibidas; mientras que la Unidad Aritm�tica y L�gica, Se encarga de ejecutar dichas instrucciones. Los Buses, son los mecanismos de interconexi�n en el CPU.

La memoria Principal, Es el lugar donde se cargan todas las instrucciones, programas, etc que se est�n ejecutando.

Software

Debemos entender el software como la parte l�gica de la computadora… �un poco dif�cil de comprender, verdad?; es decir, que el software, es lo que dota a los componentes f�sicos de poder realizar tareas determinadas. Ejemplo, para poder utilizar una computadora, esta debe tener instalado un sistemas operativo. Para poder imprimir alg�n trabajo, aparte de poseer un impresor, en la computadora, debo tener un software que me permita imprimir dicha acci�n (generalmente las impresoras traen un cd, son su respectivo software de instalaci�n).

Aburrido?…

Es necesario, que empiece con tanta palabrer�a; por que es necesario, para el lector tener en claro estos conceptos.

Ahora vamos a hablar de algo un poco m�s interesante, como lo es el lenguaje de programaci�n

Un lenguaje de Programaci�n Es un conjuntos de palabras, reglas, con las cuales se le indica a la computadora las funciones que debe realizar. Un lenguaje de programaci�n puede ser:

  1. Lenguajes M�quinas: se trata de lenguaje cuyas instrucciones son directamente comprendidas por el ordenador o computador en el que se ejecuta el programa.
  2. Lenguaje de Bajo Nivel: este tipo de lenguajes, al igual que sucede con los lenguajes m�quinas, existe una gran dependencia con el equipo en el que se va a ejecutar. No obstante son algo m�s f�ciles de escribir, quedando ubicados por tanto, seg�n su grado de complejidad; en un nivel intermedio entre el lenguaje m�quina y el de alto nivel.
  3. Lenguaje de Alto Nivel: Disponen de una sintaxis en lenguaje m�s natural, y un amplio conjunto de funciones internas, que ayudan al programador en distintas situaciones, as� como un n�mero determinado de utilidades y asistentes que ahorran tiempo y trabajo al programador. Dentro de estos lenguajes tenemos: Visual Foxpro, Visual Basic. NET.

Programa:

Es un conjunto de instrucciones que se le dan a la computadora, para que �sta realice una determinada tarea.

Lenguaje C

El lenguaje C, fue dise�ado por Dennies Ritchie en 1970, en los laboratorios Bell de Estados Unidos.

Este lenguaje presenta varias caracter�sticas, entre las cuales est�n:

  1. Lenguaje de programaci�n de prop�sitos generales
  2. Permite la Programaci�n Estructurada
  3. Abundancia de Operadores y Tipos de Datos
  4. No est� asociado a ning�n sistema operativo ni a ninguna m�quina
  5. Popular y Eficaz
  6. Permite el desarrollo de Sistemas Operativos y programas de aplicaci�n
  7. Portabilidad
  8. Existen las librer�as en las bibliotecas
  9. tiene s�lo 32 palabras reservadas

*bibliotecas: es el archivo que contiene c�digo objeto de una colecci�n de rutinas o funciones que realizan tareas determinadas y se pueden utilizar en los programas.

*Enlazador: Programa que convierte las funciones de la biblioteca est�ndar de C, con el c�digo que ha traducido el compilador .

Estructura de Un programa en C

Ya estamos apunto de entrar a lo m�s interesante, a la programaci�n en s�; pero es necesario, primero; mencionar algunos de los errores t�picos al programar, para que el lector sepa como identificarlos y as� los pueda corregir.

  1. ERROR DE SINTAXIS: Estos errores son producidos, cuando se hace mal uso de las reglas del lenguaje de programaci�n, y se violan las normas de sintaxis, de ese lenguaje (en nuestro caso C); estos errores son f�ciles de detectar por que generalmente es el compilador, que los identifica (Y hasta muestra la l�nea donde se encuentra dicho error, pero eso depende de la versi�n del compilador que estemos usando). En este curso he usado Turbo C, en su versi�n 2 y 3.
  2. ERRORES DE EJECUCI�N: Estos errores se producen , cuando le indicamos a la computadora, realizar una determinada acci�n, y esta la comprende, pero no puede ejecutarla. Por ejemplo, indicarle a la computadora una divisi�n entre cero, sumar dos variables a las cuales no se les ha signado valor alguno, etc.
  3. ERRORES DE L�GICA: Muchas veces, cuando estamos programando, el compilador no nos indica errores de sintaxis, ni de l�gica; pero el resultado de nuestro programa, esta fuera del rango esperado, esto es producto de un error de l�gica en el c�digo de nuestro programa. Este tipo de errores son muy dif�ciles de identificar y por supuesto de corregir, ya que generalmente hay que revisar l�nea por l�nea de nuestro programa. Ejemplo: El sueldo negativo de un empleado, etc.

La estructura de un programa en C, consta de algunas partes esenciales: las cuales son uno o m�s m�dulos llamadas funciones, siendo main() la primera funci�n que es llamada cuando empieza la ejecuci�n del programa .

Cada funci�n debe contener :

>Directivas de pre-procesador (instrucciones que se le dan al compilador

#include antes de compilar)

#define

ejemplo:

#include <stdio.h>

Lo que se le esta indicando, es que de las librer�as, "Incluya" en nuestro programa la directiva stdio.h, la cual contiene las funciones de entrada y salida de datos (standar input output, en ingl�s). Si necesitamos las funciones matem�ticas, debemos especificarlo con la declaratoria:

#include <math.h>

Si necesitamos las funciones de cadenas:

#inlcude <stlib.h>

Es necesario aclarar que esto se hace al inicio del programa, y las declaratorias deben llevar el s�mbolo de numeral (#) seguido de la sentencia "include", y entre signos de mayor y menor que (<>) el nombre de la directiva.

>Declaraciones Globales

pueden ser:

*Prototipos de Funciones: Tambi�n llamadas declaraciones de funciones, lo cual se tratar� m�s adelante

*Declaraciones de Variables

cabe destacar, que esto se hace seguido de los #include y los #define.

>Funci�n Principal main()

Esta es la funci�n principal de nuestro programa, su cuerpo, por ello NUNCA debe faltar, ya que en ella van contenidas todas las instrucciones de nuestro programa.

la funci�n main() va al inicio, luego abrimos llaves y dentro de ellas van las declaraciones de variables, las sentencias de lectura, c�lculos, asignaciones e impresiones, y con la �ltima llave ( } ), le indicamos el final del programa.

Ejemplo 1.1

Programa que a partir del radio, calcula el �rea de un circulo

Explicaci�n:

Le indicamos al compilador, que usaremos las bibliotecas <stdio.h> y <conio.h>, �por qu� <conio.h>?, por que esta biblioteca, contiene las funciones getche(), getch(), etc, y de una de ellas hacemos uso en este peque�o ejemplo.

Luego, le indicamos a nuestro programa el incio de nuestro programa (funci�n main() ).

Declaramos, como valores reales, las variables radio y area (de esto se hablar� m�s adelante). Luego, con la instrucci�n printf(), mostramos en pantalla el mensaje (Radio=) y scanf se encarga de leer el valor digitado por el usuario. Posteriormente area, es igual al la multiplicaci�n de pi (3.14159), el radio al cuadrado. Se muestra en pantalla ese resultado, luego el programa espera que se presiones cualquier tecla (getch() ) y no retorna ning�n valor (return 0).

Ejercicios

Defina los siguientes conceptos:

  1. Programa:____________________________________________________________________________________________________________________________
  2. CPU:_________________________________________________________________________________________________________________________________
  3.  

  4. Software:_____________________________________________________________________________________________________________________________
  5. Memoria Principal:_____________________________________________________________________________________________________________________________
  6.  

  7. Lenguaje de Programaci�n:________________________________________________________________________________________________________________________

Indique que tipo de error (Error de sintaxis, error de ejecuci�n o error l�gico), en cada uno de los siguientes enunciados

  1. Utilizar una variable antes de asignarle un valor:____________________
  2. asignarle un valor real a una variable declarada como entero:______
  3. al cometer este error, los resultados arrojados por el programa no son los que se esperaban:______________________________________________
  4. Un programa no puede ser ejecutado por el computador, mientras tenga este tipo de errores:__________________________________________
  5. estos errores no son detectados por el compilador, ni tampoco son errores de ejecuci�n:_______________________________________________

Mencione y Explique, la estructura general de un programa en C:

Partes: 1, 2, 3, 4, 5, 6
P�gina siguiente