You are on page 1of 19

Repblica Bolivariana de Venezuela

Universidad Alejandro de Humboldt


Ingeniera en Informtica
Asignacin: Lenguajes de Programacin I
Seccin: 0402

Lenguajes de programacin: Lenguaje C

(Informe)

Profesor: Alumno:

Mena Miguel Gutirrez A. Jean C.


C.I. 20 173 321

Caracas, 20 / 09 / 2017

1
ndice
Introduccin ........................................................................................................ 3
Lenguaje de Programacin ................................................................................ 4
Lenguaje de bajo nivel ....................................................................................... 4
Lenguaje de medio nivel .................................................................................... 4
Lenguaje de alto nivel ........................................................................................ 5
Lenguaje de programacin orientado a objeto (POO) ........................................ 5
Lenguaje de programacin estructurado ............................................................ 6
Lenguaje C y C++ ............................................................................................ 7
Libreras en C ..................................................................................................... 8
Tipos de variables en C .................................................................................... 10
Declaracin de variables en C.......................................................................... 10
Operadores Aritmticos en C ........................................................................... 10
Operadores Relacionales en C ........................................................................ 11
Operadores Lgicos en C ................................................................................ 11
Sentencias condicionales en C ........................................................................ 11
Sentencia if ................................................................................................... 11
Sentencia else .............................................................................................. 12
Sentencia else colgante ................................................................................ 13
Sentencia switch ........................................................................................... 13
Sentencias de iteracin en C............................................................................ 14
Bucles for: ..................................................................................................... 14
Bucles while .................................................................................................. 15
Bucles do-while: ............................................................................................ 16
Conclusin........................................................................................................ 18
Referencias ...................................................................................................... 19

2
Introduccin

Un lenguaje de programacin es un lenguaje formal diseado para


realizar procesos que pueden ser llevados a cabo por mquinas como las
computadoras. Pueden usarse para crear programas que controlen el
comportamiento fsico y lgico de una mquina.

Estn formados por un conjunto de smbolos y reglas sintcticas y


semnticas que definen su estructura y el significado de sus elementos y
expresiones. Los lenguajes de programacin pueden clasificarse en varios
tipos, entre los cuales tenemos los lenguajes orientado a objeto.

Entre los lenguajes de uso ms comn tenemos el Lenguaje C,


originalmente desarrollado por Dennis Ritchie entre 1969 y 1972 en los
Laboratorios Bell. 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.

A continuacin se desarrollar de forma ms detallada lo antes


expuesto.

3
Lenguaje de Programacin
Un lenguaje de programacin es un medio de comunicacin entre el
usuario y el ordenador formado por un conjunto de smbolos elementales, como
lo es el alfabeto, palabras y la reglas de semntica y sintaxis; mtodos para
estructurar y combinar dichos smbolos.

Un lenguaje tambin recibe el nombre de idioma y como tal consta de


todos los smbolos vlidos por dicho lenguaje y los mtodos para estructurar
correctamente cada una de las palabras, frases y oraciones.

Los lenguajes formales: Binario, Java, C, Pascal, Basic, etc. son


lenguajes de programacin que obedecen a un grupo de reglas sintcticas y
semnticas que permiten determinar si una instruccin es parte de un lenguaje
y la actividad que deber realizar la computadora con determinada instruccin.
Con un lenguaje se construyen cada una de las rdenes o instrucciones para el
ordenador de la secuencia de instrucciones que constituyen un programa.

Lenguaje de bajo nivel


Un lenguaje de programacin de bajo nivel es el que proporciona poca o
ninguna abstraccin del microprocesador de un ordenador. Consecuentemente
es fcilmente trasladado a lenguaje de mquina.

La palabra bajo no implica que el lenguaje sea inferior a un lenguaje de


alto nivel; se refiere a la reducida abstraccin entre el lenguaje y el hardware.
Uso: ventajas e inconvenientes.

En general se utiliza este tipo de lenguaje para programar controladores


(drivers).

Lenguaje de medio nivel


Se dice de lenguajes de programacin como C, que se encuentran entre
los lenguajes de alto nivel y los lenguajes de bajo nivel. Estos lenguajes son
clasificados muchas veces de alto nivel, pero permiten ciertos manejos de bajo
nivel. Son precisos para ciertas aplicaciones como la creacin de sistemas
operativos, ya que permiten un manejo abstracto (independiente de la mquina,

4
a diferencia del ensamblador), pero sin perder mucho del poder y eficiencia que
tienen los lenguajes de bajo nivel.

Una caracterstica distintiva, por ejemplo, que convierte a C en un


lenguaje de medio nivel y al Pascal en un lenguaje de alto nivel es que en el
primero es posible manejar las letras como si fueran nmeros (en Pascal no), y
por el contrario en Pascal es posible concatenar las cadenas de caracteres con
el operador suma y copiarlas con la asignacin (en C es el usuario el
responsable de llamar a las funciones correspondientes).

Lenguaje de alto nivel


Un lenguaje de alto nivel permite al programador escribir las
instrucciones de un programa utilizando palabras o expresiones sintcticas muy
similares al ingls. sta es la razn por la que a estos lenguajes se les
considera de alto nivel, porque se pueden utilizar palabras de muy fcil
comprensin para el programador. En contraposicin, los lenguajes de bajo
nivel estn ms cerca del "entendimiento" de la mquina. Para la mayora de
las instrucciones de estos lenguajes, se necesitaran varias instrucciones en un
lenguaje ensamblador para indicar lo mismo. De igual forma que, la mayora de
las instrucciones de un lenguaje ensamblador, tambin agrupa a varias
instrucciones de un lenguaje mquina.

Lenguaje de programacin orientado a objeto


(POO)
Se construyen objetos complejos de datos y luego designa un conjunto
limitado de funciones para que operen con esos datos. Los objetos complejos
se designan como extensiones de objetos ms simples y heredan propiedades
del objeto ms sencillo. Este tipo de lenguaje gana la eficiencia de los
lenguajes imperativos y al construir clases de funciones que utilizan un
conjunto restringido de objetos de datos se construye la flexibilidad y
confiabilidad del modelo aplicativo.

La POO se convirti en la forma de programacin ms usada a finales


de los ochenta y principios de los noventa en gran parte al lenguaje C++. Las

5
caractersticas de POO fueron agregadas a varios lenguajes de programacin
existentes de esta poca como: Ada, Basic, Lisp y Pascal, lo cual llev a
problemas de compatibilidad y en la capacidad de mantenimiento del software.

La POO es un paradigma de programacin que define los programas en


trminos de "clases de objetos", objetos que son entidades que combinan
estado (es decir, datos), comportamiento (esto es, procedimientos o mtodos)
e identidad (propiedad del objeto que lo diferencia del resto).

La programacin orientada a objetos expresa un programa como un


conjunto de estos objetos, que colaboran entre ellos para realizar tareas. Esto
permite hacer los programas y mdulos ms fciles de escribir, mantener y
reutilizar.

La programacin orientada a objetos tom posicin como la metodologa de


programacin dominante a mediados de los aos ochenta, en gran parte
debido a la influencia de C++, una extensin del lenguaje de programacin

Lenguaje de programacin estructurado


La programacin estructurada es una teora de programacin que
consiste en construir programas de fcil comprensin.

La programacin estructurada es especialmente til, cuando se necesitan


realizar correcciones o modificaciones despus de haber concluido un
programa o aplicacin. Al haberse utilizado la programacin estructurada, es
mucho ms sencillo entender la codificacin del programa, que se habr hecho
en diferentes secciones.

La programacin estructurada se basa en una metodologa de desarrollo


de programas llamada refinamiento sucesivo: Se plantea una operacin como
un todo y se divide en segmentos ms sencillos o de menor complejidad. Una
vez terminado todos los segmentos del programa, se procede a unificar las
aplicaciones realizadas por el pool de programadores. Si se ha utilizado
adecuadamente la programacin estructurada, esta integracin debe ser
sencilla y no presentar problemas al integrar la misma , y de presentar algn
problema, ser rpidamente detectable para su correccin.

6
La representacin grfica de la programacin estructurada se realiza a
travs de diagramas de flujo o flow chart, el cual representa el programa con
sus entradas, procesos y salidas.

La programacin estructurada propone segregar los procesos en


estructuras lo ms simple posibles, las cuales se conocen como secuencia,
seleccin e interaccin. Ellas estn disponibles en todos los lenguajes
modernos de programacin imperativa en forma de sentencias. Combinando
esquemas sencillos se pueden llegar a construir sistemas amplios y complejos
pero de fcil entendimiento.

Lenguaje C y C++
Lenguaje C es un lenguaje de programacin estructurado de propsito
general. Algunas de sus caractersticas es el uso a un nivel ms bajo, entre
lenguaje mquina y el lenguaje de alto nivel.

El lenguaje C se origina con el lenguaje BCPL, creado por Martin


Richards, influyo en el desarrollo del lenguaje B implementado por Ken
Thompson y su vez permiti el desarrollo del lenguaje C , implementado por
Dennis Ritchie en 1971.

Para 1973 El sistema operativo UNIX estaba escrito en lenguaje C.

En lenguaje C la unidad bsica de programacin es la funcin, los


programas estn formados por mdulos. Cada mdulo realiza una tarea
especfica y es un subprograma independiente. Los programas estructurados
tienen un conjunto de mdulos relacionados lgicamente como una unidad
integrada.

El lenguaje C++ es un lenguaje hibrido por maneja la programacin


estructurada y la programacin orientada a objetos. Incrementa la
productividad, y la reutilizacin de cdigo.

La unidad bsica de programacin en lenguaje C++ es la clase. Una


clase contiene datos y funciones o mtodos que manipulan los datos que
definen las caractersticas de un objeto. Cuando se define una clase, se
pueden crear objeto.

7
Al momento de programar se pueden observar las siguientes diferencias:

En lugar de incluir el archivo de cabecera <stdio.h>, el programa C++


llama a <iostream.h>. A continuacin, las entradas/salidas no utilizan las
funciones printf() o scanf(), sino los flujos especializados de C++, gracias
a los objetos cout y cin y a los operadores << y >> .
La declaracin de algunas funciones no tiene necesidad del calificador
void para indicar que no toma ningn argumento; es similar a la funcin
main().
En lugar de declarar todas las variables al principio de cada funcin, las
variables se declaran justo antes de su primera utilizacin.
Una nueva sintaxis para comentarios: se inician por una doble barra
inclinada, //, y se terminan al final de la lnea actual.

Libreras en C
Las libreras contienen el cdigo objeto de muchos programas que
permiten hacer cosas comunes, como leer el teclado, escribir en la pantalla,
manejar nmeros, realizar funciones matemticas, etc.

Las libreras estn clasificadas por el tipo de trabajos que hacen, hay libreras
de entrada y salida, matemticas, de manejo de memoria, de manejo de textos,
existen muchsimas libreras disponibles y todas con una funcin especfica.

En lenguaje C las funciones estndar se dividen en grupos, todas las


funciones que pertenecen al mismo grupo estn declaradas en el archivo de
cabecera (aquel que dice xxx.h), la letra "h" significa header en ingls y es lo
que se llama cabecera.

Para incluir alguna funcin perteneciente a estas cabeceras debemos


escribir lneas de cdigo como se muestra de ejemplo:

#include <nombre de la librera>

8
Entra las libreras ms usadas tenemos:

Librera: Descripcin:

assert.h Proporciona una definicin de la macro assert, que imprime un


mensaje de error y aborta el programa

alloc.h Existen funciones para asignar, liberar memoria, u obtener


informacion de bloques de memoria.

ctype.h Son funciones que nos permiten conocer la naturaleza de un


caracter, o bien para convertir de mayusculas a minusculas y
viceversa; y valores enteros a codigos ASCII.

dir.h Permite ordenar, crear, modificar, mover y eliminar directorios

errno.h Representa los nmeros de error, despus que ocurre un error se


puede consultar el valor de la variable del sistema deerrno para
obtener ms informacin sobre ese error.

float.h Define los lmites de los tipos de coma flotante

limits.h Define los lmites de los diferentes tipos de enteros

math.h Contiene las funciones matemticas estndar utilizadas en C y


C++

setjmp.h Define el tipo de jmp_buf para algunas funciones.

signal.h Contiene funciones de estado.

stdarg.h Define funciones que pueden ser llamadas con diferentes


nmeros de argumentos, de modo que se pueda escribir f(a) y
f(a,b).

stdef.h Se definen algunos tipos especiales

stdio.h Incorpora las funciones de Entrada - Salida E/S estndar, tipos y


macros

stlib.h Declara funciones que son tiles para diferentes propsitos, en


especial de bsqueda y ordenacin.

string.h Contiene funciones para manejo de cadenas de caracteres.

time.h Contiene funciones relativas a fechas y horas

9
Tipos de variables en C
Entre los tipos de datos ms utilizados en C tenemos:
Se escribe: Tipo de dato: Observaciones:
Int entero
Long entero largo permite un rango ms amplio que int
Float decimal simple hasta 6 decimales
Double decimas doble hasta 14 decimales
Char Carcter carcter, independiente o parte de una
cadena

Declaracin de variables en C
La sintaxis de declaracin de una variable en C es de la forma:

tipo_base nombre_variable [nombre_variable2, nombre_variable3,...];

En donde:

tipo_base es cualquier tipo vlido de C.

nombre_variable es un identificador vlido en C, esto es, una letra seguida


opcionalmente por otras letras y nmeros. Se debe tomar en cuenta que no se
admiten signos diacrticos (acentos, tildes, etc.) y que las letras maysculas y
minsculas no se consideran equivalentes. Por otra parte, no se admite utilizar
como identificadores los nombres de palabras reservadas en C.

Operadores Aritmticos en C
Operador: Nombre: Ejemplo:

+ suma a+b

- resta a-b

* multiplicacin a/b

% residuo entero de divisin a%b

++ incremento en 1 a++

-- decremento en 1 a

10
Operadores Relacionales en C
Operador: Nombre: Ejemplo:

> mayor que a>b

< menor que a<b

>= mayor igual que a>=b

<= menor igual que a<=b

== Igual(equivalente) a==b

!= Diferente(No igual) a!=b

Operadores Lgicos en C

Operador: Nombre: Ejemplo:

&& Y (and) (exp1)&&(exp2)

|| O (or) (exp1)||(exp2)

! No (not) !(exp1)

Sentencias condicionales en C

Hay tres sentencias condicionales en C: if, else y switch

Sentencia if
La sentencia if nos permite elegir si se ejecuta o no un bloque de
instrucciones. La "expresin" del if es una expresin que debe ser evaluada:
falsa si es cero y verdadera si vale distinto de cero. Ejemplo:

11
#include <stdio.h>
int main ()
{
int x;
printf(Dame un numero);
scanf(%d,&x);
if (x>0) {
printf(El numero %d es positivo,x);
}
return 0;
}

Sentencia else
Una sentencia if cuando incluye un else, permite ejecutar un bloque de
cdigo si se cumple la condicin y otro bloque diferente de cdigo si la
condicin no se cumple. Ejemplo:

#include <stdio.h>
void main ()
{
int x;
printf(Dame un numero: );
scanf(%d,&x);
if (x>=0) {
printf(El numero %d es positivo, x);
} else {
printf(El numero %d es negativo, x);
}
}

12
Sentencia else colgante
Ejemplo:
#include<stdlib.h>
int main()
{
float nota;
printf ("Dame una nota: ")
scanf ("%f", &nota)
if (nota>9){
printf("Sobresaliente");}
else if(nota >=7){
printf("Notable);}
else if(nota >=5){
printf("Aprobado");}
else{
printf ("Suspenso);}
return 0;
}

Sentencia switch
Permite seleccionar entre mltiples alternativas posibles. La expresin
del switch es una variable int o char, que puede tomar los valores, entre otros,
dados por "opcin 1", "opcion 2", etc. Ejemplo:

#include <stdio.h>
void main()
{
int nota;
printf(Calificacin: );
scanf(%d, &nota);
switch (nota) {
case 0:
case 1:
case 2:
case 3:

13
case 4:
printf(Reprobadoo);
break;
case 5:
case 6:
printf(Aprobado);
break;
case 7:
case 8:
printf(Notable);
break;
case 9:
printf(Sobresaliente);
break;
case 10:
printf(Matrcula);
break;
default:
printf(Error);
}
}

Sentencias de iteracin en C
Las instrucciones de iteracin tambin llamados bucles, se ejecutan
hasta que se cumpla alguna condicin predeterminada en el bucle en el caso
del for o tambin en los casos del while y do-while. Podemos destacar los
antes mencionados bucles que son los bucles for,while y do-while.

Bucles for:

Tienen una gran potencia y flexibilidad, y tienen un esquema muy


sencillo y definido. Este esquema es as:

for(inicializacin del bucle; condicin; incremento).

14
Ahora definiremos cada una de las partes del esquema bsico,
inicializacin (exp1): es una asignacin que se utiliza para comenzar la variable
del bucle, esto es de la variable de la que parte el bucle. Condicin (exp2): es
una expresin relacional que hace que el bucle concluya cuando no se cumpla.
Por ltimo el incremento (exp3): es la parte que determina como cambia
la variable hasta que el bucle concluye. Es importante sealar que cada parte
ha de ser separado por ; .Para que deje de ejecutarse el bucle como antes
hemos mencionado depende de la condicin, que deber de ser falsa para que
el bucle se detenga.

Debemos tener en cuenta que a diferencia de otros bucles este no


llegar a ejecutarse si la condicin es falsa, ya que la condicin se comprueba
antes de entrar en el bucle. Un sencillo ejemplo:

#include <stdio.h>
int main( )
{
int x;
for(x=1; x<=100; x++)
printf (%d,x);
return 0;
}

Una de las utilidades del bucle for es en el bucle infinito, que pese a que
puede hacerse con todos los bucles es el for con el que se usa. Estos bucles
infinitos son usados para que el bucle no concluya nunca hasta que en el
cuerpo se encuentre un break. Por otro lado la construccin de este bucle for
es muy sencilla, for ( ; ; ).

Bucles while
Tiene cierta semejanza con el bucle for, as es en el uso de una
inicializacin, una condicin y un incremento. Otra de sus similitudes es el
momento en el que analizan la condicin que en ambos es antes de ejecutar el
bucle. Sin embargo, en su esquema bsico aunque parezcan diferentes, son el
mismo:

15
while (condicin)
{
cuerpo;
incremento;
}
Algunas de las veces podremos saber antes de empezar el bucle
cuantas veces se va a ejecutar. Ejemplo:

char esperar_caracter (void)


{
char c;
c=\0;
while (c!=A)
c=getchar ( );
return c;
}

Bucles do-while:
Este es el nico bucle que al menos se va a ejecutar una vez puesto que
este bucle examina la condicin una vez se ha ejecutado el bucle, esto es, al
final del mismo. El esquema bsico de este bucle sera algo as:

do
{
cuerpo;
}
while (condicin);

Este bucle es muy til por ejemplo en mens dado que el men debe de
ejecutarse al menos una vez. Ejemplo:

#include <stdio.h>
int main()
{
int digito=0;
do {
printf("%d ",digito++);

16
}
while (digito<=9);
}

17
Conclusin

Los lenguajes de programacin de alto nivel usan palabras o comandos


del lenguaje natural, generalmente del ingls.

Existen muchos lenguajes de programacin de alto nivel con sus


diferentes versiones.

Es comn leer que el lenguaje C se caracteriza como un lenguaje de bajo


nivel aunque no debe confundirse el trmino bajo con poco, ya que el
significado en realidad es profundo, en el sentido que C maneja los elementos
bsicos presentes en todas las computadoras: caracteres, nmeros y
direcciones.

Esta particularidad, junto con el hecho de no poseer operaciones de


entrada-salida, manejo de arreglo de caracteres, de asignacin de memoria,
etc, puede al principio parecer un defecto; sin embargo el hecho de que estas
operaciones se realicen por medio de llamadas a funciones contenidas en
libreras externas al lenguaje en s, es el que confiere al mismo un alto grado
de portabilidad, independizndolo del hardware sobre el cual corren los
programas.

18
Referencias

Electrnicas

C frente C++. Libro en lnea:


http://www1.frm.utn.edu.ar/informatica1/VIANI/LENGUAJE%20C/LENGU
AJE%20C.pdf

Introduccin al lenguaje C. Consultado el 18 de septiembre de 2017 en:


http://www.mailxmail.com/curso-introduccion-lenguaje-c

Programacin orientada a objetos versus programacin estructurada:


C++ y algoritmos. Libro en Lnea:
http://assets.mheducation.es/bcv/guide/capitulo/8448146433.pdf

19

You might also like