[Materia] Lenguaje C - Introducción

Discussion in 'Programación & Programación Web' started by BlacK, Jul 28, 2009.

  1. BlacK

    BlacK Invitado

    Introducción al lenguaje:

    ¿Qué es el Lenguaje C?

    El lenguaje C fue diseñado por Dennis Ritchie, de los Laboratorios
    Bell, en el año 1972.
    Se diseñó para ser el lenguaje de los sistemas operativos UNIX.
    Se creó para superar las limitaciones del lenguaje B, utilizado por
    Ken Thompson para producir la versión original de UNIX en 1970.
    Su definición apareció en 1978, en el libro "The C programming
    Language” escrito por Brian W Kernighan y Dennis M Ritchie Language”, W. M. Ritchie.
    En 1983, se publicó otro estándar, denominado "The C
    Programming Language-Reference Manual” (Lab. Bell) escrito por
    Dennis M. Ritchie.


    Es un lenguaje de nivel medio. Combina elementos de lenguajes de
    alto nivel (tipos, bloques, ...) con la funcionalidad de los
    ensambladores.
    Permite manejar los elementos típicos de la programación de
    sistemas: bits, bytes, direcciones de memoria.
    Otra característica importante, es que no hace comprobaciones de
    error en tiempo de ejecución (desbordamiento de arreglos, ...).
    C es un lenguaje semi-estructurado. No es completamente
    estructurado en bloques porque no permite declarar procedimientos
    o funciones dentro de otros procedimientos o funciones.

    Caractéristicas:

    C tiene algunas características propias de los lenguajes estructurados:

    Posee dos formas de estructuración del código:
    • Con funciones independientes.
    • Con bloques.
    Dispone de las sentencias típicas para construir estructuras de
    control:
    • While (mientras).
    • do-while (hacer – mientras).
    • For (para).

    C es un lenguaje para programadores. Ya que, está influenciado, diseñado y probado por programadores profesionales.

    C Proporciona:
    • Una visión próxima a la máquina.
    • Pocas restricciones.
    • Conjunto reducido de palabras clave.
    • Estructuración en bloques bloques.
    • Funciones independientes.
    • Recursos para el encapsulamiento de datos.


    Estructura Básica:


    /* forma básica de un programa en C */

    #include <stdio.h> //Liberia del sistema

    /* definición de constantes con #define */
    /* Declaración de variables globales, funciones y estructuras */



    void main() //Menu Principal
    {
    printf(“Hola PortalNet”); //Cuerpo del Programa
    }

    // Declaración de funciones y procedimiento si hay
    main funcion()
    {
    cuerpo;
    return();
    }


    Variables

    Todas las variables deben ser declaradas antes de ser usadas, indicando el
    tipo de dato al que pertenecen.


    tipo de dato nombre_variable;


    Los tipos de datos básicos tiene varios modificadores que les preceden. Se
    usa un modificador para alterar el significado de un tipo base para que
    j l di id d it i L difi d encaje con las diversas necesidades o situaciones. Los modificadores son:signed, unsigned, long y short.


    Signed, unsigned, long y short pueden ser usados con los tipos char e int.
    Aunque es permitido el uso de signed en enteros, es redundante porque la
    declaración de entero por defecto asume un número con signo.

    Ejemplos: j p
    • int i, j, k;
    • float x,y,z;
    • char ch;


    La inicialización de las variables se realiza de la siguiente manera:

    nombre_variable
    = dato;

    Ejemplo:

    x = 1;
    f= 2,23;
    ch = ‘H’;

    Se pueden abreviar la declaración e inicialización de la siguiente forma:

    int x = 0; char ch = ‘W’;


    Lectura y escritura de variables

    Para la lectura y escritura se utilizan las funciones de la librería <stdio.h> : printf() -> escritura y scanf ()
    -> lectura.

    En C la lectura y escritura debe ser formateada. El carácter
    especial para formatear es el % seguido de un carácter que
    identifica el formato, además dentro de la función la expresión de
    formato debe estar entre “ ”:

    %c carácter.
    %d entero.
    %f flotantes
    %s cadena de caracteres.

    Ejemplo:

    printf(“%d %f %c”, ch,i,x); scanf(“("%c %d %f %s",&ch, &i, &x, cad);


    Operadores de C

    Los Operadores en C son los mismos que en otros lenguajes:

    Suma: +
    Resta: -
    Multiplicacion: *
    División: /
    Módulo (Enteros): %

    Además existe el Incremento ++ y Decremento -- unario.

    Ej: z++ z = z+1

    Los operadores ++ y -- pueden ser prefijos o postfijos. Cuando son prefijos,
    el valor es calculado antes de que la expresión sea evaluada, y cuando es
    postfijo el valor es calculado después que la expresión es evaluada.

    Operadores de Comparación.

    == Igual
    != Distinto
    < Menor que
    > Mayor que
    <= Menor que o igual a
    >= Mayor que o igual a

    Operadores Lógicos.

    && Y lógico
    || O lógico
    ! Negación

    Orden de Precedencia.

    () [ ] Izquierda a Derecha
    ! ++ -- Derecha a Izquierda
    * / % Izquierda a Derecha
    + Izquierda a Derecha
    - < <= > >= Izquierda a Derecha
    == != Izquierda a Derecha
    ^ && || Izquierda a Derecha
    = += -= *= Derecha a Izquierda
    , Izquierda a Derecha


    Estructuras de Programación

    Estructuras de Control.

    La Sentencia If
    Para condiciones lógicas

    If
    (Condicion)
    {

    cuerpo;

    }

    o


    If
    (Condicion)
    {

    cuerpo;

    }
    else //Si no
    {

    cuerpo;

    }
    Sentencia Switch:
    Para Bifurcaciones Múltiples

    switch (variable)
    {
    case constante1: expr1;
    break;
    case constante2: expr2;
    break;
    default: expr;
    break;
    }


    Sentencia while
    Bucle mientras la condición sea verdadera

    While (condición)
    {
    expr1;
    expr2;
    }


    Sentencia do while
    A diferencia del While, este bucle realiza la comparación al final, por lo tanto las expresiones se ejecutan a lo menos 1 vez.

    do
    {

    expr1;
    expr2;
    ....

    }while(Condicion);


    Sentencia for

    for(expresion1 ; expresion2 ; expresion3)
    {

    cuerpo;

    }

    expresion1: Para la asignación de valores a variables.
    expresion2: Para el manejo de la condición que permite que bucle se ejecute.
    expresion3: se utiliza para el incremento de las variables contadoras.

    Ejemplo:

    Ej.:

    int res = 0; //Se declara e inicializa una variable entera en 0
    int i; //Se declara la variable a utilizar en el for

    for (i=0;i<10;i++) // Se inicializa la variable i en 0, hasta que
    { sea menor que 10, y por ultimo se incrementa en 1.
    res = res + i; //Se le asigna el res mas la i
    }



    Continuará..
     
  2. Javiz

    Javiz Invitado

    Mish, muy buena info wn, me hubiese servido demasiado hace 3 meses :XD:
     
  3. Ogroberto

    Ogroberto Usuario Casual nvl. 2
    687/812

    Joined:
    Sep 11, 2008
    Messages:
    5,396
    Likes Received:
    7
    Oka, que continúe nomás men...

    Se agradece.
     
  4. nosferatu18

    nosferatu18 Usuario Nuevo nvl. 1
    16/41

    Joined:
    Sep 14, 2008
    Messages:
    132
    Likes Received:
    0
    muuuh weno :D
    ojala continues.!
    ya se programar en java (no soy experto) y ahora queria aprender a programar en c :D
    igual es casi la misma wea, pero tienen sus cosillas distintas asi q a aprender :D
    thanks.! compa
    saludos.!
     
  5. Andres_frc

    Andres_frc Usuario Avanzado nvl. 4 ★ ★
    212/244

    Joined:
    Oct 12, 2007
    Messages:
    10,563
    Likes Received:
    104
    ahora poni este aporte, ya me pitie programacion....

    kjakjakjakjakjajk


    Saludos
     
  6. baraya90

    baraya90 Usuario Casual nvl. 2
    47/82

    Joined:
    Feb 14, 2008
    Messages:
    3,512
    Likes Received:
    42
    se agradece
     
  7. OKKULTO

    OKKULTO Invitado
    187/244

    Joined:
    Aug 12, 2008
    Messages:
    32,152
    Likes Received:
    3
    buen aporte ,porfin entendi xD
     
  8. Maathy!

    Maathy! Usuario Maestro nvl. 6 ★ ★ ★ ★
    687/812

    Joined:
    Apr 25, 2009
    Messages:
    57,601
    Likes Received:
    2
    gracias men :)