You are on page 1of 47

Biblioteca estndar de C

Los programas C consisten en mdulos o piezas que se denominan funciones. Podemos programar todas las funciones que necesitemos para formar un programa C, pero la mayor parte de los programadores de C aprovechan una gran recopilacin de funciones existentes, que se conocen como la Biblioteca estndar de C. Documento estndar de ANSI C.

Tipos de datos Los datos que procesa una computadora se clasifican en simples y estructurados. Datos simples Ocupan slo una casilla de memoria.

(ejem. enteros, reales, caracteres, etc.).


Datos estructurados Con un nombre se hace referencia a un grupo de casillas de memoria. (ejem. Arreglos, cadena de caracteres, registros, etc.)

Identificadores Los datos ya sean simples o estructurados, se deben almacenar en casillas o celdas de memoria para utilizarlos posteriormente. A estas casillas o celdas se les asigna un nombre para reconocerlas. Se forma por medio de letras, dgitos y el carcter de subrayado (_). Siempre hay que comenzar con una letra. El lenguaje de programacin C es case sensitive. (Diferencia mayus de minus). Identificadores ms comunes (3 caracteres), identificadores largos (7 caracteres). No puede ser una palabra reservada.

10

Palabras reservadas (clave o tokens)

Son identificadores predefinidos (tienen un significado especial).


En todos los lenguajes de programacin existe un conjunto de palabras reservadas.

Constantes Son datos que no cambian durante la ejecucin del programa Para nombrarlas utilizamos identificadores Puede haber constantes de todos los tipos de datos (entero, real, carcter, cadena de caracteres, etc.). Se deben definir antes de comenzar el programa principal.

Existen 3 formas de definir constantes:

Variables

Son objetos que pueden cambiar su valor durante la


ejecucin de un programa. Para nombrarlas utilizamos identificadores. Pueden existir variables de todos los tipos de datos Por lo general se declaran en el programa principal y en las funciones. Deben ser representativos de la funcin que cumplen en el programa. Cada variable tiene un nombre, un tipo, un tamao, un valor y una direccin. void main(void) { int va1, va2; float re1, re2; char ca1, ca2; }

Operacin Asignacin Una vez que se declaran las variables, stas reciben un valor a travs de una asignacin. Esta operacin es destructiva (si la variable tena un valor, ste se destruye al asignar el nuevo valor).

va1 10 va1 = 10; va1 := 10;

a la variable va1, se le asigna 10 se le asigna 10 a la variable va1

int va1, va2; int va1 = 10, va2 = 15; va1 = 10; va2 = va1 + 15;

Operadores aritmticos Nos permiten realizar operaciones entre operandos: nmeros, constantes o variables. De la evaluacin de una expresin aritmtica siempre se obtiene un valor de tipo entero o real.

Operadores aritmticos simplificados

Operadores de incremento y decremento

(++)

(--)

Simplifican y clarifican la escritura de los programas

Se pueden utilizar antes o despus de la variable


(post o pre).

lgebra de Boole
En informtica y matemtica, es una estructura algebraica que rigoriza las operaciones lgicas Y, O y NO, as como el conjunto de operaciones unin, interseccin y complemento. Se denomina as en honor a George Boole, (2 de noviembre de 1815 a 8 de diciembre de 1864), matemtico ingls que fue el primero en definirla como parte de un sistema lgico a mediados del siglo XIX.

El lgebra de Boole fue un intento de utilizar las tcnicas algebraicas para tratar expresiones de la lgica proposicional.
En la actualidad, el lgebra de Boole se aplica de forma generalizada en el mbito del diseo electrnico.

Claude Shannon fue el primero en aplicarla en el diseo de circuitos de


conmutacin elctrica biestables, en 1948.

Expresiones lgicas En honor al matemtico George Boole

En C se simulan (1 Verdadero, 0 Falso)

Repaso tablas de verdad (AND, OR, NOT)

Operadores relacionales Para comparar dos operandos (nmeros, caracteres, cadenas de caracteres, constantes o variables).

Operador coma Encadena diferentes expresiones.

Ejercicio / Ejemplo.

Considerar x, v, z enteras.

x = (v=3, v*5); x = (v+=5, v%3); x = (y=(15>10), z=(2>=y), y&&z); x = (y=(!(7>15)), z=(35>40)&&y, (!(y&&z)));

Ejercicio: Prioridad de operadores


Cul es el valor de c/u de las sig. expresiones?

4+2*5 23 * 2 / 5 3 + 5 * (10 (2 + 4)) (9 + 3) * 5 / 4 mod 7 + 1

Prioridad de operadores
Aritmticos, relacionales y lgicos. Se evalan de izquierda a derecha.

Tipos de datos en C

Carcter de escape (\)


Secuencia de escape simple (Caracteres de control)

Formatos de impresin (aplican para printf y scanf)

Estructura promedio de un programa C

Cabeceras del programa Directivas del preprocesador Prototipos de funcin Variables globales Funcin principal Cuerpo del programa

Declaracin de funciones

Entrada y salida estndar en C

Permite llevar hacia la salida estndar (la pantalla) los valores (datos) obtenidos de la evaluacin de una lista de argumentos.

Indicar el formato de salida de los datos que se van a mostrar

Texto ordinario (texto normal). Especificadores de formato. Secuencias de escape.

se debe escribir entre comillas dobles (").

Entrada y salida estndar en C

Permite asignar a una o ms variables, uno o ms valores

(datos) recibidos desde la entrada estndar (el teclado).

Indicar el formato de entrada de los datos que se van a recoger por teclado

Especificadores de formato. Otros caracteres.

se debe escribir entre comillas dobles (").

Prctica # 1

p_001.cpp

Descripcin:
Manejo de la funcin printf

Propsito(s):
Primer programa en C Escritura de texto ordinario Escritura de variables Formatos de impresin Caracter de escape Detener la pantalla al fin de la ejecucin

Prctica # 2

p_002.cpp

Descripcin:
Mostrar funcionamiento de algunos caracteres de escape

Prctica # 3

p_003.cpp Descripcin:
Mostrar funcionamiento de algunos formatos de impresin

Prctica # 4
%5d %-6d %4.2f %-5.2f

p_004.cpp
Modificadores al smbolo %

Escribe un entero utilizando un campo de 5 dgitos (Justif. a la derecha) 6 dgitos, justificacin izquierda Escribe un real utilizando campo de 4 dgitos, dos de ellos para decimales Real, campo 4 dgitos (2 para decimales), justificacin izquierda.

Descripcin:
Mostrar funcionamiento de algunos modificadores al smbolo %

Prctica # 5

p_005.cpp

Descripcin:
Prioridad de operadores
(ejercicio diapositiva 15)

Propsito(s):
Implementar ejercicio prioridad operadores Detectar debilidad del compilador para trabajar con operandos enteros que produzcan un resultado real Ejemplo de promocin de datos (cast) Indicar decimales a mostrar en pantalla

Prctica # 6

p_006.cpp

Descripcin / Propsito(s):
Uso del operador coma (,)

Implementar las siguientes expresiones en C

(ejercicio diapositiva 14)

Prctica # 7

p_007.cpp

Descripcin / Propsito(s):
Prioridad de operadores

Implementar las siguientes frmulas como expresiones de computadora y posteriormente en C

Prctica # 8

p_008.cpp

Descripcin / Propsito(s):
Prioridad de operadores

Implementar las siguientes frmulas como expresiones de computadora y posteriormente en C

Prctica # 9

p_009.cpp

Descripcin / Propsito(s):
Uso de la funcin scanf Modificadores de formato ms utilizados para scanf Leer 1 variable en un scanf Mostrar direccin de memoria

Prctica # 10

p_010.cpp

Descripcin / Propsito(s):
Uso de la funcin scanf Modificadores de formato ms utilizados para scanf Leer 2 o ms variable en un scanf

Prctica # 10

p_010.cpp

Descripcin / Propsito(s):
Prioridad de operadores
(ejercicio diapositiva 15)

p_009 Al recibir los datos A, B, C y D que representan nmeros enteros, escriba los mismos en orden inverso.

Datos: A, B, C, D (variables de tipo entero).

Prctica # 6

p_006.cpp

Descripcin / Propsito(s):
Prioridad de operadores
(ejercicio diapositiva 15)

p_010 Al recibir como datos la clave del empleado y los 6 primeros sueldos del ao, calcule el ingreso total semestral y el promedio

mensual, e imprima la clave del empleado, el


ingreso total y el promedio mensual. Datos: CLA tipo entero , SU1, SU2, SU3, SU4, SU5, SU6 tipo real

Prctica # 6

p_006.cpp

Descripcin / Propsito(s):
Prioridad de operadores
(ejercicio diapositiva 15)

p_011 Construye 1 diag. de flujo que, al recibir como datos la base y la altura de un tringulo, calcule su superficie.

Datos:

BAS, ALT Reales

Superficie = (base * altura) / 2

Prctica # 6

p_006.cpp

Descripcin / Propsito(s):
Prioridad de operadores
(ejercicio diapositiva 15)

p_012 Construye 1 diag. de flujo que, al recibir como datos la longitud y el peso de un objeto expresado en pies y libras, imprima los datos

de este objeto pero expresados en metros y


kilos, respectivamente. Datos. PIE, LIB Donde PIE es una

variable de tipo real que representa la long. Del objeto en pies.

Prctica # 6

p_006.cpp

Descripcin / Propsito(s):
Prioridad de operadores
(ejercicio diapositiva 15)

p_013 Construye 1 diag. de flujo que, al recibir como datos el radio y la altura de un cilindro, calcule e imprima el rea y su volumen.

Datos: RAD, ALT


Donde RAD es una var de tipo real que representa el radio del cilindro. Consideraciones: Volumen = pi * radio2*altura Pi = 3.141592

Prctica # 6

p_006.cpp

Descripcin / Propsito(s):
Prioridad de operadores
(ejercicio diapositiva 15)

p_014

Prctica # 6

p_006.cpp

Descripcin / Propsito(s):
Prioridad de operadores
(ejercicio diapositiva 15)

p_015

Estructuras Secuenciales

Estructuras de Decisin

1) 2) 3) 4) 5) 6)

Nmero par /impar Aprobado / reprobado Dos nmeros, mayor? menor? O iguales? Verificar que un nmero est en rango [0,10] Tres nmeros distintos entre s, mayor? int? menor? Asignar literales a calificaciones 6=S, 7=R, 8=B, 9=MB, 10=E

Los que se puedan con seleccin simple, doble, mltiple y hacer sus

versiones utilizando operadores lgicos.

Estructuras Repetitivas
1) Contar del 1 al 10 con las 3 estructuras repetitivas

-Mtodos para romper un ciclo while y do/while

1) Por contador
2) Por centinela Ejem. Un grupo de n alumnos hizo un exmen. Ud. Tiene acceso a las calificaciones (enteros entre 0 y 100). Determine el promedio del grupo. (Unando contador y centinela). Instrucciones break y continue Alteran el control del flujo.

Estructuras Repetitivas
Break Cuando se ejecuta en una estructura while, for, do-while o switch, provoca la salida inmediata de la estructura; la ejecucin del programa contina en la primera instruccin que est despus de la estructura. Generalmente se usa para salir antes de tiempo de un ciclo y para saltarse el resto de una estructura switch.

Continue al ejecutarse en una estructura while, for o do/while, salta las instrucciones restantes del
cuerpo de dicha estructura y contina con la siguiente iteracin del ciclo. Por qu C? 1972 Dennis Ritchie (Labs. Bell AT&T) Claridad y Eficacia en diseo de tipos y estructuras de datos No orientado a una rea en especial. Permite una prog. Estructurada, economizando expresiones. Abundancia de operadores y tipos de datos. Codificacin en alto y bajo nivel. Permite la utilizacin natural de las funciones primitivas del sistema.

You might also like