SlideShare una empresa de Scribd logo
Lenguaje CLenguaje C
Ing. Fernando SolisIng. Fernando Solis
HISTORIAHISTORIA
 CC es unes un lenguaje de programaciónlenguaje de programación creadocreado
enen 19721972 porpor Ken ThompsonKen Thompson yy
Dennis M. RitchieDennis M. Ritchie en losen los Laboratorios BellLaboratorios Bell
como evolución del anterior lenguajecomo evolución del anterior lenguaje BB, a, a
su vez basado en BCPL. Al igual que B, essu vez basado en BCPL. Al igual que B, es
un lenguaje orientado a la implementaciónun lenguaje orientado a la implementación
de Sistemas Operativos, concretamentede Sistemas Operativos, concretamente
Unix. C es apreciado por la eficiencia delUnix. C es apreciado por la eficiencia del
código que produce y es el lenguaje decódigo que produce y es el lenguaje de
programación más popular para crearprogramación más popular para crear
software de sistemas, aunque también sesoftware de sistemas, aunque también se
utiliza para crear aplicaciones.utiliza para crear aplicaciones.
CaracterísticasCaracterísticas
 Un núcleo del lenguaje simple, conUn núcleo del lenguaje simple, con
funcionalidades añadidas importantes,funcionalidades añadidas importantes,
como funciones matemáticas y de manejocomo funciones matemáticas y de manejo
de ficheros, proporcionadas porde ficheros, proporcionadas por
bibliotecas.bibliotecas.
 Es un lenguaje muy flexible que permiteEs un lenguaje muy flexible que permite
programar con múltiples estilos. Uno deprogramar con múltiples estilos. Uno de
los más empleados es el estructurado .los más empleados es el estructurado .
 Un sistema de tipos que impideUn sistema de tipos que impide
operaciones sin sentido.operaciones sin sentido.
 Acceso a memoria de bajo nivel medianteAcceso a memoria de bajo nivel mediante
el uso de punteros.el uso de punteros.
 Un conjunto reducido de palabras clave.Un conjunto reducido de palabras clave.
Estructura de un programa en CEstructura de un programa en C
 Todos losTodos los
programasprogramas
en Cen C
consisten enconsisten en
una o masuna o mas
funciones, lafunciones, la
única funciónúnica función
que debeque debe
estarestar
siempresiempre
presente es:presente es:
main()main()
 <Comandos de preprocesador><Comandos de preprocesador>
 <Definición de tipos><Definición de tipos>
 <Prototipos de funciones><Prototipos de funciones>
 <Variables globales><Variables globales>
 <Funciones><Funciones>
 Nota: <> puede o no ir,Nota: <> puede o no ir,
 Cada función tiene la siguienteCada función tiene la siguiente
estructura:estructura:
 <Tipo> Nombre de la<Tipo> Nombre de la
Función(<Declaración deFunción(<Declaración de
parámetros>)parámetros>)
 {<Declaraciones locales>{<Declaraciones locales>
 <Sentencias><Sentencias>
 }}
Ejemplo 1Ejemplo 1
/* Programa : HOLA MUNDO *//* Programa : HOLA MUNDO */
#include <stdio.h>#include <stdio.h>
void main() {void main() {
printf ("nHola mundo");printf ("nHola mundo");
}}
BibliotecaBiblioteca
 Es un conjunto de archivosEs un conjunto de archivos
pequeños, que contienen funcionespequeños, que contienen funciones
para llevar a cabo las tareaspara llevar a cabo las tareas
necesarias más comunes.necesarias más comunes.
 Ejemplo:Ejemplo:
 Las operaciones de E/S, funcionesLas operaciones de E/S, funciones
matemáticas,etc.matemáticas,etc.
EnlazadorEnlazador
 Es un programa que enlaza funcionesEs un programa que enlaza funciones
compiladas por separado paracompiladas por separado para
producir un solo programa, tambiénproducir un solo programa, también
combina las funciones de lacombina las funciones de la
biblioteca estándar de C con elbiblioteca estándar de C con el
código que se haya escrito. Lascódigo que se haya escrito. Las
salida del enlazador es un programasalida del enlazador es un programa
ejecutable.ejecutable.
Compilación de un ProgramaCompilación de un Programa
 1.-1.- Creación del Programa.Creación del Programa.(editor,(editor,
.c o .cpp).c o .cpp)
 2.-2.- Compilación.Compilación. Comprobará si elComprobará si el
programa tiene algun error, elprograma tiene algun error, el
compilador traducirá el programacompilador traducirá el programa
fuente a lenguaje máquina,fuente a lenguaje máquina,
almacenándolo en un archivoalmacenándolo en un archivo
ejecutable.ejecutable.
3.- Enlazado del Programa3.- Enlazado del Programa
Programas LegiblesProgramas Legibles
 Con un programa legible se consigue queCon un programa legible se consigue que
dicho programa sea fácil de comprender,dicho programa sea fácil de comprender,
corregir o modificar. Para lo cual se debecorregir o modificar. Para lo cual se debe
cumplir:cumplir:
 Escribir el programa en formaEscribir el programa en forma
estructuradaestructurada
 Escoger nombres de los identificadores deEscoger nombres de los identificadores de
funciones, variables y constantes,funciones, variables y constantes,
apropiadas de a cuerdo a sus función.apropiadas de a cuerdo a sus función.
 Usar una sentencia por línea.Usar una sentencia por línea.
 Poner comentariosPoner comentarios
 Emplear líneas en blanco para separar lasEmplear líneas en blanco para separar las
funciones o bloques de código.funciones o bloques de código.
EL lenguaje C sigue el paradigma de laEL lenguaje C sigue el paradigma de la
programación estructurada:programación estructurada:
 Algoritmos+estructuras de datos = programas.Algoritmos+estructuras de datos = programas.
Tipos de datos básicos (Estructuras):Tipos de datos básicos (Estructuras):
 Entero: preciso y limitado en tamaño.Entero: preciso y limitado en tamaño.
 Real: impreciso y limitado en tamaño.Real: impreciso y limitado en tamaño.
 Lógico: valor de verdad.Lógico: valor de verdad.
 Cadena: secuencia finita de caracteres.Cadena: secuencia finita de caracteres.
 Lista: secuencia finita de datos enumerados.Lista: secuencia finita de datos enumerados.
 Diccionario: secuencia finita de datos indexados.Diccionario: secuencia finita de datos indexados.
Elementos de un programa:Elementos de un programa:
 Constantes: datos cuyo valor no cambia duranteConstantes: datos cuyo valor no cambia durante
la ejecución del programa.la ejecución del programa.
 Variables: datos cuyo valor puede cambiarVariables: datos cuyo valor puede cambiar
durante ladurante la
 ejecución del programa.ejecución del programa.
 Expresiones: Combinación de operadores yExpresiones: Combinación de operadores y
operandos.operandos.
 Operandos: constantes, variables u otrasOperandos: constantes, variables u otras
expresiones.expresiones.
 Operadores: aritméticos, relacionales, lógicos yOperadores: aritméticos, relacionales, lógicos y
de tipo de dato.de tipo de dato.
 Funciones: aceptan unos argumentos y producenFunciones: aceptan unos argumentos y producen
un resultado.un resultado.
Tipos de DatosTipos de Datos
 Los datos en C han de tener unLos datos en C han de tener un tipotipo. Las. Las
variablesvariables contienen datos, y se han de declararcontienen datos, y se han de declarar
del tipo adecuado a los valores que van adel tipo adecuado a los valores que van a
contener.contener.
El C dispone de estos tipos básicos:El C dispone de estos tipos básicos:
Datos de tipo enteroDatos de tipo entero
UnUn dato de tipo enterodato de tipo entero ((intint) es aquel que puede tomar) es aquel que puede tomar
por valor un número perteneciente al conjunto de lospor valor un número perteneciente al conjunto de los
números enteros (números enteros (ZZ), el cual está formado por los números), el cual está formado por los números
naturales, su opuestos (números negativos) y el cero.naturales, su opuestos (números negativos) y el cero.
ZZ = { ..., -3, -2, -1, 0, 1, 2, 3, ... }= { ..., -3, -2, -1, 0, 1, 2, 3, ... }

Ejemplo 1:Ejemplo 1: La edad de una persona y el año en que nació,La edad de una persona y el año en que nació,
son dos datos de tipo entero:son dos datos de tipo entero:
Edad...: 29Edad...: 29
Año....: 1976Año....: 1976
Datos de tipo realDatos de tipo real
UnUn dato de tipo realdato de tipo real ((floatfloat oo doubledouble) es aquel) es aquel
que puede tomar por valor un númeroque puede tomar por valor un número
perteneciente al conjunto de los números realesperteneciente al conjunto de los números reales
((RR), el cual está formado por los números), el cual está formado por los números
racionales e irracionales.racionales e irracionales.
Ejemplo 2:Ejemplo 2: El peso de una persona (enEl peso de una persona (en
kilogramos) y su altura (en centímetros), sonkilogramos) y su altura (en centímetros), son
datos que pueden considerarse de tipo real.datos que pueden considerarse de tipo real.
Peso.....: 75,3Peso.....: 75,3
Altura...: 172,7Altura...: 172,7
 Datos sin valorDatos sin valor
UnUn dato sin valordato sin valor ((voidvoid) es un dato) es un dato
que no puede tomar por valor nigúnque no puede tomar por valor nigún
valor, es decir, es un dato vacíovalor, es decir, es un dato vacío
(nulo).(nulo).
Datos de tipo lógicoDatos de tipo lógico
En programación, unEn programación, un dato de tipo lógicodato de tipo lógico es aquel quees aquel que
puede tomar por valor sólo uno de los dos siguientes:puede tomar por valor sólo uno de los dos siguientes:
{{ verdaderoverdadero,, falsofalso }}
Ejemplo 4:Ejemplo 4: El estado de una barrera de paso de trenes es unEl estado de una barrera de paso de trenes es un
dato que puede considerarse de tipo lógico, por ejemplo,dato que puede considerarse de tipo lógico, por ejemplo,
asociandoasociando verdaderoverdadero a que esté subida ya que esté subida y falsofalso a que estéa que esté
bajada.bajada.
Estado...:Estado...: falsofalso (indica que la barrera está bajada)(indica que la barrera está bajada)
Datos de tipo cadenaDatos de tipo cadena

De todos los tipos de datos que no son básicos se dice queDe todos los tipos de datos que no son básicos se dice que
son derivados, ya que, están basados en alguno que sí loson derivados, ya que, están basados en alguno que sí lo
es. Por ejemplo, loses. Por ejemplo, los datos de tipo cadenadatos de tipo cadena son aquellosson aquellos
que pueden tomar por valor una secuencia de caracteres.que pueden tomar por valor una secuencia de caracteres.
En C, el valor de un dato de tipo cadena se debeEn C, el valor de un dato de tipo cadena se debe
representar entre comillas dobles (").representar entre comillas dobles (").
Ejemplo 5:Ejemplo 5: El título de un libro y el nombre de su autor,El título de un libro y el nombre de su autor,
son datos de tipo cadena.son datos de tipo cadena.
Título...: "La Odisea" (cadena de 9 caracteres)Título...: "La Odisea" (cadena de 9 caracteres)
Autor....: "Homero" (cadena de 6 caracteres)Autor....: "Homero" (cadena de 6 caracteres)
Datos de tipo carácterDatos de tipo carácter
UnUn dato de tipo carácterdato de tipo carácter ((charchar) es aquel que) es aquel que
puede tomar por valor un carácter pertenecientepuede tomar por valor un carácter perteneciente
al conjunto de los caracteres que puedeal conjunto de los caracteres que puede
representar el ordenador.representar el ordenador.
En C, el valor de un dato de tipo carácter se debeEn C, el valor de un dato de tipo carácter se debe
representar entre comillas simples (').representar entre comillas simples (').
Ejemplo 3:Ejemplo 3: En un examen con preguntas en lasEn un examen con preguntas en las
que hay que seleccionar la respuesta correctaque hay que seleccionar la respuesta correcta
entre varias opciones dadas (a, b, c, d, e), laentre varias opciones dadas (a, b, c, d, e), la
respuesta correcta de cada una de las preguntasrespuesta correcta de cada una de las preguntas
es un dato de tipo carácter.es un dato de tipo carácter.
Introducción a los entornos de programación
Nombres de variablesNombres de variables
(identificadores)(identificadores)
 UnUn identificadoridentificador es un nombre que define a una variable,es un nombre que define a una variable,
una función o un tipo de datos.una función o un tipo de datos.
 Un identificador válido ha de empezar por una letra o por elUn identificador válido ha de empezar por una letra o por el
carácer de subrayadocarácer de subrayado __, seguido de cualquier cantidad de, seguido de cualquier cantidad de
letras, dígitos o subrayados.letras, dígitos o subrayados.
 OJO: Se distinguen mayúsculas de minúsculas.OJO: Se distinguen mayúsculas de minúsculas.
 No se pueden utilizar palabras reservadas comoNo se pueden utilizar palabras reservadas como intint,, charchar oo
whilewhile..
 Muchos compiladores no permiten letras acentuadas oMuchos compiladores no permiten letras acentuadas o
eñes.eñes.
Ejemplos válidos:Ejemplos válidos:
 char letra;char letra;
 int Letra;int Letra;
 float CHAR;float CHAR;
 int __variable__;int __variable__;
 int cantidad_envases;int cantidad_envases;
 double precio123;double precio123;
 int __;int __;
 Ejemplos no válidos:Ejemplos no válidos:
 int 123var; /* Empieza por dígitos */int 123var; /* Empieza por dígitos */
 char int; /* Palabra reservada */char int; /* Palabra reservada */
 int una sola; /* Contiene espacios */int una sola; /* Contiene espacios */
 int US$; /* Contiene $ */int US$; /* Contiene $ */
 int var.nueva; /* Contiene el punto /int var.nueva; /* Contiene el punto /
 int eñe; /* Puede no funcionar */int eñe; /* Puede no funcionar */
VariablesVariables
 LasLas variablesvariables se utilizan para guardar datos dentro del programa.se utilizan para guardar datos dentro del programa.
 Hay queHay que declarardeclarar las variables antes de usarlas.las variables antes de usarlas.
 Cada variable tiene unCada variable tiene un tipotipo..
 Declaración:Declaración:
 tipo nombretipo nombre ;;
 Ejemplo:Ejemplo:
 int pepe;int pepe;
 Las variables globales se declaran justo antes deLas variables globales se declaran justo antes de main()main()..
 Ejemplo :Ejemplo : Para declarar varias variables delPara declarar varias variables del
mismo tipo de dato se puede escribir:mismo tipo de dato se puede escribir:
intint edadedad;;
intint numero_de_hijosnumero_de_hijos;;
O también, en la misma línea separadas por elO también, en la misma línea separadas por el
caráctercarácter comacoma ((,,):):
intint edadedad,, numero_de_hijosnumero_de_hijos;;
 Si se desea declarar una variable para almacenarSi se desea declarar una variable para almacenar
un número entero y que, inicialmente, contengaun número entero y que, inicialmente, contenga
el valorel valor 3535, se debe escribir:, se debe escribir:
intint numeronumero == 3535;;
 A continuación, se muestra laA continuación, se muestra la
declaración de una variable paradeclaración de una variable para
almacenar una letra del alfabetoalmacenar una letra del alfabeto
y que, inicialmente, contenga ely que, inicialmente, contenga el
valorvalor 'Z''Z'::
 charchar letraletra = '= 'ZZ';';
Ejemplo :Ejemplo : Para declarar unaPara declarar una
variable que pueda almacenar elvariable que pueda almacenar el
nombre de una persona y que,nombre de una persona y que,
inicialmente, contenga elinicialmente, contenga el
valorvalor "Isabel""Isabel", escribiremos:, escribiremos:
charchar nombrenombre[[77]] = "= "IsabelIsabel";";
Constantes (1/2)Constantes (1/2)
 En C, una constante puede ser de tipo entero,En C, una constante puede ser de tipo entero,
real, carácter, de cadena o enumerado., sereal, carácter, de cadena o enumerado., se
pueden expresar de dos formas diferentes:pueden expresar de dos formas diferentes:
1. Por su valor.1. Por su valor.
2. Con un nombre (identificador).2. Con un nombre (identificador).
 Ejemplo :Ejemplo : Las siguientes contantes de tipoLas siguientes contantes de tipo
entero están expresadas por su valor:entero están expresadas por su valor:
--55
1010
Constantes (2/2)Constantes (2/2)
 Para declarar una constante simbólica, en C, sePara declarar una constante simbólica, en C, se
utiliza una nueva directiva del preprocesador:utiliza una nueva directiva del preprocesador:
#define#define <nombre_de_la_constante><nombre_de_la_constante>
<secuencia_de_caracteres><secuencia_de_caracteres>
 Ejemplo :Ejemplo : Dos constantes muy habituales son:Dos constantes muy habituales son:
#define#define PI 3PI 3..141592141592
#define#define NUMERO_E 2NUMERO_E 2..718281718281

Más contenido relacionado

PPTX
APLICACION DEL CALCULO EN LA INFORMATICA
DOCX
Algoritmo variables, constantes, tipos de datos y asignacion
PPT
Método de las 6 d
DOCX
Ejemplo de uno a uno
PPT
Algoritmo Repetitivo
DOCX
Tareas de ingenieria de requerimientos
PDF
9 Curso de POO en java - variables, constantes y objetos
DOCX
LENGUAJE DE PROGRAMACION. INVESTIGACION
APLICACION DEL CALCULO EN LA INFORMATICA
Algoritmo variables, constantes, tipos de datos y asignacion
Método de las 6 d
Ejemplo de uno a uno
Algoritmo Repetitivo
Tareas de ingenieria de requerimientos
9 Curso de POO en java - variables, constantes y objetos
LENGUAJE DE PROGRAMACION. INVESTIGACION

La actualidad más candente (20)

PPTX
tipo de datos
DOCX
Listas como estructura de datos..
PPTX
Tipos de pruebas de software
PDF
Código de ética profesional en el área de informática
PDF
6 Curso de POO en Java - clases y objetos
PPS
Asignación, Salida y Entrada
PDF
Funciones y procedimientos propios de LPP
PDF
Ejemplo manual de usuario
PDF
Importancia seguridad-redes
PPTX
Uso y manejo de DFD - Una aproximación
PPS
Identificadores, variables y constantes
PPTX
CIBERSEGURIDAD.pptx
PPTX
Modelo evolutivo
PDF
Calculadora con operaciones básicas en java
PPT
Seguridad informática introduccion
PPT
Linea de productos de software y Metodo Watch
DOC
Algoritmos secuenciales resueldos
PPTX
La ética
PPTX
Java pilas (Stacks) y colas (Queues)
DOCX
Algoritmos condicionales
tipo de datos
Listas como estructura de datos..
Tipos de pruebas de software
Código de ética profesional en el área de informática
6 Curso de POO en Java - clases y objetos
Asignación, Salida y Entrada
Funciones y procedimientos propios de LPP
Ejemplo manual de usuario
Importancia seguridad-redes
Uso y manejo de DFD - Una aproximación
Identificadores, variables y constantes
CIBERSEGURIDAD.pptx
Modelo evolutivo
Calculadora con operaciones básicas en java
Seguridad informática introduccion
Linea de productos de software y Metodo Watch
Algoritmos secuenciales resueldos
La ética
Java pilas (Stacks) y colas (Queues)
Algoritmos condicionales
Publicidad

Similar a Introducción a los entornos de programación (20)

DOCX
DOCX
Manual de usuario c
PDF
Introduccion del Lenguaje C
PPT
8 tipos variables constantes
PDF
Lenguaje c 1
DOC
Lenguaje c completo 6 g x revisar x los estudiantes
DOCX
Programa
DOCX
Tutorial C
DOCX
Ensayo de programacion c
PPTX
Lenguaje c
PDF
Curso de lenguaje c prev
DOCX
Manual de Programación c/c++ Ricky Bonilla
DOCX
Cesar ivan lenguaje_c
PPTX
Tutorial lenguaje c
PPTX
Tutorial lenguaje c
DOCX
PPT
IntroLenguajeC.ppt
PDF
Estructuras Básicas en C++
PDF
ilide.info-programacion-en-c-byron-gottfried-pr_26990611b622a3b74e992c2602ed5...
Manual de usuario c
Introduccion del Lenguaje C
8 tipos variables constantes
Lenguaje c 1
Lenguaje c completo 6 g x revisar x los estudiantes
Programa
Tutorial C
Ensayo de programacion c
Lenguaje c
Curso de lenguaje c prev
Manual de Programación c/c++ Ricky Bonilla
Cesar ivan lenguaje_c
Tutorial lenguaje c
Tutorial lenguaje c
IntroLenguajeC.ppt
Estructuras Básicas en C++
ilide.info-programacion-en-c-byron-gottfried-pr_26990611b622a3b74e992c2602ed5...
Publicidad

Más de Fernando Solis (20)

PDF
fundamentos de programación el arte de programar
PDF
2.5 PROYECTOS DE POO
PDF
24.3.3. Strategy
PDF
TEMPLAT E
PDF
Patrón Singleton
PDF
Tipos de Patrones
PDF
Importancia de los patrones de diseño
PDF
Introduccion-a-los-Patrones-de-Comportamiento.pdf
PDF
Bajo acoplamiento.pdf
PDF
MODULARIDAD _AltaCohesion
PDF
Localización de decisiones de diseño
PDF
Código entendible, flexible y mantenible
PDF
22.5 Dependency Inversion
PDF
Segregación de Interfaces
PDF
Sustitución de Liskov
PDF
Principio Open-Closed Mantilla
PDF
Principio-de-Responsabilidad-Unica-en-Java
PDF
21.7 Integración de componentes gráficos y clases
PDF
21.6 Gestion de Eventos - Componentes y Objetos Gráficos Java
PDF
21.5 Tablas - Componentes y Objetos Gráficos Java
fundamentos de programación el arte de programar
2.5 PROYECTOS DE POO
24.3.3. Strategy
TEMPLAT E
Patrón Singleton
Tipos de Patrones
Importancia de los patrones de diseño
Introduccion-a-los-Patrones-de-Comportamiento.pdf
Bajo acoplamiento.pdf
MODULARIDAD _AltaCohesion
Localización de decisiones de diseño
Código entendible, flexible y mantenible
22.5 Dependency Inversion
Segregación de Interfaces
Sustitución de Liskov
Principio Open-Closed Mantilla
Principio-de-Responsabilidad-Unica-en-Java
21.7 Integración de componentes gráficos y clases
21.6 Gestion de Eventos - Componentes y Objetos Gráficos Java
21.5 Tablas - Componentes y Objetos Gráficos Java

Último (20)

PDF
Atencion prenatal. Ginecologia y obsetricia
PDF
Mi Primer Millon - Poissant - Godefroy Ccesa007.pdf
PDF
La Formacion Universitaria en Nuevos Escenarios Ccesa007.pdf
PDF
Como Potenciar las Emociones Positivas y Afrontar las Negativas Ccesa007.pdf
DOCX
PLAN DE AREA DE CIENCIAS SOCIALES TODOS LOS GRUPOS
PDF
Tomo 1 de biologia gratis ultra plusenmas
PDF
MATERIAL DIDÁCTICO 2023 SELECCIÓN 1_REFORZAMIENTO 1° BIMESTRE_COM.pdf
PDF
Integrando la Inteligencia Artificial Generativa (IAG) en el Aula
PDF
Iniciación Al Aprendizaje Basado En Proyectos ABP Ccesa007.pdf
PDF
el - LIBRO-PACTO-EDUCATIVO-GLOBAL-OIEC.pdf
PDF
EL aprendizaje adaptativo bajo STEM+H.pdf
PDF
PFB-MANUAL-PRUEBA-FUNCIONES-BASICAS-pdf.pdf
PPTX
MATEMATICAS GEOMETRICA USO TRANSPORTADOR
PPTX
Presentación de la Cetoacidosis diabetica.pptx
PDF
TOMO II - LITERATURA.pd plusenmas ultras
PDF
5°-UNIDAD 5 - 2025.pdf aprendizaje 5tooo
DOCX
V UNIDAD - SEGUNDO GRADO. del mes de agosto
PDF
IDH_Guatemala_2.pdfnjjjkeioooe ,l dkdldp ekooe
PPTX
LAS MIGRACIONES E INVASIONES Y EL INICIO EDAD MEDIA
DOCX
Programa_Sintetico_Fase_4.docx 3° Y 4°..
Atencion prenatal. Ginecologia y obsetricia
Mi Primer Millon - Poissant - Godefroy Ccesa007.pdf
La Formacion Universitaria en Nuevos Escenarios Ccesa007.pdf
Como Potenciar las Emociones Positivas y Afrontar las Negativas Ccesa007.pdf
PLAN DE AREA DE CIENCIAS SOCIALES TODOS LOS GRUPOS
Tomo 1 de biologia gratis ultra plusenmas
MATERIAL DIDÁCTICO 2023 SELECCIÓN 1_REFORZAMIENTO 1° BIMESTRE_COM.pdf
Integrando la Inteligencia Artificial Generativa (IAG) en el Aula
Iniciación Al Aprendizaje Basado En Proyectos ABP Ccesa007.pdf
el - LIBRO-PACTO-EDUCATIVO-GLOBAL-OIEC.pdf
EL aprendizaje adaptativo bajo STEM+H.pdf
PFB-MANUAL-PRUEBA-FUNCIONES-BASICAS-pdf.pdf
MATEMATICAS GEOMETRICA USO TRANSPORTADOR
Presentación de la Cetoacidosis diabetica.pptx
TOMO II - LITERATURA.pd plusenmas ultras
5°-UNIDAD 5 - 2025.pdf aprendizaje 5tooo
V UNIDAD - SEGUNDO GRADO. del mes de agosto
IDH_Guatemala_2.pdfnjjjkeioooe ,l dkdldp ekooe
LAS MIGRACIONES E INVASIONES Y EL INICIO EDAD MEDIA
Programa_Sintetico_Fase_4.docx 3° Y 4°..

Introducción a los entornos de programación

  • 1. Lenguaje CLenguaje C Ing. Fernando SolisIng. Fernando Solis
  • 2. HISTORIAHISTORIA  CC es unes un lenguaje de programaciónlenguaje de programación creadocreado enen 19721972 porpor Ken ThompsonKen Thompson yy Dennis M. RitchieDennis M. Ritchie en losen los Laboratorios BellLaboratorios Bell como evolución del anterior lenguajecomo evolución del anterior lenguaje BB, a, a su vez basado en BCPL. Al igual que B, essu vez basado en BCPL. Al igual que B, es un lenguaje orientado a la implementaciónun lenguaje orientado a la implementación de Sistemas Operativos, concretamentede Sistemas Operativos, concretamente Unix. C es apreciado por la eficiencia delUnix. C es apreciado por la eficiencia del código que produce y es el lenguaje decódigo que produce y es el lenguaje de programación más popular para crearprogramación más popular para crear software de sistemas, aunque también sesoftware de sistemas, aunque también se utiliza para crear aplicaciones.utiliza para crear aplicaciones.
  • 3. CaracterísticasCaracterísticas  Un núcleo del lenguaje simple, conUn núcleo del lenguaje simple, con funcionalidades añadidas importantes,funcionalidades añadidas importantes, como funciones matemáticas y de manejocomo funciones matemáticas y de manejo de ficheros, proporcionadas porde ficheros, proporcionadas por bibliotecas.bibliotecas.  Es un lenguaje muy flexible que permiteEs un lenguaje muy flexible que permite programar con múltiples estilos. Uno deprogramar con múltiples estilos. Uno de los más empleados es el estructurado .los más empleados es el estructurado .  Un sistema de tipos que impideUn sistema de tipos que impide operaciones sin sentido.operaciones sin sentido.  Acceso a memoria de bajo nivel medianteAcceso a memoria de bajo nivel mediante el uso de punteros.el uso de punteros.  Un conjunto reducido de palabras clave.Un conjunto reducido de palabras clave.
  • 4. Estructura de un programa en CEstructura de un programa en C  Todos losTodos los programasprogramas en Cen C consisten enconsisten en una o masuna o mas funciones, lafunciones, la única funciónúnica función que debeque debe estarestar siempresiempre presente es:presente es: main()main()  <Comandos de preprocesador><Comandos de preprocesador>  <Definición de tipos><Definición de tipos>  <Prototipos de funciones><Prototipos de funciones>  <Variables globales><Variables globales>  <Funciones><Funciones>  Nota: <> puede o no ir,Nota: <> puede o no ir,  Cada función tiene la siguienteCada función tiene la siguiente estructura:estructura:  <Tipo> Nombre de la<Tipo> Nombre de la Función(<Declaración deFunción(<Declaración de parámetros>)parámetros>)  {<Declaraciones locales>{<Declaraciones locales>  <Sentencias><Sentencias>  }}
  • 5. Ejemplo 1Ejemplo 1 /* Programa : HOLA MUNDO *//* Programa : HOLA MUNDO */ #include <stdio.h>#include <stdio.h> void main() {void main() { printf ("nHola mundo");printf ("nHola mundo"); }}
  • 6. BibliotecaBiblioteca  Es un conjunto de archivosEs un conjunto de archivos pequeños, que contienen funcionespequeños, que contienen funciones para llevar a cabo las tareaspara llevar a cabo las tareas necesarias más comunes.necesarias más comunes.  Ejemplo:Ejemplo:  Las operaciones de E/S, funcionesLas operaciones de E/S, funciones matemáticas,etc.matemáticas,etc.
  • 7. EnlazadorEnlazador  Es un programa que enlaza funcionesEs un programa que enlaza funciones compiladas por separado paracompiladas por separado para producir un solo programa, tambiénproducir un solo programa, también combina las funciones de lacombina las funciones de la biblioteca estándar de C con elbiblioteca estándar de C con el código que se haya escrito. Lascódigo que se haya escrito. Las salida del enlazador es un programasalida del enlazador es un programa ejecutable.ejecutable.
  • 8. Compilación de un ProgramaCompilación de un Programa  1.-1.- Creación del Programa.Creación del Programa.(editor,(editor, .c o .cpp).c o .cpp)  2.-2.- Compilación.Compilación. Comprobará si elComprobará si el programa tiene algun error, elprograma tiene algun error, el compilador traducirá el programacompilador traducirá el programa fuente a lenguaje máquina,fuente a lenguaje máquina, almacenándolo en un archivoalmacenándolo en un archivo ejecutable.ejecutable. 3.- Enlazado del Programa3.- Enlazado del Programa
  • 9. Programas LegiblesProgramas Legibles  Con un programa legible se consigue queCon un programa legible se consigue que dicho programa sea fácil de comprender,dicho programa sea fácil de comprender, corregir o modificar. Para lo cual se debecorregir o modificar. Para lo cual se debe cumplir:cumplir:  Escribir el programa en formaEscribir el programa en forma estructuradaestructurada  Escoger nombres de los identificadores deEscoger nombres de los identificadores de funciones, variables y constantes,funciones, variables y constantes, apropiadas de a cuerdo a sus función.apropiadas de a cuerdo a sus función.  Usar una sentencia por línea.Usar una sentencia por línea.  Poner comentariosPoner comentarios  Emplear líneas en blanco para separar lasEmplear líneas en blanco para separar las funciones o bloques de código.funciones o bloques de código.
  • 10. EL lenguaje C sigue el paradigma de laEL lenguaje C sigue el paradigma de la programación estructurada:programación estructurada:  Algoritmos+estructuras de datos = programas.Algoritmos+estructuras de datos = programas. Tipos de datos básicos (Estructuras):Tipos de datos básicos (Estructuras):  Entero: preciso y limitado en tamaño.Entero: preciso y limitado en tamaño.  Real: impreciso y limitado en tamaño.Real: impreciso y limitado en tamaño.  Lógico: valor de verdad.Lógico: valor de verdad.  Cadena: secuencia finita de caracteres.Cadena: secuencia finita de caracteres.  Lista: secuencia finita de datos enumerados.Lista: secuencia finita de datos enumerados.  Diccionario: secuencia finita de datos indexados.Diccionario: secuencia finita de datos indexados.
  • 11. Elementos de un programa:Elementos de un programa:  Constantes: datos cuyo valor no cambia duranteConstantes: datos cuyo valor no cambia durante la ejecución del programa.la ejecución del programa.  Variables: datos cuyo valor puede cambiarVariables: datos cuyo valor puede cambiar durante ladurante la  ejecución del programa.ejecución del programa.  Expresiones: Combinación de operadores yExpresiones: Combinación de operadores y operandos.operandos.  Operandos: constantes, variables u otrasOperandos: constantes, variables u otras expresiones.expresiones.  Operadores: aritméticos, relacionales, lógicos yOperadores: aritméticos, relacionales, lógicos y de tipo de dato.de tipo de dato.  Funciones: aceptan unos argumentos y producenFunciones: aceptan unos argumentos y producen un resultado.un resultado.
  • 12. Tipos de DatosTipos de Datos  Los datos en C han de tener unLos datos en C han de tener un tipotipo. Las. Las variablesvariables contienen datos, y se han de declararcontienen datos, y se han de declarar del tipo adecuado a los valores que van adel tipo adecuado a los valores que van a contener.contener. El C dispone de estos tipos básicos:El C dispone de estos tipos básicos:
  • 13. Datos de tipo enteroDatos de tipo entero UnUn dato de tipo enterodato de tipo entero ((intint) es aquel que puede tomar) es aquel que puede tomar por valor un número perteneciente al conjunto de lospor valor un número perteneciente al conjunto de los números enteros (números enteros (ZZ), el cual está formado por los números), el cual está formado por los números naturales, su opuestos (números negativos) y el cero.naturales, su opuestos (números negativos) y el cero. ZZ = { ..., -3, -2, -1, 0, 1, 2, 3, ... }= { ..., -3, -2, -1, 0, 1, 2, 3, ... }  Ejemplo 1:Ejemplo 1: La edad de una persona y el año en que nació,La edad de una persona y el año en que nació, son dos datos de tipo entero:son dos datos de tipo entero: Edad...: 29Edad...: 29 Año....: 1976Año....: 1976
  • 14. Datos de tipo realDatos de tipo real UnUn dato de tipo realdato de tipo real ((floatfloat oo doubledouble) es aquel) es aquel que puede tomar por valor un númeroque puede tomar por valor un número perteneciente al conjunto de los números realesperteneciente al conjunto de los números reales ((RR), el cual está formado por los números), el cual está formado por los números racionales e irracionales.racionales e irracionales. Ejemplo 2:Ejemplo 2: El peso de una persona (enEl peso de una persona (en kilogramos) y su altura (en centímetros), sonkilogramos) y su altura (en centímetros), son datos que pueden considerarse de tipo real.datos que pueden considerarse de tipo real. Peso.....: 75,3Peso.....: 75,3 Altura...: 172,7Altura...: 172,7
  • 15.  Datos sin valorDatos sin valor UnUn dato sin valordato sin valor ((voidvoid) es un dato) es un dato que no puede tomar por valor nigúnque no puede tomar por valor nigún valor, es decir, es un dato vacíovalor, es decir, es un dato vacío (nulo).(nulo).
  • 16. Datos de tipo lógicoDatos de tipo lógico En programación, unEn programación, un dato de tipo lógicodato de tipo lógico es aquel quees aquel que puede tomar por valor sólo uno de los dos siguientes:puede tomar por valor sólo uno de los dos siguientes: {{ verdaderoverdadero,, falsofalso }} Ejemplo 4:Ejemplo 4: El estado de una barrera de paso de trenes es unEl estado de una barrera de paso de trenes es un dato que puede considerarse de tipo lógico, por ejemplo,dato que puede considerarse de tipo lógico, por ejemplo, asociandoasociando verdaderoverdadero a que esté subida ya que esté subida y falsofalso a que estéa que esté bajada.bajada. Estado...:Estado...: falsofalso (indica que la barrera está bajada)(indica que la barrera está bajada)
  • 17. Datos de tipo cadenaDatos de tipo cadena  De todos los tipos de datos que no son básicos se dice queDe todos los tipos de datos que no son básicos se dice que son derivados, ya que, están basados en alguno que sí loson derivados, ya que, están basados en alguno que sí lo es. Por ejemplo, loses. Por ejemplo, los datos de tipo cadenadatos de tipo cadena son aquellosson aquellos que pueden tomar por valor una secuencia de caracteres.que pueden tomar por valor una secuencia de caracteres. En C, el valor de un dato de tipo cadena se debeEn C, el valor de un dato de tipo cadena se debe representar entre comillas dobles (").representar entre comillas dobles ("). Ejemplo 5:Ejemplo 5: El título de un libro y el nombre de su autor,El título de un libro y el nombre de su autor, son datos de tipo cadena.son datos de tipo cadena. Título...: "La Odisea" (cadena de 9 caracteres)Título...: "La Odisea" (cadena de 9 caracteres) Autor....: "Homero" (cadena de 6 caracteres)Autor....: "Homero" (cadena de 6 caracteres)
  • 18. Datos de tipo carácterDatos de tipo carácter UnUn dato de tipo carácterdato de tipo carácter ((charchar) es aquel que) es aquel que puede tomar por valor un carácter pertenecientepuede tomar por valor un carácter perteneciente al conjunto de los caracteres que puedeal conjunto de los caracteres que puede representar el ordenador.representar el ordenador. En C, el valor de un dato de tipo carácter se debeEn C, el valor de un dato de tipo carácter se debe representar entre comillas simples (').representar entre comillas simples ('). Ejemplo 3:Ejemplo 3: En un examen con preguntas en lasEn un examen con preguntas en las que hay que seleccionar la respuesta correctaque hay que seleccionar la respuesta correcta entre varias opciones dadas (a, b, c, d, e), laentre varias opciones dadas (a, b, c, d, e), la respuesta correcta de cada una de las preguntasrespuesta correcta de cada una de las preguntas es un dato de tipo carácter.es un dato de tipo carácter.
  • 20. Nombres de variablesNombres de variables (identificadores)(identificadores)  UnUn identificadoridentificador es un nombre que define a una variable,es un nombre que define a una variable, una función o un tipo de datos.una función o un tipo de datos.  Un identificador válido ha de empezar por una letra o por elUn identificador válido ha de empezar por una letra o por el carácer de subrayadocarácer de subrayado __, seguido de cualquier cantidad de, seguido de cualquier cantidad de letras, dígitos o subrayados.letras, dígitos o subrayados.  OJO: Se distinguen mayúsculas de minúsculas.OJO: Se distinguen mayúsculas de minúsculas.  No se pueden utilizar palabras reservadas comoNo se pueden utilizar palabras reservadas como intint,, charchar oo whilewhile..  Muchos compiladores no permiten letras acentuadas oMuchos compiladores no permiten letras acentuadas o eñes.eñes.
  • 21. Ejemplos válidos:Ejemplos válidos:  char letra;char letra;  int Letra;int Letra;  float CHAR;float CHAR;  int __variable__;int __variable__;  int cantidad_envases;int cantidad_envases;  double precio123;double precio123;  int __;int __;  Ejemplos no válidos:Ejemplos no válidos:  int 123var; /* Empieza por dígitos */int 123var; /* Empieza por dígitos */  char int; /* Palabra reservada */char int; /* Palabra reservada */  int una sola; /* Contiene espacios */int una sola; /* Contiene espacios */  int US$; /* Contiene $ */int US$; /* Contiene $ */  int var.nueva; /* Contiene el punto /int var.nueva; /* Contiene el punto /  int eñe; /* Puede no funcionar */int eñe; /* Puede no funcionar */
  • 22. VariablesVariables  LasLas variablesvariables se utilizan para guardar datos dentro del programa.se utilizan para guardar datos dentro del programa.  Hay queHay que declarardeclarar las variables antes de usarlas.las variables antes de usarlas.  Cada variable tiene unCada variable tiene un tipotipo..  Declaración:Declaración:  tipo nombretipo nombre ;;  Ejemplo:Ejemplo:  int pepe;int pepe;  Las variables globales se declaran justo antes deLas variables globales se declaran justo antes de main()main()..
  • 23.  Ejemplo :Ejemplo : Para declarar varias variables delPara declarar varias variables del mismo tipo de dato se puede escribir:mismo tipo de dato se puede escribir: intint edadedad;; intint numero_de_hijosnumero_de_hijos;; O también, en la misma línea separadas por elO también, en la misma línea separadas por el caráctercarácter comacoma ((,,):): intint edadedad,, numero_de_hijosnumero_de_hijos;;  Si se desea declarar una variable para almacenarSi se desea declarar una variable para almacenar un número entero y que, inicialmente, contengaun número entero y que, inicialmente, contenga el valorel valor 3535, se debe escribir:, se debe escribir: intint numeronumero == 3535;;
  • 24.  A continuación, se muestra laA continuación, se muestra la declaración de una variable paradeclaración de una variable para almacenar una letra del alfabetoalmacenar una letra del alfabeto y que, inicialmente, contenga ely que, inicialmente, contenga el valorvalor 'Z''Z'::  charchar letraletra = '= 'ZZ';'; Ejemplo :Ejemplo : Para declarar unaPara declarar una variable que pueda almacenar elvariable que pueda almacenar el nombre de una persona y que,nombre de una persona y que, inicialmente, contenga elinicialmente, contenga el valorvalor "Isabel""Isabel", escribiremos:, escribiremos: charchar nombrenombre[[77]] = "= "IsabelIsabel";";
  • 25. Constantes (1/2)Constantes (1/2)  En C, una constante puede ser de tipo entero,En C, una constante puede ser de tipo entero, real, carácter, de cadena o enumerado., sereal, carácter, de cadena o enumerado., se pueden expresar de dos formas diferentes:pueden expresar de dos formas diferentes: 1. Por su valor.1. Por su valor. 2. Con un nombre (identificador).2. Con un nombre (identificador).  Ejemplo :Ejemplo : Las siguientes contantes de tipoLas siguientes contantes de tipo entero están expresadas por su valor:entero están expresadas por su valor: --55 1010
  • 26. Constantes (2/2)Constantes (2/2)  Para declarar una constante simbólica, en C, sePara declarar una constante simbólica, en C, se utiliza una nueva directiva del preprocesador:utiliza una nueva directiva del preprocesador: #define#define <nombre_de_la_constante><nombre_de_la_constante> <secuencia_de_caracteres><secuencia_de_caracteres>  Ejemplo :Ejemplo : Dos constantes muy habituales son:Dos constantes muy habituales son: #define#define PI 3PI 3..141592141592 #define#define NUMERO_E 2NUMERO_E 2..718281718281