SlideShare una empresa de Scribd logo
1 de 17
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

La actualidad más candente (20)

Aprendiendo Lenguaje C
Aprendiendo Lenguaje CAprendiendo Lenguaje C
Aprendiendo Lenguaje C
 
Lenguaje de programacion c
Lenguaje de programacion cLenguaje de programacion c
Lenguaje de programacion c
 
Lenguaje c
Lenguaje cLenguaje c
Lenguaje c
 
Tutorial de- c. ++
Tutorial de- c. ++ Tutorial de- c. ++
Tutorial de- c. ++
 
Lenguaje C
Lenguaje CLenguaje C
Lenguaje C
 
ENSAYO SOBRE EL LENGUAJE C
ENSAYO SOBRE EL LENGUAJE C ENSAYO SOBRE EL LENGUAJE C
ENSAYO SOBRE EL LENGUAJE C
 
Mi lenguaje de programación de preferencia es C++
Mi lenguaje de programación de preferencia es C++Mi lenguaje de programación de preferencia es C++
Mi lenguaje de programación de preferencia es C++
 
Santaella u5 Lenguaje C++
Santaella u5 Lenguaje C++Santaella u5 Lenguaje C++
Santaella u5 Lenguaje C++
 
Introduccion del Lenguaje C
Introduccion del Lenguaje CIntroduccion del Lenguaje C
Introduccion del Lenguaje C
 
Lenguaje de programación C
Lenguaje de programación CLenguaje de programación C
Lenguaje de programación C
 
Clase 03
Clase 03Clase 03
Clase 03
 
Unidad 2 curso c
Unidad 2 curso cUnidad 2 curso c
Unidad 2 curso c
 
Parte i curso c
Parte i curso cParte i curso c
Parte i curso c
 
Lenguaje de programacion en c
Lenguaje de programacion en cLenguaje de programacion en c
Lenguaje de programacion en c
 
Progra.jpg
Progra.jpgProgra.jpg
Progra.jpg
 
7 lenguaje c
7 lenguaje c7 lenguaje c
7 lenguaje c
 
Lenguaje c
Lenguaje cLenguaje c
Lenguaje c
 
Compiladores
CompiladoresCompiladores
Compiladores
 
Programa c++
Programa c++Programa c++
Programa c++
 
Unidad 3
Unidad 3Unidad 3
Unidad 3
 

Similar a 2 estructura programa-c

Similar a 2 estructura programa-c (20)

IntroLenguajeC.ppt
IntroLenguajeC.pptIntroLenguajeC.ppt
IntroLenguajeC.ppt
 
Primera Clase
Primera ClasePrimera Clase
Primera Clase
 
Lenguaje c
Lenguaje c Lenguaje c
Lenguaje c
 
Programación c
Programación cProgramación c
Programación c
 
Programación c
Programación cProgramación c
Programación c
 
Elementos basicos c++
Elementos basicos c++Elementos basicos c++
Elementos basicos c++
 
Elementos basicos c++
Elementos basicos c++Elementos basicos c++
Elementos basicos c++
 
Elementos basicos c++
Elementos basicos c++Elementos basicos c++
Elementos basicos c++
 
manual básico de programación en c
manual básico de programación en c manual básico de programación en c
manual básico de programación en c
 
Manual 1 de lenguaje c
Manual 1 de lenguaje cManual 1 de lenguaje c
Manual 1 de lenguaje c
 
Clase 1 Lenguaje C++
Clase 1 Lenguaje C++Clase 1 Lenguaje C++
Clase 1 Lenguaje C++
 
CursoC.pdf
CursoC.pdfCursoC.pdf
CursoC.pdf
 
Curso c
Curso cCurso c
Curso c
 
Tutorial c++
Tutorial c++Tutorial c++
Tutorial c++
 
Elementos básicos del lenguaje
Elementos básicos del lenguajeElementos básicos del lenguaje
Elementos básicos del lenguaje
 
Curso lenguaje c_segundo_modulo_
Curso lenguaje c_segundo_modulo_Curso lenguaje c_segundo_modulo_
Curso lenguaje c_segundo_modulo_
 
Unidad 3
Unidad 3Unidad 3
Unidad 3
 
Clase 4
Clase 4Clase 4
Clase 4
 
Instrucciones Básicas para C++
Instrucciones Básicas para C++Instrucciones Básicas para C++
Instrucciones Básicas para C++
 
Libro digital de programación
Libro digital de programaciónLibro digital de programación
Libro digital de programación
 

Más de Eliezer Cordova (20)

Tipos de comunicacion
Tipos de comunicacionTipos de comunicacion
Tipos de comunicacion
 
Presentacion 3
Presentacion 3Presentacion 3
Presentacion 3
 
Presentacion 2
Presentacion 2Presentacion 2
Presentacion 2
 
Presentacion 2
Presentacion 2Presentacion 2
Presentacion 2
 
Presentacion 1
Presentacion 1Presentacion 1
Presentacion 1
 
Introduccion publisher
Introduccion publisherIntroduccion publisher
Introduccion publisher
 
Presentaciones efectivas
Presentaciones efectivasPresentaciones efectivas
Presentaciones efectivas
 
Resolucion de problemas
Resolucion de problemasResolucion de problemas
Resolucion de problemas
 
Programación
ProgramaciónProgramación
Programación
 
Presentacion aula virtual videoconferencia
Presentacion aula virtual videoconferenciaPresentacion aula virtual videoconferencia
Presentacion aula virtual videoconferencia
 
Metodología para la creación de algoritmos 0
Metodología para la creación de algoritmos 0Metodología para la creación de algoritmos 0
Metodología para la creación de algoritmos 0
 
Lenguajes de programación.ppt
Lenguajes de programación.pptLenguajes de programación.ppt
Lenguajes de programación.ppt
 
Presentacion uno
Presentacion unoPresentacion uno
Presentacion uno
 
Intro
IntroIntro
Intro
 
3 estructuras no lineales estáticas y dinámicas
3  estructuras no lineales estáticas y dinámicas3  estructuras no lineales estáticas y dinámicas
3 estructuras no lineales estáticas y dinámicas
 
2 arboles
2 arboles2 arboles
2 arboles
 
1 árbol
1 árbol1 árbol
1 árbol
 
Acciones funciones
Acciones funcionesAcciones funciones
Acciones funciones
 
3 funciones
3 funciones3 funciones
3 funciones
 
Introduccion ia
Introduccion iaIntroduccion ia
Introduccion ia
 

Último

Estrategias de enseñanza - aprendizaje. Seminario de Tecnologia..pptx.pdf
Estrategias de enseñanza - aprendizaje. Seminario de Tecnologia..pptx.pdfEstrategias de enseñanza - aprendizaje. Seminario de Tecnologia..pptx.pdf
Estrategias de enseñanza - aprendizaje. Seminario de Tecnologia..pptx.pdfAlfredoRamirez953210
 
BIOLOGIA_banco de preguntas_editorial icfes examen de estado .pdf
BIOLOGIA_banco de preguntas_editorial icfes examen de estado .pdfBIOLOGIA_banco de preguntas_editorial icfes examen de estado .pdf
BIOLOGIA_banco de preguntas_editorial icfes examen de estado .pdfCESARMALAGA4
 
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptxSINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptxlclcarmen
 
Plan Año Escolar Año Escolar 2023-2024. MPPE
Plan Año Escolar Año Escolar 2023-2024. MPPEPlan Año Escolar Año Escolar 2023-2024. MPPE
Plan Año Escolar Año Escolar 2023-2024. MPPELaura Chacón
 
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARONARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFAROJosé Luis Palma
 
VOLUMEN 1 COLECCION PRODUCCION BOVINA . SERIE SANIDAD ANIMAL
VOLUMEN 1 COLECCION PRODUCCION BOVINA . SERIE SANIDAD ANIMALVOLUMEN 1 COLECCION PRODUCCION BOVINA . SERIE SANIDAD ANIMAL
VOLUMEN 1 COLECCION PRODUCCION BOVINA . SERIE SANIDAD ANIMALEDUCCUniversidadCatl
 
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptx
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptxPresentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptx
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptxYeseniaRivera50
 
La Función tecnológica del tutor.pptx
La  Función  tecnológica  del tutor.pptxLa  Función  tecnológica  del tutor.pptx
La Función tecnológica del tutor.pptxJunkotantik
 
Estrategia de Enseñanza y Aprendizaje.pdf
Estrategia de Enseñanza y Aprendizaje.pdfEstrategia de Enseñanza y Aprendizaje.pdf
Estrategia de Enseñanza y Aprendizaje.pdfromanmillans
 
c3.hu3.p1.p3.El ser humano como ser histórico.pptx
c3.hu3.p1.p3.El ser humano como ser histórico.pptxc3.hu3.p1.p3.El ser humano como ser histórico.pptx
c3.hu3.p1.p3.El ser humano como ser histórico.pptxMartín Ramírez
 
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIARAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIACarlos Campaña Montenegro
 
Unidad II Doctrina de la Iglesia 1 parte
Unidad II Doctrina de la Iglesia 1 parteUnidad II Doctrina de la Iglesia 1 parte
Unidad II Doctrina de la Iglesia 1 parteJuan Hernandez
 
Análisis de la Implementación de los Servicios Locales de Educación Pública p...
Análisis de la Implementación de los Servicios Locales de Educación Pública p...Análisis de la Implementación de los Servicios Locales de Educación Pública p...
Análisis de la Implementación de los Servicios Locales de Educación Pública p...Baker Publishing Company
 
5° SEM29 CRONOGRAMA PLANEACIÓN DOCENTE DARUKEL 23-24.pdf
5° SEM29 CRONOGRAMA PLANEACIÓN DOCENTE DARUKEL 23-24.pdf5° SEM29 CRONOGRAMA PLANEACIÓN DOCENTE DARUKEL 23-24.pdf
5° SEM29 CRONOGRAMA PLANEACIÓN DOCENTE DARUKEL 23-24.pdfOswaldoGonzalezCruz
 
RETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docxRETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docxAna Fernandez
 
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptxOLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptxjosetrinidadchavez
 
Día de la Madre Tierra-1.pdf día mundial
Día de la Madre Tierra-1.pdf día mundialDía de la Madre Tierra-1.pdf día mundial
Día de la Madre Tierra-1.pdf día mundialpatriciaines1993
 

Último (20)

Estrategias de enseñanza - aprendizaje. Seminario de Tecnologia..pptx.pdf
Estrategias de enseñanza - aprendizaje. Seminario de Tecnologia..pptx.pdfEstrategias de enseñanza - aprendizaje. Seminario de Tecnologia..pptx.pdf
Estrategias de enseñanza - aprendizaje. Seminario de Tecnologia..pptx.pdf
 
Sesión La luz brilla en la oscuridad.pdf
Sesión  La luz brilla en la oscuridad.pdfSesión  La luz brilla en la oscuridad.pdf
Sesión La luz brilla en la oscuridad.pdf
 
BIOLOGIA_banco de preguntas_editorial icfes examen de estado .pdf
BIOLOGIA_banco de preguntas_editorial icfes examen de estado .pdfBIOLOGIA_banco de preguntas_editorial icfes examen de estado .pdf
BIOLOGIA_banco de preguntas_editorial icfes examen de estado .pdf
 
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptxSINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
 
Power Point: "Defendamos la verdad".pptx
Power Point: "Defendamos la verdad".pptxPower Point: "Defendamos la verdad".pptx
Power Point: "Defendamos la verdad".pptx
 
Plan Año Escolar Año Escolar 2023-2024. MPPE
Plan Año Escolar Año Escolar 2023-2024. MPPEPlan Año Escolar Año Escolar 2023-2024. MPPE
Plan Año Escolar Año Escolar 2023-2024. MPPE
 
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARONARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
 
VOLUMEN 1 COLECCION PRODUCCION BOVINA . SERIE SANIDAD ANIMAL
VOLUMEN 1 COLECCION PRODUCCION BOVINA . SERIE SANIDAD ANIMALVOLUMEN 1 COLECCION PRODUCCION BOVINA . SERIE SANIDAD ANIMAL
VOLUMEN 1 COLECCION PRODUCCION BOVINA . SERIE SANIDAD ANIMAL
 
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptx
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptxPresentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptx
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptx
 
La Función tecnológica del tutor.pptx
La  Función  tecnológica  del tutor.pptxLa  Función  tecnológica  del tutor.pptx
La Función tecnológica del tutor.pptx
 
Estrategia de Enseñanza y Aprendizaje.pdf
Estrategia de Enseñanza y Aprendizaje.pdfEstrategia de Enseñanza y Aprendizaje.pdf
Estrategia de Enseñanza y Aprendizaje.pdf
 
c3.hu3.p1.p3.El ser humano como ser histórico.pptx
c3.hu3.p1.p3.El ser humano como ser histórico.pptxc3.hu3.p1.p3.El ser humano como ser histórico.pptx
c3.hu3.p1.p3.El ser humano como ser histórico.pptx
 
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIARAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
 
Unidad II Doctrina de la Iglesia 1 parte
Unidad II Doctrina de la Iglesia 1 parteUnidad II Doctrina de la Iglesia 1 parte
Unidad II Doctrina de la Iglesia 1 parte
 
Análisis de la Implementación de los Servicios Locales de Educación Pública p...
Análisis de la Implementación de los Servicios Locales de Educación Pública p...Análisis de la Implementación de los Servicios Locales de Educación Pública p...
Análisis de la Implementación de los Servicios Locales de Educación Pública p...
 
5° SEM29 CRONOGRAMA PLANEACIÓN DOCENTE DARUKEL 23-24.pdf
5° SEM29 CRONOGRAMA PLANEACIÓN DOCENTE DARUKEL 23-24.pdf5° SEM29 CRONOGRAMA PLANEACIÓN DOCENTE DARUKEL 23-24.pdf
5° SEM29 CRONOGRAMA PLANEACIÓN DOCENTE DARUKEL 23-24.pdf
 
RETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docxRETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docx
 
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptxOLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
 
Día de la Madre Tierra-1.pdf día mundial
Día de la Madre Tierra-1.pdf día mundialDía de la Madre Tierra-1.pdf día mundial
Día de la Madre Tierra-1.pdf día mundial
 
Unidad 3 | Teorías de la Comunicación | MCDI
Unidad 3 | Teorías de la Comunicación | MCDIUnidad 3 | Teorías de la Comunicación | MCDI
Unidad 3 | Teorías de la Comunicación | MCDI
 

2 estructura programa-c

  • 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*/  }

Notas del editor

  1. es decir, es independiente de la arquitectura de la máquina y con alguna o ninguna modificación es decir, es independiente de la arquitectura de la máquina y con alguna o ninguna modificación