Lenguaje C Programación I MC Beatriz Beltrán Martínez.

25
Lenguaje C Programación I MC Beatriz Beltrán Martínez

Transcript of Lenguaje C Programación I MC Beatriz Beltrán Martínez.

Page 1: Lenguaje C Programación I MC Beatriz Beltrán Martínez.

Lenguaje C

Programación I

MC Beatriz Beltrán Martínez

Page 2: Lenguaje C Programación I MC Beatriz Beltrán Martínez.

Historia

C es un lenguaje de programación de propósito general, asociado a UNIX.

Reúne características de programación intermedia entre los lenguajes ensambladores y los lenguajes de alto nivel; con gran poderío basado en sus operaciones a nivel de bits y la mayoría de los elementos de la programación estructurada de los lenguajes de alto nivel.

Las ideas principales de C provienen de BCPL, a través del lenguaje B.

MC Beatriz Beltrán Martínez FCC - BUAP Verano 2013 2

Page 3: Lenguaje C Programación I MC Beatriz Beltrán Martínez.

Historia

En 1971 Dennis Ritchie, con base en el lenguaje B desarrollo NB que luego cambio su nombre por C; en un principio sirvió para mejorar el sistema UNIX por lo que se le considera su lenguaje nativo.

Su diseño incluyó una sintaxis simplificada, la aritmética de direcciones de memoria (permite al programador manipular bits, bytes y direcciones de memoria) y el concepto de apuntador.

MC Beatriz Beltrán Martínez FCC - BUAP Verano 2013 3

Page 4: Lenguaje C Programación I MC Beatriz Beltrán Martínez.

Identificadores

Un identificador es una secuencia de letras y dígitos, donde el primer carácter debe de ser una letra o subguión.

Letras mayúsculas son distintas de las minúsculas.

Los identificadores pueden tener cualquier longitud, pero solo los primeros 31 caracteres son significativos.

MC Beatriz Beltrán Martínez FCC - BUAP Verano 2013 4

Page 5: Lenguaje C Programación I MC Beatriz Beltrán Martínez.

Palabras Reservadas

auto continue else for long sizeof

typedef while break default enum goto

register static union main case do

extern if return struct unsigned char

double float int short switch void

MC Beatriz Beltrán Martínez FCC - BUAP Verano 2013 5

Page 6: Lenguaje C Programación I MC Beatriz Beltrán Martínez.

Primer programa en C

/* Un primer programa en C */

#include <stdio.h>

main()

{

printf(''Hola Puebla”);

}

MC Beatriz Beltrán Martínez FCC - BUAP Verano 2013 6

Comentario

Archivo de cabecera

Función principal

Sentencia

Page 7: Lenguaje C Programación I MC Beatriz Beltrán Martínez.

Estructura de un programa en C

#include… Directivas del preprocesador#define… Constantes

Declaraciones globalesPrototipos de funcionesVariables

main() Función principal main{

Declaraciones localesSentencias

}Tipo1 funcion1 (…) Definiciones de otras funciones{…}

MC Beatriz Beltrán Martínez FCC - BUAP Verano 2013 7

Page 8: Lenguaje C Programación I MC Beatriz Beltrán Martínez.

Tipos de Datos

Los tipos básicos del lenguaje son:Carácter: Se declara con la palabra reservada

char, ocupa un byte en memoria, que puede representar 256 símbolos posibles.

Real: Se declara con la palabra reservada double o float, ocupa 8 o 4 bytes de memoria, respectivamente.

Entero: Se declara con la palabra reservada int y short, y ocupa 2 bytes de memoria. En algunos compiladores ocupa 4 bytes de memoria.

MC Beatriz Beltrán Martínez FCC - BUAP Verano 2013 8

Page 9: Lenguaje C Programación I MC Beatriz Beltrán Martínez.

MC Beatriz Beltrán Martínez FCC - BUAP Verano 2013 9

Combinaciones

char 8 caracteres ASCII -128 a 127

unsigned char 8 caracteres ascii 0 a 255

signed char 8 caracteres ascii -128 a 127

int 16 bits -32768 a 32767

unsigned int 16 bits 0 a 65535

signed int 16 bits -32768 a 32767

short int 16 bits -32768 a 32767

unsigned short int 8 bits 0 a 255 0 a 65535

signed short int 16 bits -32768 a 32767

long int 32 bits -2147483648 a 2147483647

signed long int 32 bits -2147483648 a 2147483647

unsigned long int 32 bits 0 a 4294967295

float 32 bits 6 dígitos de precisión 3.4E-38 a 3.4E+38

double 64 bits 12 dígitos de precisión 1.7E-308 a 1.7E+308

long double 64 bits 12 dígitos de precisión 1.7E-308 a 1.7E+308

Page 10: Lenguaje C Programación I MC Beatriz Beltrán Martínez.

Comentarios

Los comentarios en C son cadenas arbitrarias de símbolos colocados entre los delimitadores /* y */

Ejemplo:

/* Comentarios */

/* Este es un comentario

muy largo ya que ocupa *

mas de un renglón

*/

MC Beatriz Beltrán Martínez FCC - BUAP Verano 2013 10

Page 11: Lenguaje C Programación I MC Beatriz Beltrán Martínez.

Cadenas

Una cadena es una secuencia de caracteres entre comillas “”. Si el carácter (“) tiene que aparecer en una cadena, se precede por el carácter \.

Ejemplos:

MC Beatriz Beltrán Martínez FCC - BUAP Verano 2013 11

“Una cadena de texto” “ ”

“z” “x-x-0-.1-basura”

“Una cadena con \” comillas” “a+b=suma; x=cos(y)”

“” /* cadena nula */

Page 12: Lenguaje C Programación I MC Beatriz Beltrán Martínez.

Constantes

Una constante (cualquier tipo de constante) en C se define de la siguiente manera (utilizando la palabra reservada define y anteponiéndole el símbolo #):

#define ENTERO 10

#define REAL 1.09982

#define CAD “Se define una constante cad “

#define CAR ‘a’

MC Beatriz Beltrán Martínez FCC - BUAP Verano 2013 12

Page 13: Lenguaje C Programación I MC Beatriz Beltrán Martínez.

Variables

Las variables y las constantes son los objetos que manipulan un programa.

En general se deben de declarar las variables antes de poderlas usar.

Por ejemplo:

int i, j, k=0;

float largo, ancho;

char c;

MC Beatriz Beltrán Martínez FCC - BUAP Verano 2013 13

Page 14: Lenguaje C Programación I MC Beatriz Beltrán Martínez.

Expresiones

Las expresiones son combinaciones de constantes, variables, operandos y llamados a funciones. Algunos ejemplos de expresiones son:

a+b*3.0*x-9.3242

3.77+sen(3.14*98.7)

tan(1.8)

MC Beatriz Beltrán Martínez FCC - BUAP Verano 2013 14

Page 15: Lenguaje C Programación I MC Beatriz Beltrán Martínez.

Expresiones

El signo de igualdad (=) es el operador básico de asignación en C.

Un ejemplo de una “expresión” de asignación es: i=7. A la variable i se le asigna el valor de 7 y la expresión como un todo toma ese valor. Cuando la expresión va seguida de un punto y coma (;) se convierte en una proposición.

MC Beatriz Beltrán Martínez FCC - BUAP Verano 2013 15

Page 16: Lenguaje C Programación I MC Beatriz Beltrán Martínez.

Expresiones

Se tienen operadores:Aritméticos (-(unario), *, /, %, +, -)Relacionales (>, >=, <, <=, ==, !=, !, &&, ||)De incremento y decremento (++, --)Lógicos (~, &, |, ^, <<, >>)Asignación (=, +=, -=, *=, /=,%=,<<=, >>=, &=,

|=, ^=)Cada operador guarda una precendencia.

MC Beatriz Beltrán Martínez FCC - BUAP Verano 2013 16

Page 17: Lenguaje C Programación I MC Beatriz Beltrán Martínez.

Entrada y Salida básica

printf, scanf, getchar, puts, putc, fprintf, fscanf

Ejemplo:

printf(“cadena de control”, lista de argumentos);

printf("hola puebla son las %d\n", tiempo);

% tipo_de_dato (c, d, i, o, x, f, s)

MC Beatriz Beltrán Martínez FCC - BUAP Verano 2013 17

Page 18: Lenguaje C Programación I MC Beatriz Beltrán Martínez.

Estructura de Secuencia

En C se tienen proposiciones: Una proposición simple es una única

instrucción.Una proposición compuesta son dos o más

instrucciones, en este caso es necesario que éstas se encuentren entre corchetes «{ … }»

Cada instrucción será ejecutada una después de la otra, a menos que se tenga una instrucción de decisión o iteración.

Cada instrucción termina con ‹;›.

MC Beatriz Beltrán Martínez FCC - BUAP Verano 2013 18

Page 19: Lenguaje C Programación I MC Beatriz Beltrán Martínez.

Estructuras de Decisión

Condicional simple

if (condición)

ProposiciónCondición doble

if (condición)

Proposición verdadera

else

Proposición falsa

MC Beatriz Beltrán Martínez FCC - BUAP Verano 2013 19

Page 20: Lenguaje C Programación I MC Beatriz Beltrán Martínez.

Estructuras de Decisión

Expresión condicional ‹?›:

Expresión1 ? Expresión2 : Expresión3

Expresión1 es evaluada primero. Si es verdadero, entonces la Expresión2 es evaluada. De otra forma Expresión3 se evalúa.

Ejemplo:

z = (a > b) ? a : b; /* z = max (a, b) */En C, una condición verdadera, es distinta de

cero, una condición falsa es igual a cero.MC Beatriz Beltrán Martínez FCC - BUAP Verano 2013 20

Page 21: Lenguaje C Programación I MC Beatriz Beltrán Martínez.

Estructuras de Decisión

Else – if if (condición) proposiciónelse if (condición) proposiciónelse if (condición) proposición…else proposición

MC Beatriz Beltrán Martínez FCC - BUAP Verano 2013 21

Page 22: Lenguaje C Programación I MC Beatriz Beltrán Martínez.

Estructuras de Decisión

Decisión múltipleswitch (expresión) {

case exp_const1: proposición1

break;

case exp_const2: proposición2

break; …

[default : proposiciónn] }

MC Beatriz Beltrán Martínez FCC - BUAP Verano 2013 22

Page 23: Lenguaje C Programación I MC Beatriz Beltrán Martínez.

Estructuras de Iteración

Ciclo forfor (expresión1; expresión2; expresión3)for (inicialización; cond_paro; dec/inc)

Que es equivalente a:expresión1

while (expresión2) { proposición

expresión3

}MC Beatriz Beltrán Martínez FCC - BUAP Verano 2013 23

Page 24: Lenguaje C Programación I MC Beatriz Beltrán Martínez.

Estructuras de Iteración

Ciclo while

while (condición)

proposición

Alguna de las instrucciones dentro de la proposición debe de modificar la condición, de otra forma se tendría un ciclo infinito.

MC Beatriz Beltrán Martínez FCC - BUAP Verano 2013 24

Page 25: Lenguaje C Programación I MC Beatriz Beltrán Martínez.

Estructuras de Iteración

Ciclo do – while

do

proposición

while (condición);

Alguna de las instrucciones dentro de la proposición debe de modificar la condición, de otra forma se tendría un ciclo infinito.

MC Beatriz Beltrán Martínez FCC - BUAP Verano 2013 25