Vous êtes sur la page 1sur 28

Lenguaje C

Programacin I

MC Beatriz Beltrn Martnez

Historia
C es un lenguaje de programacin de propsito general, asociado a UNIX. Rene caractersticas de programacin intermedia entre los lenguajes ensambladores y los lenguajes de alto nivel; con gran podero basado en sus operaciones a nivel de bits y la mayora de los elementos de la programacin estructurada de los lenguajes de alto nivel. Las ideas principales de C provienen de BCPL, a travs del lenguaje B.
MC Beatriz Beltrn Martnez FCC - BUAP Primavera 2012 7

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 diseo incluy una sintaxis simplificada, la aritmtica de direcciones de memoria (permite al programador manipular bits, bytes y direcciones de memoria) y el concepto de apuntador.
MC Beatriz Beltrn Martnez FCC - BUAP Primavera 2012 8

Identificadores
Un identificador es una secuencia de letras y dgitos, donde el primer carcter debe de ser una letra o subguin. Letras maysculas son distintas de las minsculas. Los identificadores pueden tener cualquier longitud, pero solo los primeros 31 caracteres son significativos.

MC Beatriz Beltrn Martnez

FCC - BUAP

Primavera 2012

Palabras Reservadas

auto typedef register extern double

continue while static if float

else break union return int

for default main struct short

long enum case unsigned switch

sizeof goto do char void

MC Beatriz Beltrn Martnez

FCC - BUAP

Primavera 2012

10

Primer programa en C
/* Un primer programa en C */ #include <stdio.h> main() { printf(''Hola Puebla); }
Comentario Archivo de cabecera Funcin principal Sentencia

MC Beatriz Beltrn Martnez

FCC - BUAP

Primavera 2012

11

Estructura de un programa en C
#include #define Directivas del preprocesador Constantes Declaraciones globales Prototipos de funciones Variables Funcin principal main Declaraciones locales Sentencias } Tipo1 funcion1 () { }
MC Beatriz Beltrn Martnez

main() {

Definiciones de otras funciones

FCC - BUAP

Primavera 2012

12

Tipos de Datos
Los tipos bsicos del lenguaje son:
Carcter: Se declara con la palabra reservada char, ocupa un byte en memoria, que puede representar 256 smbolos 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 Beltrn Martnez FCC - BUAP Primavera 2012 13

Combinaciones
char unsigned char signed char int unsigned int signed int short int unsigned short int signed short int long int signed long int unsigned long int float double long double
MC Beatriz Beltrn Martnez

8 caracteres ASCII -128 a 127 8 caracteres ascii 0 a 255 8 caracteres ascii -128 a 127 16 bits -32768 a 32767 16 bits 0 a 65535 16 bits -32768 a 32767 16 bits -32768 a 32767 8 bits 0 a 255 0 a 65535

16 bits -32768 a 32767 32 bits -2147483648 a 2147483647 32 bits -2147483648 a 2147483647 32 bits 0 a 4294967295 32 bits 6 dgitos de precisin 3.4E-38 a 3.4E+38 64 bits 12 dgitos de precisin 1.7E-308 a 1.7E+308 64 bits 12 dgitos de precisin 1.7E-308 a 1.7E+308
FCC - BUAP Primavera 2012 14

Comentarios
Los comentarios en C son cadenas arbitrarias de smbolos colocados entre los delimitadores /* y */ Ejemplo: /* Comentarios */ /* Este es un comentario muy largo ya que ocupa * mas de un rengln */
MC Beatriz Beltrn Martnez FCC - BUAP Primavera 2012 15

Cadenas
Una cadena es una secuencia de caracteres entre comillas . Si el carcter () tiene que aparecer en una cadena, se precede por el carcter \. Ejemplos:
Una cadena de texto z x-x-0-.1-basura Una cadena con \ comillas a+b=suma; x=cos(y) /* cadena nula */
MC Beatriz Beltrn Martnez FCC - BUAP Primavera 2012 16

Constantes
Una constante (cualquier tipo de constante) en C se define de la siguiente manera (utilizando la palabra reservada define y anteponindole el smbolo #): #define ENTERO 10 #define REAL 1.09982 #define CAD Se define una constante cad #define CAR a

MC Beatriz Beltrn Martnez

FCC - BUAP

Primavera 2012

17

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 Beltrn Martnez FCC - BUAP Primavera 2012 18

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 Beltrn Martnez

FCC - BUAP

Primavera 2012

19

Expresiones
El signo de igualdad (=) es el operador bsico de asignacin en C. Un ejemplo de una expresin de asignacin es: i=7. A la variable i se le asigna el valor de 7 y la expresin como un todo toma ese valor. Cuando la expresin va seguida de un punto y coma (;) se convierte en una proposicin.

MC Beatriz Beltrn Martnez

FCC - BUAP

Primavera 2012

20

Expresiones
Se tienen operadores: Aritmticos (-(unario), *, /, %, +, -) Relacionales (>, >=, <, <=, ==, !=, !, &&, ||) De incremento y decremento (++, --) Lgicos (~, &, |, ^, <<, >>) Asignacin (=, +=, -=, *=, /=,%=,<<=, >>=, &=, |=, ^=) Cada operador guarda una precendencia.
MC Beatriz Beltrn Martnez FCC - BUAP Primavera 2012 21

Entrada y Salida bsica


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 Beltrn Martnez

FCC - BUAP

Primavera 2012

22

Ordenes de formato para imprimir


%c %d %i %e %f %g %o %s %u %x %% %p %n
MC Beatriz Beltrn Martnez

Un nico carcter Decimal Decimal Notacin cientfica Decimal en punto flotante Usa %e o %f, el ms corto Octal Cadena de caracteres Decimales sin signo Hexadecimales Imprime smbolo %% Muestra un puntero El argumento asociado es un puntero a entero al que se asigna el nmero de caracteres escritos hasta entonces FCC - BUAP Primavera 2012 23

Constantes de carcter con \


\b \n \a \ \x \t \r \\ \ \o Espacio atrs Salto de lnea Alerta Comillas dobles Constante hexadecimal Tabulacin horizontal Retorno de carro Barra invertida Comilla simple Constante octal

MC Beatriz Beltrn Martnez

FCC - BUAP

Primavera 2012

24

Ordenes de formato para leer


%c %d %i %e %f %h %o %s %x %p %n Leer un nico carcter Leer un entero decimal Leer un entero decimal Leer un nmero en punto flotante Leer un nmero en punto flotante Leer un entero corto Leer un nmero octal Leer una cadena de caracteres Leer un nmero hexadecimal Leer un puntero Recibe un valor entero igual al nmero de caracteres ledos hasta entonces
FCC - BUAP Primavera 2012 25

MC Beatriz Beltrn Martnez

Estructura de Secuencia
En C se tienen proposiciones: Una proposicin simple es una nica instruccin. Una proposicin compuesta son dos o ms instrucciones, en este caso es necesario que stas se encuentren entre corchetes { } Cada instruccin ser ejecutada una despus de la otra, a menos que se tenga una instruccin de decisin o iteracin. Cada instruccin termina con ;.
MC Beatriz Beltrn Martnez FCC - BUAP Primavera 2012 26

Estructuras de Decisin
Condicional simple if (condicin) Proposicin Condicin doble if (condicin) Proposicin verdadera else Proposicin falsa
MC Beatriz Beltrn Martnez FCC - BUAP Primavera 2012 27

Estructuras de Decisin
Expresin condicional ?: Expresin1 ? Expresin2 : Expresin3 Expresin1 es evaluada primero. Si es verdadero, entonces la Expresin2 es evaluada. De otra forma Expresin3 se evala. Ejemplo: z = (a > b) ? a : b; /* z = max (a, b) */ En C, una condicin verdadera, es distinta de cero, una condicin falsa es igual a cero.
MC Beatriz Beltrn Martnez FCC - BUAP Primavera 2012 28

Estructuras de Decisin
Else if
if (condicin) proposicin else if (condicin) proposicin else if (condicin) proposicin else proposicin
MC Beatriz Beltrn Martnez FCC - BUAP Primavera 2012 29

Estructuras de Decisin
Decisin mltiple
switch (expresin) { case exp_const1: proposicin1 break; case exp_const2: proposicin2 break; [default : proposicinn] }
MC Beatriz Beltrn Martnez FCC - BUAP Primavera 2012 30

Estructuras de Iteracin
Ciclo for
for (expresin1; expresin2; expresin3) for (inicializacin; cond_paro; dec/inc)

Que es equivalente a:
expresin1 while (expresin2) { proposicin expresin3 }
MC Beatriz Beltrn Martnez FCC - BUAP Primavera 2012 31

Estructuras de Iteracin
Ciclo while while (condicin) proposicin Alguna de las instrucciones dentro de la proposicin debe de modificar la condicin, de otra forma se tendra un ciclo infinito.
MC Beatriz Beltrn Martnez FCC - BUAP Primavera 2012 32

Estructuras de Iteracin
Ciclo do while do proposicin while (condicin); Alguna de las instrucciones dentro de la proposicin debe de modificar la condicin, de otra forma se tendra un ciclo infinito.
MC Beatriz Beltrn Martnez FCC - BUAP Primavera 2012 33

Vous aimerez peut-être aussi