Curso de Programación Avanzada en C

Documentos relacionados
Principios de Computadoras II

Lección 2 Introducción al lenguaje C

Programación en C. Algoritmo y Estructura de Datos. Ing. M. Laura López. Programación en C

El lenguaje C. 1. Identificadores, constantes y variables

Elementos de un programa en C

Constantes. Las constantes no cambian durante la ejecucion de un programa en C++, en C++ existen 4 tipos de constantes:

Elementos léxicos del lenguaje de programación C

Datos y tipos de datos

TEMA 2. EL LENGUAJE C. ELEMENTOS BÁSICOS

Datos y tipos de datos

Tema 3 Elementos básicos de programación

Estructuras de Datos Declaraciones Tipos de Datos

Todo programa en 'C' consta de una o más funciones, una de las cuales se llama main.

Centro Asociado Palma de Mallorca. Antonio Rivero Cuesta

LENGUAJE. Tema 2 Elementos de un programa

Lenguaje C Elementos de un Programa. Ing. Hugo Fdo. Velasco Peña Universidad Nacional 2006

Expresiones y sentencias

2. EXPRESIONES 3. OPERADORES Y OPERANDOS 4. INDENTIFICADORES COMO LOCALIDADES DE MEMORIA

Lenguaje de programación C. Introducción

Expresiones Aritméticas. Programación digital I Escuela de Sistemas Facultad de Ingeniería Gilberto Diaz

Programación estructurada (Introducción a lenguaje C)

TIPOS DE DATOS BASICOS EN LENGUAJE C

OPERADORES Y EXPRESIONES

Unidad Didáctica 2. Elementos básicos del lenguaje Java Tipos, declaraciones, expresiones y asignaciones

Programación Orientada a Objetos Sentencias Java Parte I Ing. Julio Ernesto Carreño Vargas MsC.

Unidad II Fundamentos de C++ M.C. Juan Carlos Olivares Rojas

INICIACIÓN A LA PROGRAMACIÓN EN C

INTRODUCCIóN A LA PROGRAMACIóN APUNTES DE JAVA APUNTES DE JAVA

Operadores y Expresiones

Operadores. Javier Fernández Rivera -

Fundamentos de Programación 2017-I

Práctica de constantes, expresiones y operadores. Programación en C 1

Lenguajes de programación

ESCUELA POLITÉCNICA SUPERIOR PRÁCTICA 2: EXPRESIONES, PRINTF Y SCANF

Programación n Orientada a Objetos Sentencias Java Parte I. Ing. Julio Ernesto Carreño o Vargas MsC.

Desde los programas más simples escritos en un lenguaje de programación suelen realizar tres tareas en forma secuencial.

Universidad de Pamplona Materia: Programación 1 Docente: Ing. Lusbin Raúl Vargas LENGUAJE C ESTRUCTURA DE UN PROGRAMA EN C

INTRODUCCIÓN AL LENGUAJE C

Programación En Lenguaje C

Tema 3. Tipos de datos simples

Tema 2. El lenguaje JAVA

Carlos Montenegro. Programación Orientada a Objetos Proyecto Curricular de Ingeniería de Sistemas

Tema 4. Operadores y Expresiones

Variables. Una variable no es más que un nombre simbólico que identifica una dirección de memoria: vs.

Java Avanzado. Guía 1. Java Avanzado Facultad de Ingeniería. Escuela de computación.

4. Operadores Operador asignación

CONCEPTOS BASICOS DEL LENGUAJE JAVA

Fundamentos de la programación

Introducción a Java (II) Dr. (c) Noé Alejandro Castro Sánchez

Fundamentos de JAVA. Angel Kuri Enero, /2/2006

EQUIVALENCIAS EN C DE CONSTRUCCIONES SECUENICIALES EN PSEUDOCÓDIGO

Programación Estructurada

Programación en java. Estructuras algorítmicas

Programación. Test Autoevaluación Tema 3

Fundamentos de Informática E.U.P. Universidad de Sevilla

FUNCIONAMIENTO DIGITAL DE UN SISTEMA. EL SISTEMA BINARIO. Sistema Digital. Fr. Casares. Sistema Digital. Sistema Digital

Programa Java. El lenguaje de programación Java. Comentarios. Programa Java. Palabras reservadas. Identificadores

Estatutos de Control C# Estatutos de Decisión (Selección)

PROGRAMACIÓN ORIENTADA A OBJETOS (L40629) Sabino Miranda-Jiménez

Tema 2. El lenguaje de programación Java (Parte 1)

Laboratorio de Arquitectura de Redes. Punteros en lenguaje C

Manual de turbo pascal

02 - Conceptos fundamentales sobre el tratamiento de datos

Algoritmos. Medios de expresión de un algoritmo. Diagrama de flujo

INTRODUCCIÓN A LA PROGRAMACIÓN EN FORTRAN. Métodos Numéricos Carlos Zotelo

Es toda la información que utiliza el computador. Según sea la información que guardemos en los datos, se clasifican en los siguientes tipos:

Introducción a la Programación 11 O. Humberto Cervantes Maceda

Características de Lenguajes de Scripts

1 Estructura básica de un programa C++

Representación de datos y aritmética básica en sistemas digitales

1 ELEMENTOS BASICOS DEL LENGUAJE

En este artículo vamos a conocer los tipos de datos que podemos manejar programando en C.

Ficha de Aprendizaje N 13

Tema 3 Constantes, Variables y Tipos

Capítulo 7 OPERADORES Y EXPRESIONES. Presentación resumen del libro: "EMPEZAR DE CERO A PROGRAMAR EN lenguaje C"

Se guardan en archivos con extencion c y los cabezales con extension h

FUNDAMENTOS DE INFORMÁTICA

TIPOS DE DATOS BASICOS EN LENGUAJE C

PROGRAMACIÓN UNIDADES

PHP: Lenguaje de programación

Informática Ingeniería en Electrónica y Automática Industrial

Capítulo 3: Dpto. de ATC, Universidad de Sevilla - Página 1 de 18 INTRODUCCIÓN A LA PROGRAMACIÓN IMPERATIVA

Estructura de Datos. Unidad I Tipos de Datos

funciones printf scanf

Representación de la Información.... en los Computadores

Laboratorio de Arquitectura de Redes. Entrada y salida estándar

REFERENCIA DEL LENGUAJE

Apuntadores (Punteros)

RESUMEN DE CONCEPTOS BASICOS DE PROGRAMACION JAVA

Computación II. Introducción a Visual Basic

Java para programadores

PRÁCTICA MANEJO INTERNO DE DATOS

Repaso de las características más importantes de la programación Java y su adaptación a Android

INICIACIÓN A LA PROGRAMACIÓN II

Transcripción:

Curso de Programación Avanzada en C Copyright, 1996 Universidad Sim on Bol ivar 1 Prof. Mariela J. Curiel Contenido del Curso Conceptos BásicosB Estructuras de Control Arreglos Otros tipos de datos derivados Funciones 2 Contenido del Curso Apuntadores Asignación n de memoria dinámica y estructuras de datos Entrada/Salida El Pre-procesador de C 3 Escriba el título aquí 1

Contenido del curso Desarrollo de programas con varios módulosm Programación n Concurrente 4 (Características del lenguaje C) Es un lenguaje pequeño. Tiene menos palabras reservadas que PASCAL, pero es aún mucho más poderoso. C es portable. Tiene un conjunto muy poderoso de operadores. Es modular (soporta la modularidad pero no obliga a programar modularmente) 5 (Estructura de un programa en C) Los programas C consisten de módulos o piezas que se denominan funciones. Los programadores aprovechan una gran recopilación de funciones existentes, que se conoce como Librería Estándar de C. Una función llamada main es el punto donde comienza la ejecución del programa. Ejemplo 6 Escriba el título aquí 2

(Variables, Constantes, Declaraciones) Variables Dan nombres únicos a varios objetos dentro del programa. Representan una localidad en la memoria del computador. Sus nombres pueden estar formados por letras, dígitos y _ (underscores), pero no pueden comenzar con dígitos. Según el estándar ANSI sólo se reconocerán los primeros 31 caracteres. 7 (Variables, Constantes, Declaraciones) Las variables deben declararse antes de utilizarse con un nombre y un tipo de datos. En una misma línea se pueden declarar varias variables del mismo tipo. int a,b,c; C es case-sensitive: hace distinción de las minúsculas y mayúsculas. Las declaraciones sirven para dos propósitos: le dicen al compilador qué cantidad de espacio debe reservar. le permiten al compilador instruir a la máquina para efectuar las instrucciones correctamente. 8 Las palabras reservadas van en minúsculas Conceptos Básicos (Variables, Constantes, Declaraciones) main() { int integer1 = 2, integer2, sum; /* declaración */ integer2 = 20; sum = integer1 + integer2; printf( La suma de %d y %d es %d, integer1, integer2, sum ); return 0; /* indica que el programa terminó con éxito */ } 9 Escriba el título aquí 3

(Tipos de Datos Fundamentales) Los tipos base se dividen en tres grandes clases: Los enteros: int,, short int (16 bits), long int (32 bits), unsigned int. Números de coma flotante: float, double o long double Caracteres: char. 10 (Tipos de Datos Fundamentales) Tipos enteros signed: el bit más significativo se utiliza para representar el signo y el valor absoluto del número se codifica en los bits restantes (15 o 31). unsigned: sólo se representan números positivos o (nulos( nulos), utilizando todos los bits disponibles. 11 (Tipos de Datos Fundamentales) Tipos coma flotante La zona utilizada para el número n se descompone en tres partes: un bit reservado para el signo un espacio para el exponente: 8 bits en el float,, 11 bits en el double,, 14 en el long double. el resto para la mantisa: 23 bits en el float, 52 bits en el double,, 64 en el long double. 12 Escriba el título aquí 4

Ejemplos (declaraciones) int edad i, j = 3; signed long a,x; float z, temperatura; char c1, c2; 13 Conceptos BásicosB (Constantes) C manipula varias clases de valores enteros (29, 1234, etc), reales (3.14, 1.0e-5) que son ejemplos de constantes. a, b, etc, son constantes tipo caracter. Una secuencia de 0 o más caracteres encerrados entre comillas ( Yo estoy aquí ) es una constante de cadena o cadena literal. 14 Conceptos BásicosB (constantes) Las líneas: #define SIZE 10 #define PI 3.14159 definen constantes simbólicas. Una constante simbólica es un identificador que es reemplazado por el prepocesador, antes que el programa sea compilado. 15 Escriba el título aquí 5

Conceptos BásicosB (constantes) El uso de constantes hace el programa más comprensible. Si una constante se ha definido a través de #define y se usa en todo el programa, es mas fácil cambiar su valor posteriormente. Es posible declarar que el valor de una variable no cambie a lo largo de la ejecución de un programa: cons int n = 20; 16 Conceptos BásicosB (Constantes) Escritura de constantes enteras +533 48-273 Un 0 (cero) al comienzo de una constante entera indica que es un octal y 0x ó 0X que es hexadecimal. 31 decimal = 037 (octal) = 0x1f (hexa( hexa) 17 Conceptos BásicosB (Constantes) Escritura de constantes en coma flotante Decimal: 12.43-0.38 -.38 4. Exponencial: 4.24E4 48e13 542.7E-33-3e13 Por defecto, todas las constantes de coma flotante son creadas por el compilador del tipo double.. Sin embargo es posible imponerle el tipo: 1.25E03f (float( float) 1.0L (long double) 18 Escriba el título aquí 6

Conceptos BásicosB (Constantes) Escritura de constantes tipo caracter: Los caracteres imprimibles se escriben entre apóstrofes: strofes: a, y $. Los no imprimibles se imprimen usando el caracter \. Ejemplos: \n n LF (Line Feed) Salto de Línea \t t HT (Horizontal Tab) Tabulación Horizontal \v v VT (Vertical Tab) Tabulación Vertical \\ \ \f f FF (Form Feed) Salto de Página 19 Los operadores aritméticos son: +, -, *, /, % Son todos operadores binarios. p%q se define para p y q de cualquier signo como teniendo un valor absoluto igual a: p % q y el signo de p El cociente entre 2 enteros devuelve un entero, pero el cociente de dos números en coma flotante es un número en coma flotante. 5/2 = 2, pero 5./2. = 2.5 20 Reglas de precedencia (material de apoyo) Ejemplos m = a + b + c + d + e (álgebra( lgebra) 5 m = (a + b + c + e)/5 (C) Si se omiten los paréntesis, la expresión se calcula como: m = a + b + c + e/5 21 Escriba el título aquí 7

EXPRESIONES, INSTRUCCIONES Y ASIGNACION - Las expresiones son combinaciones de constantes, variables, operadores y llamadas a funciones. Ejm: a + b 3.0 * x - 9.66553 3+ sum(x,y) - La mayoría de las expresiones tienen un valor. - Si al final de una expresión se coloca un ; la expresión se convierte en una proposición: I = 7; z = 3+ sum(x,y); - 22 EXPRESIONES, INSTRUCCIONES Y ASIGNACION Las { } se emplean para agrupar declaraciones o proposiciones en una declaración compuesta o bloque. while (x == 1) {...} El operador de asignación es el signo = I = 7; la expresión como un todo toma el valor 7 El operador = se asocia de derecha a izquierda, de modo que: x = y = z = 0 se resuelve 23 x = (y = (z = 0)); int b = 5; a = b; if (a = 1) {... } int b = 5; a= b; if (a == 1) {... } 24 Escriba el título aquí 8

Operadores de Incremento y Decremento - Son operadores unarios. - Pueden aplicarse a variables, pero no a constantes o expresiones. - Pueden usarse como - prefijos: ++a (preincremento), --a (predecremento) - sufijos: a++ (postincremento), a-- (postdecremento). 25 int n = 5; x = n++; /* asigna 5 a x y el valor final de n = 6 */ x = ++n; /* asigna 6 a x n = 6 */ 26 Operadores RELACIONALES y IGUALDAD 27 de Los operadores relacionales permiten tomar decisiones en base a comparaciones. Son operadores binarios. Toman dos expresiones como operandos y producen el valor entero 0 ó 1. Escriba el título aquí 9

Los operadores relacionales tienen el mismo nivel de precedencia y se asocian de izquierda a derecha. Los operadores de igualdad tienen un nivel de precedencia menor que los operadores relacionales. También se asocian de izquierda a derecha. a < b == c < d se interpreta como: (a < b) == (c < d) 28 Precedencia de operadores aritméticos y relacionales (material de apoyo) x + y < a + 2 es equivalente a: (x+y) < (a + 2) 29 Operadores Lógicos && y!: cuando se aplican a las expresiones producen los valores enteros 0 ó 1. La negación lógica puede aplicarse a una expresión arbitraria. Si una expresión tiene el valor 0 o 0.0, su negación producirá el valor entero 1. Si la expresión tiene un valor distinto de 0 su 30 negación producirá el valor entero 0. Escriba el título aquí 10

Ejemplo!(2*(x+a)-3 - z ) Las tablas de la verdad para los operadores && y se pueden observar en el material de apoyo. En la evaluación de las expresiones que contienen && y, el proceso de la evaluación termina tan pronto se conoce el valor de la expresión 31 Ejemplo: while (a < b && c > 0) /* hacer algo */ Reglas de precedencia (MA). a < b && c < d equivale a (a < b) && (c < d) 32 Operador de asignación ampliada c = c + 3 puede abreviarse utilizando el operador de asignación ampliada, como: c += 3 En general, cualquier enunciado de la forma variable = variable operador (expresion) puede escribirse de la forma: variable operador = 33 expresion Escriba el título aquí 11

Operador de asignación ampliada k *= 3 + x Es equivalente a: k = k * (3 + x) y no a: k = k * 3 + x 34 Precedencia de Operadores a * b + c/d e 1. a*b -> > x 2. c/d -> > y 3. x + y -> > z 4. z - e 35 Escriba el título aquí 12