SlideShare uma empresa Scribd logo
1 de 38
Introducción al Lenguaje C (ANSI) Computación para Ingenieros Lab. de Computación para Ingenieros Semestre 2006-1
Historia del Lenguaje C Fue inventado por Dennis Ritchie en un DEC-PDP-11 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
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 nombrarvariables, 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 o subguión.  Posteriormente pueden ser letras, números, signos de subrayado. Existe diferencia entre mayúsculas y minúsculas.
Identificadores ,[object Object]
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.,[object Object]
Constantes Constantes de carácter. Ej. ‘a’, ‘0’, ‘x5’, ‘’, ‘’, ‘’, ‘$’, ’’, NULL Constantes enteras. Ej. 5, +5, -5, 5, x5, 5L, 5U, 5lu, etc. Constantes reales. Ej. 0.5f, 0.5, 5e-01f, 5.0e-01, (float)5, etc.  Constantes de texto (Cadenas o “Strings”) “Esto es una cadena…”
#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 2.
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: constinta=10; constcharpais[]=“MÉXICO”; constchar *nombre=“VLADIMIR”;
volatile Es un modificador de acceso que me permite cambiar el valor de una variable por medios no explícitamente especificados por el programa.  Por ejemplo la dirección de una variable global que apunta a un puerto externo. volatile <tipo dato> esp <identificador> = valor; Ejemplo: volatileunsigned char *puerto = 0x30;
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
Operadores Relacionales
Operadores Lógicos ,[object Object],FALSO es igual a cero. VERDADERO es diferente de cero.
Operadores de Asignación
Operadores de Bits
Operadores de Asignaciónpara bits Nota:      0x7f, 0x0a, 0x03 son un números hexadecimales.
Operadores De Dirección
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
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;  }
Sentencias (Instrucciones) Sentencias de Selección. if – else, switch – case, ?: Sentencias de Repetición. do – while, while, for Sentencias de Salto.  return, break, continue.
Estructura de un programa en C
Ejemplo #include <stdio.h> #include <math.h> #define VALOR 5.7 double modulo3D( double x, double y, double z ); double mod3; /* Variable global */ double modulo3D( double x, double y, double z ){   return(sqrt(x*x+y*y+z*z); } int main( void ){   int x, y, z;   x=y=z=VALOR;   mod3=modulo3D(x,y,z);   printf(“El módulo es: %lf”,mod3);   return(0); }
if-else Nota:una expresión en C es todo aquello que regresa un valor.  Como por ejemplo una condición lógica,  operaciones aritméticas, llamadas a funciones, una variable, una constante (númérica, carácter, etc.).
Operador Condicional ?:
switch-case switch(expresión)  {     case 1:  sentencias;                 break;     case 2:  sentencias;                 break;      :     case n:  sentencias;                  break;     default: sentencias_default;                  break;  }
Arreglos Unidimensionales Los arreglos unidimensionales son secuencias de valores del mismo tipo que se almacenan en localidades contiguas de memoria, según el orden del índice. <tipo dato>esp <identificador>[tamaño]; Ejemplo: intvalores[10]; float datos[5]={1.3,2.8,4.89,0.0,5.7}; charpais[]=“MÉXICO”; char *nombre=“VLADIMIR”;
Arreglos Unidimensionales Un arreglo se identifica por su nombre, pero para el compilador este equivale a la dirección del primer elemento del arreglo, es decir: Ejemplo: intnum[50]; Para el compilador: numes igual a  &num[0] /* La dirección del elemento 0 */
Arreglos Unidimensionales Los índices son necesarios para desplazarse a través del arreglo.  El primer elemento tiene el índice cero y el último el índice (tamaño-1). Se deben utilizar variables enteras y para agilizar el acceso a memoria se pueden declarar con el modificador register. Ejemplo: int register i, j, k;
Arreglos Unidimensionales Para guardar o leer los elemento en un arreglo es muy frecuente utilizar la sentencia for. Ejemplo: int register i; int num[50]; /* Asigno al arreglo valores del 0 al    500 */ for (i=0; i<50; i++) num[i]=i*10;
Arreglos Unidimensionales Para introducir los elemento en un arreglo con la función scanf se recomienda utilizar una variable auxiliar dentro de un ciclo for. Ejemplo: int register i; double datos[100]; doubletemp; for (i=0; i<100; i++)  {    scanf(“%lf”,&temp);    fflush(stdin); /* stdin=entrada estándar */    num[i]= temp;  }
Arreglos Unidimensionales Un arreglo puede tener N dimensiones, dependiendo de las limitaciones de la memoria y su declaración es la siguiente: <tipo dato>esp<identificador>[dim1] [dim2]…[dimN]; Ejemplo: double cubo[3][3][3];

Mais conteúdo relacionado

Mais procurados

Lenguaje c (expresiones logicas)
Lenguaje c (expresiones logicas)Lenguaje c (expresiones logicas)
Lenguaje c (expresiones logicas)Eloy Rodriguez
 
Entrada y salida de datos en c
Entrada y salida de datos en cEntrada y salida de datos en c
Entrada y salida de datos en cDenisse C
 
Instrucciones para c_
Instrucciones para c_Instrucciones para c_
Instrucciones para c_GamePlayer35
 
Instrucciones C++
Instrucciones C++Instrucciones C++
Instrucciones C++grachika
 
Introduccion a c++
Introduccion a c++Introduccion a c++
Introduccion a c++guestab91474
 
Introducción a C++
Introducción a C++Introducción a C++
Introducción a C++Areli1215
 
Lenguajes De Programacion C nivel1-unidad1
Lenguajes De Programacion C nivel1-unidad1Lenguajes De Programacion C nivel1-unidad1
Lenguajes De Programacion C nivel1-unidad1charnisch
 
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
 
Logica taller de tipo de datos
Logica taller de tipo de datosLogica taller de tipo de datos
Logica taller de tipo de datosuanelectromecanica
 
Operaciones de Entrada / Salida en C++
Operaciones de Entrada / Salida en C++Operaciones de Entrada / Salida en C++
Operaciones de Entrada / Salida en C++ivanjvic
 
Utp pti_s2_elementos del lenguaje c
 Utp pti_s2_elementos del lenguaje c Utp pti_s2_elementos del lenguaje c
Utp pti_s2_elementos del lenguaje cjcbenitezp
 
Variables, constantes y tipos de datos en C
Variables, constantes y tipos de datos en CVariables, constantes y tipos de datos en C
Variables, constantes y tipos de datos en CRonny Parra
 
Utp lpi_s2y3_elementos del lenguaje c nuevo
 Utp lpi_s2y3_elementos del lenguaje c nuevo Utp lpi_s2y3_elementos del lenguaje c nuevo
Utp lpi_s2y3_elementos del lenguaje c nuevojcbenitezp
 
Chuleta de lenguaje C para principiantes
Chuleta de lenguaje C para principiantesChuleta de lenguaje C para principiantes
Chuleta de lenguaje C para principiantesAbrirllave
 
Estructuras de control
Estructuras de controlEstructuras de control
Estructuras de controlFernando Solis
 
Curso lenguaje c_segundo_modulo_
Curso lenguaje c_segundo_modulo_Curso lenguaje c_segundo_modulo_
Curso lenguaje c_segundo_modulo_Jennybeatriz1
 

Mais procurados (20)

Lenguaje c (expresiones logicas)
Lenguaje c (expresiones logicas)Lenguaje c (expresiones logicas)
Lenguaje c (expresiones logicas)
 
Clase 5
Clase 5Clase 5
Clase 5
 
Entrada y salida de datos en c
Entrada y salida de datos en cEntrada y salida de datos en c
Entrada y salida de datos en c
 
Instrucciones para c_
Instrucciones para c_Instrucciones para c_
Instrucciones para c_
 
Instrucciones C++
Instrucciones C++Instrucciones C++
Instrucciones C++
 
Introduccion a c++
Introduccion a c++Introduccion a c++
Introduccion a c++
 
Introducción a C++
Introducción a C++Introducción a C++
Introducción a C++
 
Lenguajes De Programacion C nivel1-unidad1
Lenguajes De Programacion C nivel1-unidad1Lenguajes De Programacion C nivel1-unidad1
Lenguajes De Programacion C nivel1-unidad1
 
Punteros
PunterosPunteros
Punteros
 
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
 
Transparencias4
Transparencias4Transparencias4
Transparencias4
 
Sintaxis del lenguaje c++
Sintaxis del lenguaje c++Sintaxis del lenguaje c++
Sintaxis del lenguaje c++
 
Logica taller de tipo de datos
Logica taller de tipo de datosLogica taller de tipo de datos
Logica taller de tipo de datos
 
Operaciones de Entrada / Salida en C++
Operaciones de Entrada / Salida en C++Operaciones de Entrada / Salida en C++
Operaciones de Entrada / Salida en C++
 
Utp pti_s2_elementos del lenguaje c
 Utp pti_s2_elementos del lenguaje c Utp pti_s2_elementos del lenguaje c
Utp pti_s2_elementos del lenguaje c
 
Variables, constantes y tipos de datos en C
Variables, constantes y tipos de datos en CVariables, constantes y tipos de datos en C
Variables, constantes y tipos de datos en C
 
Utp lpi_s2y3_elementos del lenguaje c nuevo
 Utp lpi_s2y3_elementos del lenguaje c nuevo Utp lpi_s2y3_elementos del lenguaje c nuevo
Utp lpi_s2y3_elementos del lenguaje c nuevo
 
Chuleta de lenguaje C para principiantes
Chuleta de lenguaje C para principiantesChuleta de lenguaje C para principiantes
Chuleta de lenguaje C para principiantes
 
Estructuras de control
Estructuras de controlEstructuras de control
Estructuras de control
 
Curso lenguaje c_segundo_modulo_
Curso lenguaje c_segundo_modulo_Curso lenguaje c_segundo_modulo_
Curso lenguaje c_segundo_modulo_
 

Destaque

Experiencing headaches
Experiencing headachesExperiencing headaches
Experiencing headachesPeter Ferraro
 
Pwa Coromina
Pwa CorominaPwa Coromina
Pwa Corominamporrino
 
Los planetas
Los planetasLos planetas
Los planetasblanbarr
 
8 bromo-7-methoxycrysin-induce apoptosis of hepatocellular carninoma celss in...
8 bromo-7-methoxycrysin-induce apoptosis of hepatocellular carninoma celss in...8 bromo-7-methoxycrysin-induce apoptosis of hepatocellular carninoma celss in...
8 bromo-7-methoxycrysin-induce apoptosis of hepatocellular carninoma celss in...sebastian Rivera
 
Presentación nelly labastida
Presentación nelly labastidaPresentación nelly labastida
Presentación nelly labastidaNelly Labastida
 
CEBIT / BITS Brazil
CEBIT / BITS BrazilCEBIT / BITS Brazil
CEBIT / BITS Brazilregevyativ
 
Portfolio Jeroen Gerats-1
Portfolio Jeroen Gerats-1Portfolio Jeroen Gerats-1
Portfolio Jeroen Gerats-1JeroenGerats
 
Hạt mắc ca
Hạt mắc caHạt mắc ca
Hạt mắc cahoa250789
 
Blogs y Sociedad: by medeamaterial
Blogs y Sociedad: by medeamaterialBlogs y Sociedad: by medeamaterial
Blogs y Sociedad: by medeamaterialJorge Montoya
 
Mirinae Brand guideline
Mirinae  Brand guidelineMirinae  Brand guideline
Mirinae Brand guidelineTran Thanh Tan
 
Scott Plamondon Portfolio
Scott Plamondon PortfolioScott Plamondon Portfolio
Scott Plamondon Portfolioreachcustomers
 
linea del tiempo
 linea del tiempo linea del tiempo
linea del tiempokimberly
 
Advocacy Web 2.0 tool
Advocacy Web 2.0 toolAdvocacy Web 2.0 tool
Advocacy Web 2.0 tooljansenleslie
 
Kathyuska cazorla trabajo5pts
Kathyuska cazorla trabajo5ptsKathyuska cazorla trabajo5pts
Kathyuska cazorla trabajo5ptsKC03
 
Feb 7, 10 am do not fear rev 2.8 11
Feb 7, 10 am do not fear rev 2.8 11Feb 7, 10 am do not fear rev 2.8 11
Feb 7, 10 am do not fear rev 2.8 11Robert Bliss
 

Destaque (20)

Experiencing headaches
Experiencing headachesExperiencing headaches
Experiencing headaches
 
Pwa Coromina
Pwa CorominaPwa Coromina
Pwa Coromina
 
Tugas uts fajarudin
Tugas uts fajarudinTugas uts fajarudin
Tugas uts fajarudin
 
Los planetas
Los planetasLos planetas
Los planetas
 
Holocaust history
Holocaust historyHolocaust history
Holocaust history
 
8 bromo-7-methoxycrysin-induce apoptosis of hepatocellular carninoma celss in...
8 bromo-7-methoxycrysin-induce apoptosis of hepatocellular carninoma celss in...8 bromo-7-methoxycrysin-induce apoptosis of hepatocellular carninoma celss in...
8 bromo-7-methoxycrysin-induce apoptosis of hepatocellular carninoma celss in...
 
Presentación nelly labastida
Presentación nelly labastidaPresentación nelly labastida
Presentación nelly labastida
 
CEBIT / BITS Brazil
CEBIT / BITS BrazilCEBIT / BITS Brazil
CEBIT / BITS Brazil
 
Portfolio Jeroen Gerats-1
Portfolio Jeroen Gerats-1Portfolio Jeroen Gerats-1
Portfolio Jeroen Gerats-1
 
Libro2
Libro2Libro2
Libro2
 
Hạt mắc ca
Hạt mắc caHạt mắc ca
Hạt mắc ca
 
Blogs y Sociedad: by medeamaterial
Blogs y Sociedad: by medeamaterialBlogs y Sociedad: by medeamaterial
Blogs y Sociedad: by medeamaterial
 
Mirinae Brand guideline
Mirinae  Brand guidelineMirinae  Brand guideline
Mirinae Brand guideline
 
Planetas
PlanetasPlanetas
Planetas
 
Scott Plamondon Portfolio
Scott Plamondon PortfolioScott Plamondon Portfolio
Scott Plamondon Portfolio
 
linea del tiempo
 linea del tiempo linea del tiempo
linea del tiempo
 
Advocacy Web 2.0 tool
Advocacy Web 2.0 toolAdvocacy Web 2.0 tool
Advocacy Web 2.0 tool
 
Qtrr nhom1 slide
Qtrr nhom1 slideQtrr nhom1 slide
Qtrr nhom1 slide
 
Kathyuska cazorla trabajo5pts
Kathyuska cazorla trabajo5ptsKathyuska cazorla trabajo5pts
Kathyuska cazorla trabajo5pts
 
Feb 7, 10 am do not fear rev 2.8 11
Feb 7, 10 am do not fear rev 2.8 11Feb 7, 10 am do not fear rev 2.8 11
Feb 7, 10 am do not fear rev 2.8 11
 

Semelhante a Lenguajes diapositivas

Clase 3introduccion a_lenguace_c
Clase 3introduccion a_lenguace_cClase 3introduccion a_lenguace_c
Clase 3introduccion a_lenguace_ckikeMerck
 
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
 
Elementos basicos de programacion
Elementos basicos de programacionElementos basicos de programacion
Elementos basicos de programacionrotflol
 
Lenguaje c
Lenguaje cLenguaje c
Lenguaje carea21
 
Lenguajec intorduccionui
Lenguajec intorduccionuiLenguajec intorduccionui
Lenguajec intorduccionui3dwin3
 
Algoritmos y lenjuage de programacion
Algoritmos y  lenjuage de programacionAlgoritmos y  lenjuage de programacion
Algoritmos y lenjuage de programacionYsaac Ruiz
 
Elementos basicos de_programacion
Elementos basicos de_programacionElementos basicos de_programacion
Elementos basicos de_programacionthaynasantos1997
 
Republica bolivariana de venezuela
Republica bolivariana de venezuelaRepublica bolivariana de venezuela
Republica bolivariana de venezuelaroyimar
 

Semelhante a Lenguajes diapositivas (20)

Clase 3introduccion a_lenguace_c
Clase 3introduccion a_lenguace_cClase 3introduccion a_lenguace_c
Clase 3introduccion a_lenguace_c
 
Introducción
IntroducciónIntroducción
Introducción
 
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
 
Elementos basicos de programacion
Elementos basicos de programacionElementos basicos de programacion
Elementos basicos de programacion
 
Introduccion c
Introduccion cIntroduccion c
Introduccion c
 
Introduccion del Lenguaje C
Introduccion del Lenguaje CIntroduccion del Lenguaje C
Introduccion del Lenguaje C
 
Lenguaje c
Lenguaje cLenguaje c
Lenguaje c
 
Lenguaje c
Lenguaje c Lenguaje c
Lenguaje c
 
Lenguajec intorduccionui
Lenguajec intorduccionuiLenguajec intorduccionui
Lenguajec intorduccionui
 
Practica
PracticaPractica
Practica
 
presentacion
presentacionpresentacion
presentacion
 
Algoritmos y lenjuage de programacion
Algoritmos y  lenjuage de programacionAlgoritmos y  lenjuage de programacion
Algoritmos y lenjuage de programacion
 
IntroLenguajeC.ppt
IntroLenguajeC.pptIntroLenguajeC.ppt
IntroLenguajeC.ppt
 
ELEMENTOS DE PROGRA 30-05.pdf
ELEMENTOS DE PROGRA 30-05.pdfELEMENTOS DE PROGRA 30-05.pdf
ELEMENTOS DE PROGRA 30-05.pdf
 
Elementos basicos de_programacion
Elementos basicos de_programacionElementos basicos de_programacion
Elementos basicos de_programacion
 
Republica bolivariana de venezuela
Republica bolivariana de venezuelaRepublica bolivariana de venezuela
Republica bolivariana de venezuela
 
Webcd
WebcdWebcd
Webcd
 

Último

Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxLolaBunny11
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan JosephBRAYANJOSEPHPEREZGOM
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...silviayucra2
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdfIsabellaMontaomurill
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITMaricarmen Sánchez Ruiz
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx241521559
 
KELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesKELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesFundación YOD YOD
 
Herramientas de corte de alta velocidad.pptx
Herramientas de corte de alta velocidad.pptxHerramientas de corte de alta velocidad.pptx
Herramientas de corte de alta velocidad.pptxRogerPrieto3
 
9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudianteAndreaHuertas24
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricKeyla Dolores Méndez
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)GDGSucre
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveFagnerLisboa3
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfsoporteupcology
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIAWilbisVega
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíassuserf18419
 

Último (15)

Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptx
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Joseph
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdf
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNIT
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx
 
KELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesKELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento Protégeles
 
Herramientas de corte de alta velocidad.pptx
Herramientas de corte de alta velocidad.pptxHerramientas de corte de alta velocidad.pptx
Herramientas de corte de alta velocidad.pptx
 
9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial Uninove
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdf
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnología
 

Lenguajes diapositivas

  • 1. Introducción al Lenguaje C (ANSI) Computación para Ingenieros Lab. de Computación para Ingenieros Semestre 2006-1
  • 2. Historia del Lenguaje C Fue inventado por Dennis Ritchie en un DEC-PDP-11 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.
  • 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 nombrarvariables, 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 o subguión. Posteriormente pueden ser letras, números, signos de subrayado. Existe diferencia entre mayúsculas y minúsculas.
  • 8.
  • 9. No pueden emplearse nombres de funciones que ya existan en el programa o en la librería de funciones de C.
  • 10.
  • 11. Constantes Constantes de carácter. Ej. ‘a’, ‘0’, ‘x5’, ‘’, ‘’, ‘’, ‘$’, ’’, NULL Constantes enteras. Ej. 5, +5, -5, 5, x5, 5L, 5U, 5lu, etc. Constantes reales. Ej. 0.5f, 0.5, 5e-01f, 5.0e-01, (float)5, etc. Constantes de texto (Cadenas o “Strings”) “Esto es una cadena…”
  • 12. #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 2.
  • 13. 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;
  • 14. 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: constinta=10; constcharpais[]=“MÉXICO”; constchar *nombre=“VLADIMIR”;
  • 15. volatile Es un modificador de acceso que me permite cambiar el valor de una variable por medios no explícitamente especificados por el programa. Por ejemplo la dirección de una variable global que apunta a un puerto externo. volatile <tipo dato> esp <identificador> = valor; Ejemplo: volatileunsigned char *puerto = 0x30;
  • 16. 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
  • 19.
  • 22. Operadores de Asignaciónpara bits Nota: 0x7f, 0x0a, 0x03 son un números hexadecimales.
  • 24. 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 */
  • 26. 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; }
  • 27. Sentencias (Instrucciones) Sentencias de Selección. if – else, switch – case, ?: Sentencias de Repetición. do – while, while, for Sentencias de Salto. return, break, continue.
  • 28. Estructura de un programa en C
  • 29. Ejemplo #include <stdio.h> #include <math.h> #define VALOR 5.7 double modulo3D( double x, double y, double z ); double mod3; /* Variable global */ double modulo3D( double x, double y, double z ){ return(sqrt(x*x+y*y+z*z); } int main( void ){ int x, y, z; x=y=z=VALOR; mod3=modulo3D(x,y,z); printf(“El módulo es: %lf”,mod3); return(0); }
  • 30. if-else Nota:una expresión en C es todo aquello que regresa un valor. Como por ejemplo una condición lógica, operaciones aritméticas, llamadas a funciones, una variable, una constante (númérica, carácter, etc.).
  • 32. switch-case switch(expresión) { case 1: sentencias; break; case 2: sentencias; break; : case n: sentencias; break; default: sentencias_default; break; }
  • 33. Arreglos Unidimensionales Los arreglos unidimensionales son secuencias de valores del mismo tipo que se almacenan en localidades contiguas de memoria, según el orden del índice. <tipo dato>esp <identificador>[tamaño]; Ejemplo: intvalores[10]; float datos[5]={1.3,2.8,4.89,0.0,5.7}; charpais[]=“MÉXICO”; char *nombre=“VLADIMIR”;
  • 34. Arreglos Unidimensionales Un arreglo se identifica por su nombre, pero para el compilador este equivale a la dirección del primer elemento del arreglo, es decir: Ejemplo: intnum[50]; Para el compilador: numes igual a &num[0] /* La dirección del elemento 0 */
  • 35. Arreglos Unidimensionales Los índices son necesarios para desplazarse a través del arreglo. El primer elemento tiene el índice cero y el último el índice (tamaño-1). Se deben utilizar variables enteras y para agilizar el acceso a memoria se pueden declarar con el modificador register. Ejemplo: int register i, j, k;
  • 36. Arreglos Unidimensionales Para guardar o leer los elemento en un arreglo es muy frecuente utilizar la sentencia for. Ejemplo: int register i; int num[50]; /* Asigno al arreglo valores del 0 al 500 */ for (i=0; i<50; i++) num[i]=i*10;
  • 37. Arreglos Unidimensionales Para introducir los elemento en un arreglo con la función scanf se recomienda utilizar una variable auxiliar dentro de un ciclo for. Ejemplo: int register i; double datos[100]; doubletemp; for (i=0; i<100; i++) { scanf(“%lf”,&temp); fflush(stdin); /* stdin=entrada estándar */ num[i]= temp; }
  • 38. Arreglos Unidimensionales Un arreglo puede tener N dimensiones, dependiendo de las limitaciones de la memoria y su declaración es la siguiente: <tipo dato>esp<identificador>[dim1] [dim2]…[dimN]; Ejemplo: double cubo[3][3][3];
  • 39. 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 ‘’ 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 */