SlideShare una empresa de Scribd logo
Lenguaje C
Un poco de historia
 C es un lenguaje de propósito general, es decir, se
pueden desarrollar aplicaciones de diversas áreas.
 Dentro de sus principales características podemos
mencionar que:
 Es un lenguaje estructurado, tiene una abundante cantidad
de operadores y tipos de datos.
 Es un lenguaje de nivel medio, pero se puede codificar a
alto nivel, produce código objeto altamente optimizado, posee
punteros y capacidad de aritmética de direcciones.
 C fue creado en los Laboratorios Bell de AT&T para correr
originalmente en el sistema operativo Unix
Ventajas de trabajar en C
 Entre sus múltiples ventajas podemos mencionar que:
 C es un lenguaje muy portable, es decir, es independiente
de la arquitectura de la máquina y con alguna o ninguna
modificación un programa puede correr en una amplia
variedad de computadores.
 Es relativamente flexible en la conversión de datos.
 Su eficiencia y claridad han hecho que el lenguaje
ensamblador casi no haya sido utilizado en Unix.
 El compilador de C es pequeño y tiene un gran poderío
debido a sus múltiples bibliotecas.
 Sin embargo, tiene sus desventajas y entre ellas se puede
mencionar
Como desventajas
Podemos mencionar:
 La excesiva libertad en la escritura del código
fuente hace que muchas veces se cometan
errores de programación, que, por ser
correctos sintácticamente no se detectan en
tiempo de compilación.
 Carece de instrucciones de entrada y salida,
de manejo de strings (cadenas de caracteres),
quedando el trabajo en manos de las bibliotecas
provocando con esto algunos problemas de
portabilidad.
Pero también
 Hay múltiples ejemplos de aplicaciones
construidas en C, como ser:
 construcción de sistemas operativos,
procesadores de texto, administradores de bases
de datos (por ejemplo Clipper).
 Programas para Windows y Windows 95, las APIs
(Application Program Interface) de las Librerías
de Enlace Dinámico (DLL) de Windows están
construidas mayoritariamente en C.
Forma General del Lenguaje C
 Para crear un programa en C, se escribe
el código fuente (programa), luego se
compila y finalmente se enlaza con las
bibliotecas (se hace un link, en nuestra
jerga diríamos “se linkea”).
Código
Fuente
Compilar
Enlazar (Link)
Para hacer un
programa en C, lo
primero que se debe
hacer es crear el
programa fuente
(con extensión ".c")
 Todo lenguaje de programación posee palabras
claves, estas son aquellas palabras que reserva el
lenguaje para identificar ciclos, estructuras y en
general cualquier cosa que sea parte de
instrucciones.
 Por ejemplo, las palabras while, if, struct son
palabras claves en C.
 En C las palabras claves o reservadas deben
escribirse en minúsculas, esto ya que C diferencia
entre mayúsculas y minúsculas (a diferencia del
lenguaje Pascal)
Forma General del Lenguaje C
Como escribir un programa en C
 El Lenguaje C se escribe a partir de un programa principal y
de funciones, el programa principal también es una función
(función principal), y se denomina main(), esta debe estar
siempre presente y es la primera en ser llamada.
 Para hacer un programa en C, lo primero que se debe hacer es
crear el programa fuente (con extensión ".c") de la siguiente
manera:
 #include <stdio.h>
 #include <stdlib.h>
 int main()
 {
 int c=0;
 int b=0;
 printf("Ingrese entero");
 scanf("%d",&c);
 b=c*c;
 printf("el cuadrado es %d ", b);
 system("PAUSE");
 return 0;
Estructura de un Programa en C
 Cuando se escribe el
programa se recomienda
usar el siguiente formato:
 llamadas a bibliotecas
 declaración de funciones
(prototipos de funciones)
 declaración de variables
globales
 main()
 {
 declaración de variables
locales
 sentencias
 }
 definición de funciones
/* esto es un comentario */
#include<stdio.h>
#include<stdlib.h>
float num;
float res, cubo(int x);
main()
{
printf("ingrese un
número ");
scanf("%f",&num);
res=cubo(num);
printf("%f al cubo es:
%f",num,res);
system("PAUSE");
return 0;
}
float cubo(float x)
{return x*x*x;}
Estructura de un Programa en C
 Por lo general las bibliotecas contienen funciones creadas por el
programador o entregadas con el producto. Por ejemplo las
funciones de entrada y salida vienen especificadas en la biblioteca
de entradas y salidas estándar stdio.h (Standar Input Ouput
Header).
 # include <stdio.h>
 Cada vez que se escribe una línea, esta debe llevar ";" al final, con
lo cual el compilador entiende que llega al final de una instrucción
o proposición.
 Antes de usar una variable dentro de un programa, es necesario
indicarle al compilador que va a ser usada, para ello se declara:
 <tipo> <lista_de_variables>; Ejemplo: Int a;
 Como ya es sabido, una asignación es almacenar en una variable el
resultado de una operación o proceso. En "C" una asignación se
representa como:
 <variable> = <expresión>;
 Ejemplo:
 a=5; /* a la variable a se le asigna el valor 5 (constante)*/
 expo=max; /* a la variable expo se le asigna el contenido de la
variable max*/
 expofin=ult+4; /* a expofin se le asigna el contenido de la
variable ult sumada a la constante 4*/
Identificadores
 Estos son simplemente los nombres que pueden
asumir variables o constantes dentro del
programa.
 Existen algunas restricciones para los
identificadores:
- No deben ser iguales a nombres de palabras
reservadas o bibliotecas.
- Deben comenzar con una letra o el caracter ‘_’.
- No deben tener en medio el caracter espacio.
Ejemplo de identificadores:
Contador
Conta
var1
_variable3_
Suma_total
 Comentarios
 Un comentario es una cadena de
caracteres que no es tomada en cuenta
por el compilador, esta va dentro de "/*" y
"*/",
 Ejemplo:
 /* esto es un comentario */
Entrada / Salida Estándar
 La biblioteca (o archivo de cabecera) llamada
stdio.h contiene todas las funciones de entrada y
salida estándar, entre ellas las funciones printf()
y scanf(). La f significa que es entrada o salida
con formato.
 printf()
 Esta es la función de salida por pantalla, su
formato es el siguiente:
 printf(cadena_de_control,lista_de_argumen
tos)
 printf("a * b = %d n", c );
 Los caracteres barra invertida (backslash) y n
juntos, provocan un retorno de carro (return) en
pantalla.
 scanf()
 Esta es la función para entrada estándar, se
utiliza de un modo parecido a la anterior.
 scanf("%d",&numdato);
 %d indica que se lee con formato entero. En el
ejemplo el caracter "&" se usa para indicar la
dirección de memoria, es decir, "lee a un valor
con formato entero y lo guarda en la dirección de
memoria numdato".
Entrada / Salida Estándar
Operadores
 Son caracteres especiales que tienen un significado
específico o determinado, estos indican al compilador
realizar operaciones matemáticas o lógicas.
Operadores Matemáticos
 - menos unuario
 - resta
 + suma
 * producto
 / división
 -- Decremento
 ++ Incremento
 % módulo
 = asignación
Operadores
Operadores de Relación
Estos se utilizan dentro de proposiciones del tipo while, if,
for; es decir, en estructuras de control .
 < : menor que
 > : mayor que
 <= : menor o igual que
 >= : mayor o igual que
 == : igual a
 != : distinto de (no igual a)
Operadores Lógicos
 ! : negación ------- not
 && : y lógico ------- and
 || : o lógico -------- or
Estructura de control
 La sentencia de control básica es if (<condicion>)
then <sentencia/s> else <sentencia/s>. En ella
se evalúa una expresión condicional y si se
cumple, se ejecuta la sentencia s; si no, se
ejecuta la sentencia t. La segunda parte de la
condición, else <t>, es opcional.
 if (dato2==0) then /* Se pregunta "es dato2 igual a
cero" */
 printf("n LA DIVISION ES INDETERMINADA");
 else
 {
 printf("n LA DIVISION ES: %f", div); /*se ejecuta
si dato <> 0*/
 }

Más contenido relacionado

Similar a IntroLenguajeC.ppt

Programación c
Programación cProgramación c
Programación cvictdiazm
 
Clase 1 Lenguaje C++
Clase 1 Lenguaje C++Clase 1 Lenguaje C++
Clase 1 Lenguaje C++
Desireé mart?ez
 
Primera Clase
Primera ClasePrimera Clase
Primera Clasemandres
 
Curso lenguaje c_segundo_modulo_
Curso lenguaje c_segundo_modulo_Curso lenguaje c_segundo_modulo_
Curso lenguaje c_segundo_modulo_Jennybeatriz1
 
Tutorial c++
Tutorial c++Tutorial c++
Tutorial c++
andreadelacruz002
 
Curso c
Curso cCurso c
Curso c
AnzurezBrayan
 
CursoC.pdf
CursoC.pdfCursoC.pdf
Lenguaje C
Lenguaje CLenguaje C
Lenguaje C
Ali Crespo
 
Libro digital de programación
Libro digital de programaciónLibro digital de programación
Libro digital de programaciónEstefy Sanchez
 
Manual 1 de lenguaje c
Manual 1 de lenguaje cManual 1 de lenguaje c
Manual 1 de lenguaje cgechenique
 
Programación en c
Programación en cProgramación en c
Programación en c
Sam Paredes Chaves
 
Introduccion del Lenguaje C
Introduccion del Lenguaje CIntroduccion del Lenguaje C
Introduccion del Lenguaje C
Universidad de Guayaquil
 
Elementos básicos del lenguaje
Elementos básicos del lenguajeElementos básicos del lenguaje
Elementos básicos del lenguaje
marbcm
 
Introduccion al-lenguaje-c
Introduccion al-lenguaje-cIntroduccion al-lenguaje-c
Introduccion al-lenguaje-c
Dalva Icaza
 
Lenguaje c
Lenguaje cLenguaje c
Lenguaje c
area21
 
Parte i curso c
Parte i curso cParte i curso c
Unidad 2 curso c
Unidad 2 curso cUnidad 2 curso c
2do parcial c
2do parcial c2do parcial c

Similar a IntroLenguajeC.ppt (20)

Programación c
Programación cProgramación c
Programación c
 
Clase 1 Lenguaje C++
Clase 1 Lenguaje C++Clase 1 Lenguaje C++
Clase 1 Lenguaje C++
 
Primera Clase
Primera ClasePrimera Clase
Primera Clase
 
Curso lenguaje c_segundo_modulo_
Curso lenguaje c_segundo_modulo_Curso lenguaje c_segundo_modulo_
Curso lenguaje c_segundo_modulo_
 
Tutorial c++
Tutorial c++Tutorial c++
Tutorial c++
 
Curso c
Curso cCurso c
Curso c
 
CursoC.pdf
CursoC.pdfCursoC.pdf
CursoC.pdf
 
Lenguaje C
Lenguaje CLenguaje C
Lenguaje C
 
Libro digital de programación
Libro digital de programaciónLibro digital de programación
Libro digital de programación
 
Manual 1 de lenguaje c
Manual 1 de lenguaje cManual 1 de lenguaje c
Manual 1 de lenguaje c
 
Clase 4
Clase 4Clase 4
Clase 4
 
Unidad 3
Unidad 3Unidad 3
Unidad 3
 
Programación en c
Programación en cProgramación en c
Programación en c
 
Introduccion del Lenguaje C
Introduccion del Lenguaje CIntroduccion del Lenguaje C
Introduccion del Lenguaje C
 
Elementos básicos del lenguaje
Elementos básicos del lenguajeElementos básicos del lenguaje
Elementos básicos del lenguaje
 
Introduccion al-lenguaje-c
Introduccion al-lenguaje-cIntroduccion al-lenguaje-c
Introduccion al-lenguaje-c
 
Lenguaje c
Lenguaje cLenguaje c
Lenguaje c
 
Parte i curso c
Parte i curso cParte i curso c
Parte i curso c
 
Unidad 2 curso c
Unidad 2 curso cUnidad 2 curso c
Unidad 2 curso c
 
2do parcial c
2do parcial c2do parcial c
2do parcial c
 

Último

Inteligencia Artificial para Docentes HIA Ccesa007.pdf
Inteligencia Artificial para Docentes  HIA  Ccesa007.pdfInteligencia Artificial para Docentes  HIA  Ccesa007.pdf
Inteligencia Artificial para Docentes HIA Ccesa007.pdf
Demetrio Ccesa Rayme
 
FUENTES DE LA CULTURA GRIEGA EN LA HISTORIA
FUENTES DE LA CULTURA GRIEGA EN LA HISTORIAFUENTES DE LA CULTURA GRIEGA EN LA HISTORIA
FUENTES DE LA CULTURA GRIEGA EN LA HISTORIA
ElenaGallardoPals
 
Elites municipales y propiedades rurales: algunos ejemplos en territorio vascón
Elites municipales y propiedades rurales: algunos ejemplos en territorio vascónElites municipales y propiedades rurales: algunos ejemplos en territorio vascón
Elites municipales y propiedades rurales: algunos ejemplos en territorio vascón
Javier Andreu
 
Tema 3-2 Aparato reproductor femenino 2024
Tema 3-2 Aparato reproductor femenino 2024Tema 3-2 Aparato reproductor femenino 2024
Tema 3-2 Aparato reproductor femenino 2024
IES Vicent Andres Estelles
 
SEMIOLOGIA DE HEMORRAGIAS DIGESTIVAS.pptx
SEMIOLOGIA DE HEMORRAGIAS DIGESTIVAS.pptxSEMIOLOGIA DE HEMORRAGIAS DIGESTIVAS.pptx
SEMIOLOGIA DE HEMORRAGIAS DIGESTIVAS.pptx
Osiris Urbano
 
Las Tecnologias Digitales en los Aprendizajesdel Siglo XXI UNESCO Ccesa007.pdf
Las Tecnologias Digitales en los Aprendizajesdel Siglo XXI  UNESCO Ccesa007.pdfLas Tecnologias Digitales en los Aprendizajesdel Siglo XXI  UNESCO Ccesa007.pdf
Las Tecnologias Digitales en los Aprendizajesdel Siglo XXI UNESCO Ccesa007.pdf
Demetrio Ccesa Rayme
 
1° T3 Examen Zany de primer grado compl
1° T3 Examen Zany  de primer grado compl1° T3 Examen Zany  de primer grado compl
1° T3 Examen Zany de primer grado compl
ROCIORUIZQUEZADA
 
Guia Practica de ChatGPT para Docentes Ccesa007.pdf
Guia Practica de ChatGPT para Docentes Ccesa007.pdfGuia Practica de ChatGPT para Docentes Ccesa007.pdf
Guia Practica de ChatGPT para Docentes Ccesa007.pdf
Demetrio Ccesa Rayme
 
3° SES COMU LUN10 CUENTO DIA DEL PADRE 933623393 PROF YESSENIA (1).docx
3° SES COMU LUN10  CUENTO DIA DEL PADRE  933623393 PROF YESSENIA (1).docx3° SES COMU LUN10  CUENTO DIA DEL PADRE  933623393 PROF YESSENIA (1).docx
3° SES COMU LUN10 CUENTO DIA DEL PADRE 933623393 PROF YESSENIA (1).docx
rosannatasaycoyactay
 
Nuevos espacios,nuevos tiempos,nuevas practica.pptx
Nuevos espacios,nuevos tiempos,nuevas practica.pptxNuevos espacios,nuevos tiempos,nuevas practica.pptx
Nuevos espacios,nuevos tiempos,nuevas practica.pptx
lautyzaracho4
 
RETROALIMENTACIÓN PARA EL EXAMEN ÚNICO AUXILIAR DE ENFERMERIA.docx
RETROALIMENTACIÓN PARA EL EXAMEN ÚNICO AUXILIAR DE ENFERMERIA.docxRETROALIMENTACIÓN PARA EL EXAMEN ÚNICO AUXILIAR DE ENFERMERIA.docx
RETROALIMENTACIÓN PARA EL EXAMEN ÚNICO AUXILIAR DE ENFERMERIA.docx
100078171
 
el pensamiento critico de paulo freire en basica .pdf
el pensamiento critico de paulo freire en basica .pdfel pensamiento critico de paulo freire en basica .pdf
el pensamiento critico de paulo freire en basica .pdf
almitamtz00
 
EVALUACION ESTUDIANTIL 2023-2024 Ecuador - Costa.pptx
EVALUACION ESTUDIANTIL 2023-2024 Ecuador - Costa.pptxEVALUACION ESTUDIANTIL 2023-2024 Ecuador - Costa.pptx
EVALUACION ESTUDIANTIL 2023-2024 Ecuador - Costa.pptx
Victor Elizalde P
 
Blogs_y_Educacion_Por Zaracho Lautaro_.pdf
Blogs_y_Educacion_Por Zaracho Lautaro_.pdfBlogs_y_Educacion_Por Zaracho Lautaro_.pdf
Blogs_y_Educacion_Por Zaracho Lautaro_.pdf
lautyzaracho4
 
Las diversas Sociedades Mercantiles Mexico.pdf
Las diversas Sociedades Mercantiles Mexico.pdfLas diversas Sociedades Mercantiles Mexico.pdf
Las diversas Sociedades Mercantiles Mexico.pdf
La Paradoja educativa
 
Dosificación de los aprendizajes U4_Me gustan los animales_Parvulos 1_2_3.pdf
Dosificación de los aprendizajes U4_Me gustan los animales_Parvulos 1_2_3.pdfDosificación de los aprendizajes U4_Me gustan los animales_Parvulos 1_2_3.pdf
Dosificación de los aprendizajes U4_Me gustan los animales_Parvulos 1_2_3.pdf
KarenRuano6
 
PANDERETAS DECORADAS CON MOTIVOS DE LA RIOJA
PANDERETAS DECORADAS CON MOTIVOS DE LA RIOJAPANDERETAS DECORADAS CON MOTIVOS DE LA RIOJA
PANDERETAS DECORADAS CON MOTIVOS DE LA RIOJA
estroba5
 
PLAN DE CAPACITACION xxxxxxxxxxxxxxxxxxx
PLAN DE CAPACITACION xxxxxxxxxxxxxxxxxxxPLAN DE CAPACITACION xxxxxxxxxxxxxxxxxxx
PLAN DE CAPACITACION xxxxxxxxxxxxxxxxxxx
cportizsanchez48
 
Power Point: El espiritismo desenmascarado
Power Point: El espiritismo desenmascaradoPower Point: El espiritismo desenmascarado
Power Point: El espiritismo desenmascarado
https://gramadal.wordpress.com/
 
El espiritismo desenmascarado.pdf. Lec. 10
El espiritismo desenmascarado.pdf. Lec. 10El espiritismo desenmascarado.pdf. Lec. 10
El espiritismo desenmascarado.pdf. Lec. 10
Alejandrino Halire Ccahuana
 

Último (20)

Inteligencia Artificial para Docentes HIA Ccesa007.pdf
Inteligencia Artificial para Docentes  HIA  Ccesa007.pdfInteligencia Artificial para Docentes  HIA  Ccesa007.pdf
Inteligencia Artificial para Docentes HIA Ccesa007.pdf
 
FUENTES DE LA CULTURA GRIEGA EN LA HISTORIA
FUENTES DE LA CULTURA GRIEGA EN LA HISTORIAFUENTES DE LA CULTURA GRIEGA EN LA HISTORIA
FUENTES DE LA CULTURA GRIEGA EN LA HISTORIA
 
Elites municipales y propiedades rurales: algunos ejemplos en territorio vascón
Elites municipales y propiedades rurales: algunos ejemplos en territorio vascónElites municipales y propiedades rurales: algunos ejemplos en territorio vascón
Elites municipales y propiedades rurales: algunos ejemplos en territorio vascón
 
Tema 3-2 Aparato reproductor femenino 2024
Tema 3-2 Aparato reproductor femenino 2024Tema 3-2 Aparato reproductor femenino 2024
Tema 3-2 Aparato reproductor femenino 2024
 
SEMIOLOGIA DE HEMORRAGIAS DIGESTIVAS.pptx
SEMIOLOGIA DE HEMORRAGIAS DIGESTIVAS.pptxSEMIOLOGIA DE HEMORRAGIAS DIGESTIVAS.pptx
SEMIOLOGIA DE HEMORRAGIAS DIGESTIVAS.pptx
 
Las Tecnologias Digitales en los Aprendizajesdel Siglo XXI UNESCO Ccesa007.pdf
Las Tecnologias Digitales en los Aprendizajesdel Siglo XXI  UNESCO Ccesa007.pdfLas Tecnologias Digitales en los Aprendizajesdel Siglo XXI  UNESCO Ccesa007.pdf
Las Tecnologias Digitales en los Aprendizajesdel Siglo XXI UNESCO Ccesa007.pdf
 
1° T3 Examen Zany de primer grado compl
1° T3 Examen Zany  de primer grado compl1° T3 Examen Zany  de primer grado compl
1° T3 Examen Zany de primer grado compl
 
Guia Practica de ChatGPT para Docentes Ccesa007.pdf
Guia Practica de ChatGPT para Docentes Ccesa007.pdfGuia Practica de ChatGPT para Docentes Ccesa007.pdf
Guia Practica de ChatGPT para Docentes Ccesa007.pdf
 
3° SES COMU LUN10 CUENTO DIA DEL PADRE 933623393 PROF YESSENIA (1).docx
3° SES COMU LUN10  CUENTO DIA DEL PADRE  933623393 PROF YESSENIA (1).docx3° SES COMU LUN10  CUENTO DIA DEL PADRE  933623393 PROF YESSENIA (1).docx
3° SES COMU LUN10 CUENTO DIA DEL PADRE 933623393 PROF YESSENIA (1).docx
 
Nuevos espacios,nuevos tiempos,nuevas practica.pptx
Nuevos espacios,nuevos tiempos,nuevas practica.pptxNuevos espacios,nuevos tiempos,nuevas practica.pptx
Nuevos espacios,nuevos tiempos,nuevas practica.pptx
 
RETROALIMENTACIÓN PARA EL EXAMEN ÚNICO AUXILIAR DE ENFERMERIA.docx
RETROALIMENTACIÓN PARA EL EXAMEN ÚNICO AUXILIAR DE ENFERMERIA.docxRETROALIMENTACIÓN PARA EL EXAMEN ÚNICO AUXILIAR DE ENFERMERIA.docx
RETROALIMENTACIÓN PARA EL EXAMEN ÚNICO AUXILIAR DE ENFERMERIA.docx
 
el pensamiento critico de paulo freire en basica .pdf
el pensamiento critico de paulo freire en basica .pdfel pensamiento critico de paulo freire en basica .pdf
el pensamiento critico de paulo freire en basica .pdf
 
EVALUACION ESTUDIANTIL 2023-2024 Ecuador - Costa.pptx
EVALUACION ESTUDIANTIL 2023-2024 Ecuador - Costa.pptxEVALUACION ESTUDIANTIL 2023-2024 Ecuador - Costa.pptx
EVALUACION ESTUDIANTIL 2023-2024 Ecuador - Costa.pptx
 
Blogs_y_Educacion_Por Zaracho Lautaro_.pdf
Blogs_y_Educacion_Por Zaracho Lautaro_.pdfBlogs_y_Educacion_Por Zaracho Lautaro_.pdf
Blogs_y_Educacion_Por Zaracho Lautaro_.pdf
 
Las diversas Sociedades Mercantiles Mexico.pdf
Las diversas Sociedades Mercantiles Mexico.pdfLas diversas Sociedades Mercantiles Mexico.pdf
Las diversas Sociedades Mercantiles Mexico.pdf
 
Dosificación de los aprendizajes U4_Me gustan los animales_Parvulos 1_2_3.pdf
Dosificación de los aprendizajes U4_Me gustan los animales_Parvulos 1_2_3.pdfDosificación de los aprendizajes U4_Me gustan los animales_Parvulos 1_2_3.pdf
Dosificación de los aprendizajes U4_Me gustan los animales_Parvulos 1_2_3.pdf
 
PANDERETAS DECORADAS CON MOTIVOS DE LA RIOJA
PANDERETAS DECORADAS CON MOTIVOS DE LA RIOJAPANDERETAS DECORADAS CON MOTIVOS DE LA RIOJA
PANDERETAS DECORADAS CON MOTIVOS DE LA RIOJA
 
PLAN DE CAPACITACION xxxxxxxxxxxxxxxxxxx
PLAN DE CAPACITACION xxxxxxxxxxxxxxxxxxxPLAN DE CAPACITACION xxxxxxxxxxxxxxxxxxx
PLAN DE CAPACITACION xxxxxxxxxxxxxxxxxxx
 
Power Point: El espiritismo desenmascarado
Power Point: El espiritismo desenmascaradoPower Point: El espiritismo desenmascarado
Power Point: El espiritismo desenmascarado
 
El espiritismo desenmascarado.pdf. Lec. 10
El espiritismo desenmascarado.pdf. Lec. 10El espiritismo desenmascarado.pdf. Lec. 10
El espiritismo desenmascarado.pdf. Lec. 10
 

IntroLenguajeC.ppt

  • 2. Un poco de historia  C es un lenguaje de propósito general, es decir, se pueden desarrollar aplicaciones de diversas áreas.  Dentro de sus principales características podemos mencionar que:  Es un lenguaje estructurado, tiene una abundante cantidad de operadores y tipos de datos.  Es un lenguaje de nivel medio, pero se puede codificar a alto nivel, produce código objeto altamente optimizado, posee punteros y capacidad de aritmética de direcciones.  C fue creado en los Laboratorios Bell de AT&T para correr originalmente en el sistema operativo Unix
  • 3. Ventajas de trabajar en C  Entre sus múltiples ventajas podemos mencionar que:  C es un lenguaje muy portable, es decir, es independiente de la arquitectura de la máquina y con alguna o ninguna modificación un programa puede correr en una amplia variedad de computadores.  Es relativamente flexible en la conversión de datos.  Su eficiencia y claridad han hecho que el lenguaje ensamblador casi no haya sido utilizado en Unix.  El compilador de C es pequeño y tiene un gran poderío debido a sus múltiples bibliotecas.  Sin embargo, tiene sus desventajas y entre ellas se puede mencionar
  • 4. Como desventajas Podemos mencionar:  La excesiva libertad en la escritura del código fuente hace que muchas veces se cometan errores de programación, que, por ser correctos sintácticamente no se detectan en tiempo de compilación.  Carece de instrucciones de entrada y salida, de manejo de strings (cadenas de caracteres), quedando el trabajo en manos de las bibliotecas provocando con esto algunos problemas de portabilidad.
  • 5. Pero también  Hay múltiples ejemplos de aplicaciones construidas en C, como ser:  construcción de sistemas operativos, procesadores de texto, administradores de bases de datos (por ejemplo Clipper).  Programas para Windows y Windows 95, las APIs (Application Program Interface) de las Librerías de Enlace Dinámico (DLL) de Windows están construidas mayoritariamente en C.
  • 6. Forma General del Lenguaje C  Para crear un programa en C, se escribe el código fuente (programa), luego se compila y finalmente se enlaza con las bibliotecas (se hace un link, en nuestra jerga diríamos “se linkea”). Código Fuente Compilar Enlazar (Link) Para hacer un programa en C, lo primero que se debe hacer es crear el programa fuente (con extensión ".c")
  • 7.  Todo lenguaje de programación posee palabras claves, estas son aquellas palabras que reserva el lenguaje para identificar ciclos, estructuras y en general cualquier cosa que sea parte de instrucciones.  Por ejemplo, las palabras while, if, struct son palabras claves en C.  En C las palabras claves o reservadas deben escribirse en minúsculas, esto ya que C diferencia entre mayúsculas y minúsculas (a diferencia del lenguaje Pascal) Forma General del Lenguaje C
  • 8. Como escribir un programa en C  El Lenguaje C se escribe a partir de un programa principal y de funciones, el programa principal también es una función (función principal), y se denomina main(), esta debe estar siempre presente y es la primera en ser llamada.  Para hacer un programa en C, lo primero que se debe hacer es crear el programa fuente (con extensión ".c") de la siguiente manera:  #include <stdio.h>  #include <stdlib.h>  int main()  {  int c=0;  int b=0;  printf("Ingrese entero");  scanf("%d",&c);  b=c*c;  printf("el cuadrado es %d ", b);  system("PAUSE");  return 0;
  • 9. Estructura de un Programa en C  Cuando se escribe el programa se recomienda usar el siguiente formato:  llamadas a bibliotecas  declaración de funciones (prototipos de funciones)  declaración de variables globales  main()  {  declaración de variables locales  sentencias  }  definición de funciones /* esto es un comentario */ #include<stdio.h> #include<stdlib.h> float num; float res, cubo(int x); main() { printf("ingrese un número "); scanf("%f",&num); res=cubo(num); printf("%f al cubo es: %f",num,res); system("PAUSE"); return 0; } float cubo(float x) {return x*x*x;}
  • 10. Estructura de un Programa en C  Por lo general las bibliotecas contienen funciones creadas por el programador o entregadas con el producto. Por ejemplo las funciones de entrada y salida vienen especificadas en la biblioteca de entradas y salidas estándar stdio.h (Standar Input Ouput Header).  # include <stdio.h>  Cada vez que se escribe una línea, esta debe llevar ";" al final, con lo cual el compilador entiende que llega al final de una instrucción o proposición.  Antes de usar una variable dentro de un programa, es necesario indicarle al compilador que va a ser usada, para ello se declara:  <tipo> <lista_de_variables>; Ejemplo: Int a;  Como ya es sabido, una asignación es almacenar en una variable el resultado de una operación o proceso. En "C" una asignación se representa como:  <variable> = <expresión>;  Ejemplo:  a=5; /* a la variable a se le asigna el valor 5 (constante)*/  expo=max; /* a la variable expo se le asigna el contenido de la variable max*/  expofin=ult+4; /* a expofin se le asigna el contenido de la variable ult sumada a la constante 4*/
  • 11. Identificadores  Estos son simplemente los nombres que pueden asumir variables o constantes dentro del programa.  Existen algunas restricciones para los identificadores: - No deben ser iguales a nombres de palabras reservadas o bibliotecas. - Deben comenzar con una letra o el caracter ‘_’. - No deben tener en medio el caracter espacio. Ejemplo de identificadores: Contador Conta var1 _variable3_ Suma_total
  • 12.  Comentarios  Un comentario es una cadena de caracteres que no es tomada en cuenta por el compilador, esta va dentro de "/*" y "*/",  Ejemplo:  /* esto es un comentario */
  • 13. Entrada / Salida Estándar  La biblioteca (o archivo de cabecera) llamada stdio.h contiene todas las funciones de entrada y salida estándar, entre ellas las funciones printf() y scanf(). La f significa que es entrada o salida con formato.  printf()  Esta es la función de salida por pantalla, su formato es el siguiente:  printf(cadena_de_control,lista_de_argumen tos)  printf("a * b = %d n", c );  Los caracteres barra invertida (backslash) y n juntos, provocan un retorno de carro (return) en pantalla.
  • 14.  scanf()  Esta es la función para entrada estándar, se utiliza de un modo parecido a la anterior.  scanf("%d",&numdato);  %d indica que se lee con formato entero. En el ejemplo el caracter "&" se usa para indicar la dirección de memoria, es decir, "lee a un valor con formato entero y lo guarda en la dirección de memoria numdato". Entrada / Salida Estándar
  • 15. Operadores  Son caracteres especiales que tienen un significado específico o determinado, estos indican al compilador realizar operaciones matemáticas o lógicas. Operadores Matemáticos  - menos unuario  - resta  + suma  * producto  / división  -- Decremento  ++ Incremento  % módulo  = asignación
  • 16. Operadores Operadores de Relación Estos se utilizan dentro de proposiciones del tipo while, if, for; es decir, en estructuras de control .  < : menor que  > : mayor que  <= : menor o igual que  >= : mayor o igual que  == : igual a  != : distinto de (no igual a) Operadores Lógicos  ! : negación ------- not  && : y lógico ------- and  || : o lógico -------- or
  • 17. Estructura de control  La sentencia de control básica es if (<condicion>) then <sentencia/s> else <sentencia/s>. En ella se evalúa una expresión condicional y si se cumple, se ejecuta la sentencia s; si no, se ejecuta la sentencia t. La segunda parte de la condición, else <t>, es opcional.  if (dato2==0) then /* Se pregunta "es dato2 igual a cero" */  printf("n LA DIVISION ES INDETERMINADA");  else  {  printf("n LA DIVISION ES: %f", div); /*se ejecuta si dato <> 0*/  }