SlideShare une entreprise Scribd logo
1  sur  26
Introducción al
  Lenguaje C
Historia del Lenguaje C
   Fue inventado por Dennis Ritchie en los
    Laboratorios BELL, basándose en el lenguaje B,
    creado por Ken Thompson.
   En 1983 el Instituto de Estándares Americanos
    estableció un estándar que definiera al lenguaje
    C, conocido como ANSI C.
   Los principales compiladores de C llevan
    implementado el estándar ANSI C.
Características del Lenguaje C
   Se cataloga como un lenguaje de nivel medio,
    puesto que combina elementos de lenguajes de
    alto nivel (Fortran, Pascal, Basic, etc.) con la
    funcionalidad del lenguaje ensamblador.
   Permite el manejo de bits, bytes y direcciones de
    memoria.
   Posee sólo 32 palabras clave, definidas por el
    comité ANSI.
32 Palabras Reservadas
  char       void    default    return
  int         if      break      auto
  float      else    continue   extern
 double       do      goto      register
  long       while    struct     const
 short        for     union      static
 signed     switch    enum      volatile
unsigned     case    typedef    sizeof
Elementos de un Programa
   Comentarios.
   Identificadores.
   Constantes.
   Variables.
   Operadores.
   Sentencias o instrucciones.
   Macros del pre-procesador.
Comentarios
   Comentarios multi-línea
       Comienzan con /* y terminan con */
       No puede anidarse un comentario dentro de otro.
   Comentarios de una sola línea (C++, Java, Delphi).
       Comienzan al principio de la línea con //
   Ejemplo:

         //Esto es un comentario
         /* Esto también es
                un comentario */
Identificadores
   Se utilizan para nombrar variables, funciones,
    etiquetas y elementos definidos por el usuario.
   Los primeros seis caracteres deben ser
    significativos (distinguirse de otro similar) y
    máximo puede tener hasta 31 caracteres.
   El primer carácter debe de ser una letra.
    Posteriormente pueden ser letras, números,
    signos de subrayado.
   Existe diferencia entre mayúsculas y minúsculas.
Identificadores
   No pueden emplearse palabras reservadas como
    identificadores.
   No pueden emplearse nombres de funciones
    que ya existan en el programa o en la librería de
    funciones de C.
   No puede llamarse main.
Convenciones
   Empezar los nombres de funciones y de variables con
    una letra minúscula.
   Las constantes escritas con #define van con
    mayúsculas como #define PI 3.1416
   Las palabras intermedias comienzan con mayúsculas.
    sumaMatrices
   Utilizar el subguión para separar palabras intermedias.
    suma_Matrices
   Emplear nombres cortos para optimizar. (i, j, k, cont)
#define
   Se utiliza para asignar un identificador a una
    constante.
    #define PI 3.1416
    #define NCOLS 20
   El pre-procesador de C, sustituye la ocurrencia
    de PI por el valor 3.1416 en todo el programa
    antes de efectuar la compilación, del mismo
    modo se sustituye NCOLS por 20.
Variables
   Una variable es una localidad de memoria cuyo
    valor puede ser cambiado durante la ejecución
    del programa.
   Todas las variables deben de ser declaradas para
    se utilizadas.
      <tipo de dato> espacio(s) <identificador>;
   Ejemplo:
       int a;
       float area, radio, volumen;
const
 Es un modificador de acceso que me permite
  asignar a una variable un valor constante, es
  decir que una vez asignado a dicha variable su
  valor no podrá ser modificado durante el
  programa.
 const <tipo dato> esp <identificador> = valor;
 Ejemplo:
     const int a=10;
     const char pais[]=“MÉXICO”;
     const char *nombre=“VLADIMIR”;
Operadores
   Son palabras o símbolos que implican una acción sobre
    ciertas variables. Pueden ser unarios (1 variable),
    binarios(2 variables) o ternarios (3 variables).
   Operadores Aritméticos
   Operadores Relacionales
   Operadores Lógicos
   Operadores de Asignación
   Operadores de Dirección
   Operadores de Bits
Operadores Aritméticos
  Operador          Nombre         Descripción
      +              Suma            5+2 → 7
      -              Resta           5-2 → 3
      *          Multiplicación      5*2 → 10
      /             División         5/2 → 2
     %              Módulo           5%2 → 1
(tipo de dato)   “Cast” forzado   (double)5 → 5.0
Operadores Relacionales
Operador       Nombre          Descripción
  ==            Igual a        if (a==‘s’)
   !=        Diferente de      if (a!=null)
   >          Mayor que         if (a>0.5)
   <          Menor que         if (a<2l)
  >=       Mayor o igual que    if (a>=2f)
  <=       Menor o igual que    if (a<=3)
Operadores Lógicos
    Operador      Nombre           Descripción
       &&         Y (AND)      if ((a>3) && (a<9))
       ||          O (OR)     if ((a==2) || (a==3))
        !        NEGADO       if (!(a==3)) es igual a
                  (NOT)               if (a!=3)
   Importante:
       FALSO es igual a cero.
       VERDADERO es diferente de cero.
Operadores de Asignación
Operador   Abreviado   No Abreviado
   =          a=2;         a=2;
  ++         n++;        n=n+1;
   --         n--;        n=n-1;
  +=        n+=2;        n=n+2;
  -=         n-=2;        n=n-2;
  *=         n*=2;       n=n*2;
  /=        n/=2;        n=n/2;
  %=        n%=2;        n=n%2;
Operadores De Dirección
Operador    Nombre           Descripción
   *        Operador Me da el valor que está
           indirección almacenado en una
                       dirección de memoria.
                       También sirve para
                       declarar una variable
                       apuntador.
   &       Operador    Me da la dirección de
           dirección   memoria de una variable.
Variables Apuntador
   Sirven para almacenar una dirección de memoria.
   Utilizan el operador & para obtener la dirección.
   Se deben inicializar con NULL (equivale a cero).
   Se declaran como:
     <tipo de dato><*> espacio(s) <identificador>;
   Ejemplo:
       int *a=NULL;
       int b=2,c=1;
       a=&b; /*Guarda la direc. de b en a */
       c=*a; /*c vale 2 */
Precedencia de Operadores
()[]                     Alta prioridad
! ~ + - ++ -- & * sizeof Unarios
* / %+-                  Aritméticos
< <= > >= == !=          Relacionales
& | && || ?:             Bits / Lógicos / Condicional
= *= /= %= += -= &=      Asignación
^= |= <<= >>=
Sentencias (Instrucciones)
   Una sentencia es una instrucción o expresión en C que
    tiene una consecuencia. Pueden ser asignaciones,
    operaciones, llamadas a funciones.
   Todas las sentencias terminan con el signo de punto y
    coma ;
   Pueden ser simples o compuestas. Las compuestas van
    entre llaves:
    {
      sentencia1;
      sentencia2;
      :
      sentencian;
    }
Estructura de un programa en C
      I. Directivas del pre-procesador
             #include y #define
        II. Declaración de Prototipos
           (Declaración de funciones)
   III. Declaración de variables globales

   IV. Funciones definidas por el usuario

       V. Función Principal main( )
#include <stdio.h>
                        Ejemplo
#include <math.h>
#define VALOR 5.7

int main( void ){
  int x, y, z;
  x=y=z=VALOR;
  printf(“nEl valor de x es: %d”,x);
  return(0);
}
Arreglos de Caracteres
   Una cadena o “String” se manipula en lenguaje C,
    mediante arreglos de caracteres. Los arreglos de
    caracteres terminan con el carácter nulo ‘0’ que
    en realidad es el valor cero.
   La única diferencia con los arreglos numéricos es
    que se requiere un carácter adicional para indicar
    cuando el final del arreglo.
   Ejemplo:
       char nombre[31]; /* Uso sólo 30 */
LIBRERIAS OBLIGATORIAS
   stdio.h
    stdio.h, que significa "standard input-output
    header" (cabecera estandar E/S),
    Es la biblioteca estándar del lenguaje de
    programación C,
    Es el archivo de cabecera que contiene las
    definiciones de macros, las constantes, las
    declaraciones de funciones y la definición de
    tipos usados por varias operaciones estándar de
    entrada y salida.
Clase 3introduccion a_lenguace_c

Contenu connexe

Tendances

Expresiones logicas
Expresiones logicasExpresiones logicas
Expresiones logicaszamand14
 
Operadores y expresiones en pseudocódigo
Operadores y expresiones en pseudocódigoOperadores y expresiones en pseudocódigo
Operadores y expresiones en pseudocódigoAbrirllave
 
Operadores y Expresiones
Operadores y ExpresionesOperadores y Expresiones
Operadores y ExpresionesCarlos Pes
 
Apuntes1 elementos del lenguaje c
Apuntes1 elementos del lenguaje cApuntes1 elementos del lenguaje c
Apuntes1 elementos del lenguaje cZalimanunezc
 
Instrucciones C++
Instrucciones C++Instrucciones C++
Instrucciones C++grachika
 
Estructuras de los lenguajes de programacion
Estructuras de los lenguajes de programacionEstructuras de los lenguajes de programacion
Estructuras de los lenguajes de programacionManuelDorante65
 
Estructuras control java-
Estructuras control java-Estructuras control java-
Estructuras control java-SENA
 
Lenguaje de programación c
Lenguaje de programación cLenguaje de programación c
Lenguaje de programación cvictdiazm
 
Variables y Constantes en C++
Variables y Constantes en C++Variables y Constantes en C++
Variables y Constantes en C++ivanjvic
 
Programacion ii modulo2-leccion3
Programacion ii modulo2-leccion3Programacion ii modulo2-leccion3
Programacion ii modulo2-leccion3karlalopezbello
 
Lenguaje de programacion c++ basico 1ra parte elementos basicos del lenguaje
Lenguaje de programacion c++ basico 1ra parte elementos basicos del lenguajeLenguaje de programacion c++ basico 1ra parte elementos basicos del lenguaje
Lenguaje de programacion c++ basico 1ra parte elementos basicos del lenguajeDunkherz
 
Tema 7 www.fresymetal.com
Tema 7 www.fresymetal.comTema 7 www.fresymetal.com
Tema 7 www.fresymetal.comFresyMetal
 
Introducción a C++
Introducción a C++Introducción a C++
Introducción a C++Areli1215
 
Elementos BáSicos Del Lenguaje Java Alumno
Elementos BáSicos Del Lenguaje Java AlumnoElementos BáSicos Del Lenguaje Java Alumno
Elementos BáSicos Del Lenguaje Java Alumnomtemarialuisa
 
Estructura básica de un programa en C++
Estructura básica de un programa en C++Estructura básica de un programa en C++
Estructura básica de un programa en C++Rosbelia Balza
 
Instrucciones para c_
Instrucciones para c_Instrucciones para c_
Instrucciones para c_GamePlayer35
 
Sintaxis de lenguaje de programacion
Sintaxis de lenguaje de programacionSintaxis de lenguaje de programacion
Sintaxis de lenguaje de programacionluismart05
 
Elementos básicos del lenguaje java alumno
Elementos básicos del lenguaje java alumnoElementos básicos del lenguaje java alumno
Elementos básicos del lenguaje java alumnoMaría Luisa Velasco
 

Tendances (19)

Expresiones logicas
Expresiones logicasExpresiones logicas
Expresiones logicas
 
Funciones
FuncionesFunciones
Funciones
 
Operadores y expresiones en pseudocódigo
Operadores y expresiones en pseudocódigoOperadores y expresiones en pseudocódigo
Operadores y expresiones en pseudocódigo
 
Operadores y Expresiones
Operadores y ExpresionesOperadores y Expresiones
Operadores y Expresiones
 
Apuntes1 elementos del lenguaje c
Apuntes1 elementos del lenguaje cApuntes1 elementos del lenguaje c
Apuntes1 elementos del lenguaje c
 
Instrucciones C++
Instrucciones C++Instrucciones C++
Instrucciones C++
 
Estructuras de los lenguajes de programacion
Estructuras de los lenguajes de programacionEstructuras de los lenguajes de programacion
Estructuras de los lenguajes de programacion
 
Estructuras control java-
Estructuras control java-Estructuras control java-
Estructuras control java-
 
Lenguaje de programación c
Lenguaje de programación cLenguaje de programación c
Lenguaje de programación c
 
Variables y Constantes en C++
Variables y Constantes en C++Variables y Constantes en C++
Variables y Constantes en C++
 
Programacion ii modulo2-leccion3
Programacion ii modulo2-leccion3Programacion ii modulo2-leccion3
Programacion ii modulo2-leccion3
 
Lenguaje de programacion c++ basico 1ra parte elementos basicos del lenguaje
Lenguaje de programacion c++ basico 1ra parte elementos basicos del lenguajeLenguaje de programacion c++ basico 1ra parte elementos basicos del lenguaje
Lenguaje de programacion c++ basico 1ra parte elementos basicos del lenguaje
 
Tema 7 www.fresymetal.com
Tema 7 www.fresymetal.comTema 7 www.fresymetal.com
Tema 7 www.fresymetal.com
 
Introducción a C++
Introducción a C++Introducción a C++
Introducción a C++
 
Elementos BáSicos Del Lenguaje Java Alumno
Elementos BáSicos Del Lenguaje Java AlumnoElementos BáSicos Del Lenguaje Java Alumno
Elementos BáSicos Del Lenguaje Java Alumno
 
Estructura básica de un programa en C++
Estructura básica de un programa en C++Estructura básica de un programa en C++
Estructura básica de un programa en C++
 
Instrucciones para c_
Instrucciones para c_Instrucciones para c_
Instrucciones para c_
 
Sintaxis de lenguaje de programacion
Sintaxis de lenguaje de programacionSintaxis de lenguaje de programacion
Sintaxis de lenguaje de programacion
 
Elementos básicos del lenguaje java alumno
Elementos básicos del lenguaje java alumnoElementos básicos del lenguaje java alumno
Elementos básicos del lenguaje java alumno
 

Similaire à Clase 3introduccion a_lenguace_c

Lenguaje c diapositivas
Lenguaje c diapositivasLenguaje c diapositivas
Lenguaje c diapositivasstarduslex
 
Lenguajes diapositivas
Lenguajes diapositivasLenguajes diapositivas
Lenguajes diapositivasstarduslex
 
Curso lenguaje c_segundo_modulo_
Curso lenguaje c_segundo_modulo_Curso lenguaje c_segundo_modulo_
Curso lenguaje c_segundo_modulo_Jennybeatriz1
 
TUTORIAL LENGUAJE C
TUTORIAL LENGUAJE CTUTORIAL LENGUAJE C
TUTORIAL LENGUAJE CJesus Agreda
 
TUTORIAL DE LENGUAJE C
TUTORIAL DE LENGUAJE CTUTORIAL DE LENGUAJE C
TUTORIAL DE LENGUAJE CJesus Agreda
 
Lenguajec intorduccionui
Lenguajec intorduccionuiLenguajec intorduccionui
Lenguajec intorduccionui3dwin3
 
Elementos basicos de programacion
Elementos basicos de programacionElementos basicos de programacion
Elementos basicos de programacionrotflol
 
Operaciones entre cadenas y valores numéricos en lenguaje C
Operaciones entre cadenas y valores numéricos en lenguaje COperaciones entre cadenas y valores numéricos en lenguaje C
Operaciones entre cadenas y valores numéricos en lenguaje CDenisse C
 
01 metprogramacion
01 metprogramacion01 metprogramacion
01 metprogramacionConfesorAD
 

Similaire à Clase 3introduccion a_lenguace_c (20)

Lenguaje c diapositivas
Lenguaje c diapositivasLenguaje c diapositivas
Lenguaje c diapositivas
 
Lenguajes diapositivas
Lenguajes diapositivasLenguajes diapositivas
Lenguajes diapositivas
 
Practica
PracticaPractica
Practica
 
presentacion
presentacionpresentacion
presentacion
 
Curso lenguaje c_segundo_modulo_
Curso lenguaje c_segundo_modulo_Curso lenguaje c_segundo_modulo_
Curso lenguaje c_segundo_modulo_
 
Introducción
IntroducciónIntroducción
Introducción
 
Introducción
IntroducciónIntroducción
Introducción
 
TUTORIAL LENGUAJE C
TUTORIAL LENGUAJE CTUTORIAL LENGUAJE C
TUTORIAL LENGUAJE C
 
TUTORIAL DE LENGUAJE C
TUTORIAL DE LENGUAJE CTUTORIAL DE LENGUAJE C
TUTORIAL DE LENGUAJE C
 
Lenguajec intorduccionui
Lenguajec intorduccionuiLenguajec intorduccionui
Lenguajec intorduccionui
 
Elementos basicos de programacion
Elementos basicos de programacionElementos basicos de programacion
Elementos basicos de programacion
 
Programación en c
Programación en cProgramación en c
Programación en c
 
Lenguaje c
Lenguaje c Lenguaje c
Lenguaje c
 
Fundamentos de Lenguaje C
Fundamentos de Lenguaje CFundamentos de Lenguaje C
Fundamentos de Lenguaje C
 
Introduccion del Lenguaje C
Introduccion del Lenguaje CIntroduccion del Lenguaje C
Introduccion del Lenguaje C
 
Operaciones entre cadenas y valores numéricos en lenguaje C
Operaciones entre cadenas y valores numéricos en lenguaje COperaciones entre cadenas y valores numéricos en lenguaje C
Operaciones entre cadenas y valores numéricos en lenguaje C
 
Clase 1 Lenguaje C++
Clase 1 Lenguaje C++Clase 1 Lenguaje C++
Clase 1 Lenguaje C++
 
Webcd
WebcdWebcd
Webcd
 
IntroLenguajeC.ppt
IntroLenguajeC.pptIntroLenguajeC.ppt
IntroLenguajeC.ppt
 
01 metprogramacion
01 metprogramacion01 metprogramacion
01 metprogramacion
 

Dernier

FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURAFORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURAEl Fortí
 
plande accion dl aula de innovación pedagogica 2024.pdf
plande accion dl aula de innovación pedagogica 2024.pdfplande accion dl aula de innovación pedagogica 2024.pdf
plande accion dl aula de innovación pedagogica 2024.pdfenelcielosiempre
 
GUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdf
GUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdfGUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdf
GUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdfPaolaRopero2
 
proyecto de mayo inicial 5 añitos aprender es bueno para tu niño
proyecto de mayo inicial 5 añitos aprender es bueno para tu niñoproyecto de mayo inicial 5 añitos aprender es bueno para tu niño
proyecto de mayo inicial 5 añitos aprender es bueno para tu niñotapirjackluis
 
origen y desarrollo del ensayo literario
origen y desarrollo del ensayo literarioorigen y desarrollo del ensayo literario
origen y desarrollo del ensayo literarioELIASAURELIOCHAVEZCA1
 
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VS
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VSOCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VS
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VSYadi Campos
 
Qué es la Inteligencia artificial generativa
Qué es la Inteligencia artificial generativaQué es la Inteligencia artificial generativa
Qué es la Inteligencia artificial generativaDecaunlz
 
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOSTEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOSjlorentemartos
 
Ejercicios de PROBLEMAS PAEV 6 GRADO 2024.pdf
Ejercicios de PROBLEMAS PAEV 6 GRADO 2024.pdfEjercicios de PROBLEMAS PAEV 6 GRADO 2024.pdf
Ejercicios de PROBLEMAS PAEV 6 GRADO 2024.pdfMaritzaRetamozoVera
 
Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...Lourdes Feria
 
2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdf2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdfBaker Publishing Company
 
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdf
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdfCurso = Metodos Tecnicas y Modelos de Enseñanza.pdf
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdfFrancisco158360
 
Ley 21.545 - Circular Nº 586.pdf circular
Ley 21.545 - Circular Nº 586.pdf circularLey 21.545 - Circular Nº 586.pdf circular
Ley 21.545 - Circular Nº 586.pdf circularMooPandrea
 
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptx
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptxTECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptx
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptxKarlaMassielMartinez
 
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdfSELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdfAngélica Soledad Vega Ramírez
 
plan de capacitacion docente AIP 2024 clllll.pdf
plan de capacitacion docente  AIP 2024          clllll.pdfplan de capacitacion docente  AIP 2024          clllll.pdf
plan de capacitacion docente AIP 2024 clllll.pdfenelcielosiempre
 
La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...JonathanCovena1
 
CALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADCALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADauxsoporte
 
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptxACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptxzulyvero07
 

Dernier (20)

FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURAFORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
 
plande accion dl aula de innovación pedagogica 2024.pdf
plande accion dl aula de innovación pedagogica 2024.pdfplande accion dl aula de innovación pedagogica 2024.pdf
plande accion dl aula de innovación pedagogica 2024.pdf
 
GUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdf
GUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdfGUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdf
GUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdf
 
proyecto de mayo inicial 5 añitos aprender es bueno para tu niño
proyecto de mayo inicial 5 añitos aprender es bueno para tu niñoproyecto de mayo inicial 5 añitos aprender es bueno para tu niño
proyecto de mayo inicial 5 añitos aprender es bueno para tu niño
 
origen y desarrollo del ensayo literario
origen y desarrollo del ensayo literarioorigen y desarrollo del ensayo literario
origen y desarrollo del ensayo literario
 
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VS
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VSOCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VS
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VS
 
Qué es la Inteligencia artificial generativa
Qué es la Inteligencia artificial generativaQué es la Inteligencia artificial generativa
Qué es la Inteligencia artificial generativa
 
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOSTEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
 
Ejercicios de PROBLEMAS PAEV 6 GRADO 2024.pdf
Ejercicios de PROBLEMAS PAEV 6 GRADO 2024.pdfEjercicios de PROBLEMAS PAEV 6 GRADO 2024.pdf
Ejercicios de PROBLEMAS PAEV 6 GRADO 2024.pdf
 
Power Point: Fe contra todo pronóstico.pptx
Power Point: Fe contra todo pronóstico.pptxPower Point: Fe contra todo pronóstico.pptx
Power Point: Fe contra todo pronóstico.pptx
 
Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...
 
2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdf2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdf
 
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdf
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdfCurso = Metodos Tecnicas y Modelos de Enseñanza.pdf
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdf
 
Ley 21.545 - Circular Nº 586.pdf circular
Ley 21.545 - Circular Nº 586.pdf circularLey 21.545 - Circular Nº 586.pdf circular
Ley 21.545 - Circular Nº 586.pdf circular
 
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptx
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptxTECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptx
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptx
 
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdfSELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
 
plan de capacitacion docente AIP 2024 clllll.pdf
plan de capacitacion docente  AIP 2024          clllll.pdfplan de capacitacion docente  AIP 2024          clllll.pdf
plan de capacitacion docente AIP 2024 clllll.pdf
 
La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...
 
CALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADCALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDAD
 
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptxACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
 

Clase 3introduccion a_lenguace_c

  • 1. Introducción al Lenguaje C
  • 2. Historia del Lenguaje C  Fue inventado por Dennis Ritchie en los Laboratorios BELL, basándose en el lenguaje B, creado por Ken Thompson.  En 1983 el Instituto de Estándares Americanos estableció un estándar que definiera al lenguaje C, conocido como ANSI C.  Los principales compiladores de C llevan implementado el estándar ANSI C.
  • 3. Características del Lenguaje C  Se cataloga como un lenguaje de nivel medio, puesto que combina elementos de lenguajes de alto nivel (Fortran, Pascal, Basic, etc.) con la funcionalidad del lenguaje ensamblador.  Permite el manejo de bits, bytes y direcciones de memoria.  Posee sólo 32 palabras clave, definidas por el comité ANSI.
  • 4. 32 Palabras Reservadas char void default return int if break auto float else continue extern double do goto register long while struct const short for union static signed switch enum volatile unsigned case typedef sizeof
  • 5. Elementos de un Programa  Comentarios.  Identificadores.  Constantes.  Variables.  Operadores.  Sentencias o instrucciones.  Macros del pre-procesador.
  • 6. Comentarios  Comentarios multi-línea  Comienzan con /* y terminan con */  No puede anidarse un comentario dentro de otro.  Comentarios de una sola línea (C++, Java, Delphi).  Comienzan al principio de la línea con //  Ejemplo: //Esto es un comentario /* Esto también es un comentario */
  • 7. Identificadores  Se utilizan para nombrar variables, funciones, etiquetas y elementos definidos por el usuario.  Los primeros seis caracteres deben ser significativos (distinguirse de otro similar) y máximo puede tener hasta 31 caracteres.  El primer carácter debe de ser una letra. Posteriormente pueden ser letras, números, signos de subrayado.  Existe diferencia entre mayúsculas y minúsculas.
  • 8. Identificadores  No pueden emplearse palabras reservadas como identificadores.  No pueden emplearse nombres de funciones que ya existan en el programa o en la librería de funciones de C.  No puede llamarse main.
  • 9. Convenciones  Empezar los nombres de funciones y de variables con una letra minúscula.  Las constantes escritas con #define van con mayúsculas como #define PI 3.1416  Las palabras intermedias comienzan con mayúsculas. sumaMatrices  Utilizar el subguión para separar palabras intermedias. suma_Matrices  Emplear nombres cortos para optimizar. (i, j, k, cont)
  • 10. #define  Se utiliza para asignar un identificador a una constante. #define PI 3.1416 #define NCOLS 20  El pre-procesador de C, sustituye la ocurrencia de PI por el valor 3.1416 en todo el programa antes de efectuar la compilación, del mismo modo se sustituye NCOLS por 20.
  • 11. Variables  Una variable es una localidad de memoria cuyo valor puede ser cambiado durante la ejecución del programa.  Todas las variables deben de ser declaradas para se utilizadas. <tipo de dato> espacio(s) <identificador>;  Ejemplo: int a; float area, radio, volumen;
  • 12. const  Es un modificador de acceso que me permite asignar a una variable un valor constante, es decir que una vez asignado a dicha variable su valor no podrá ser modificado durante el programa. const <tipo dato> esp <identificador> = valor;  Ejemplo: const int a=10; const char pais[]=“MÉXICO”; const char *nombre=“VLADIMIR”;
  • 13. Operadores  Son palabras o símbolos que implican una acción sobre ciertas variables. Pueden ser unarios (1 variable), binarios(2 variables) o ternarios (3 variables).  Operadores Aritméticos  Operadores Relacionales  Operadores Lógicos  Operadores de Asignación  Operadores de Dirección  Operadores de Bits
  • 14. Operadores Aritméticos Operador Nombre Descripción + Suma 5+2 → 7 - Resta 5-2 → 3 * Multiplicación 5*2 → 10 / División 5/2 → 2 % Módulo 5%2 → 1 (tipo de dato) “Cast” forzado (double)5 → 5.0
  • 15. Operadores Relacionales Operador Nombre Descripción == Igual a if (a==‘s’) != Diferente de if (a!=null) > Mayor que if (a>0.5) < Menor que if (a<2l) >= Mayor o igual que if (a>=2f) <= Menor o igual que if (a<=3)
  • 16. Operadores Lógicos Operador Nombre Descripción && Y (AND) if ((a>3) && (a<9)) || O (OR) if ((a==2) || (a==3)) ! NEGADO if (!(a==3)) es igual a (NOT) if (a!=3)  Importante: FALSO es igual a cero. VERDADERO es diferente de cero.
  • 17. Operadores de Asignación Operador Abreviado No Abreviado = a=2; a=2; ++ n++; n=n+1; -- n--; n=n-1; += n+=2; n=n+2; -= n-=2; n=n-2; *= n*=2; n=n*2; /= n/=2; n=n/2; %= n%=2; n=n%2;
  • 18. Operadores De Dirección Operador Nombre Descripción * Operador Me da el valor que está indirección almacenado en una dirección de memoria. También sirve para declarar una variable apuntador. & Operador Me da la dirección de dirección memoria de una variable.
  • 19. Variables Apuntador  Sirven para almacenar una dirección de memoria.  Utilizan el operador & para obtener la dirección.  Se deben inicializar con NULL (equivale a cero).  Se declaran como: <tipo de dato><*> espacio(s) <identificador>;  Ejemplo: int *a=NULL; int b=2,c=1; a=&b; /*Guarda la direc. de b en a */ c=*a; /*c vale 2 */
  • 20. Precedencia de Operadores ()[] Alta prioridad ! ~ + - ++ -- & * sizeof Unarios * / %+- Aritméticos < <= > >= == != Relacionales & | && || ?: Bits / Lógicos / Condicional = *= /= %= += -= &= Asignación ^= |= <<= >>=
  • 21. Sentencias (Instrucciones)  Una sentencia es una instrucción o expresión en C que tiene una consecuencia. Pueden ser asignaciones, operaciones, llamadas a funciones.  Todas las sentencias terminan con el signo de punto y coma ;  Pueden ser simples o compuestas. Las compuestas van entre llaves:  {  sentencia1;  sentencia2;  :  sentencian;  }
  • 22. Estructura de un programa en C I. Directivas del pre-procesador #include y #define II. Declaración de Prototipos (Declaración de funciones) III. Declaración de variables globales IV. Funciones definidas por el usuario V. Función Principal main( )
  • 23. #include <stdio.h> Ejemplo #include <math.h> #define VALOR 5.7 int main( void ){ int x, y, z; x=y=z=VALOR; printf(“nEl valor de x es: %d”,x); return(0); }
  • 24. Arreglos de Caracteres  Una cadena o “String” se manipula en lenguaje C, mediante arreglos de caracteres. Los arreglos de caracteres terminan con el carácter nulo ‘0’ que en realidad es el valor cero.  La única diferencia con los arreglos numéricos es que se requiere un carácter adicional para indicar cuando el final del arreglo.  Ejemplo: char nombre[31]; /* Uso sólo 30 */
  • 25. LIBRERIAS OBLIGATORIAS  stdio.h stdio.h, que significa "standard input-output header" (cabecera estandar E/S), Es la biblioteca estándar del lenguaje de programación C, Es el archivo de cabecera que contiene las definiciones de macros, las constantes, las declaraciones de funciones y la definición de tipos usados por varias operaciones estándar de entrada y salida.