HISTORIA DEL LENGUAJE C by pharmphresh36

VIEWS: 0 PAGES: 8

									                          HISTORIA DEL LENGUAJE C.

El lenguaje C es un tipo de programa con el cual podemos realizar distintos tipos de
operaciones, con las cuales se facilita el manejo y realización de implementaciones.
A continuación presentaré una pequeña historia de lenguaje C.

El lenguaje C nació en los Laboratorios Bell de AT and T y ha sido asociado con el
sistema operativo UNIX, ya que su desarrollo se realizó en este sistema y debido a que
tanto UNIX como el propio compilador C y la casi totalidad de los programas y
herramientas de UNIX, fueron escritos en C. Su eficacia y su claridad han hecho que el
lenguaje ensamblador apenas haya sido utilizado en UNIX. El lenguaje C fue creado
entre los años 1970 y 1972 por Brian Kernighan y Dennos Ritchie para escribir el
código del sistema operativo UNIX. Fue uno de los lenguajes de programación mas
aceptados por los programadores, por que hace una conjugación en lenguaje de alto
nivel y lenguaje máquina. El lenguaje C es el resultado de un proceso de desarrollo que
inició con un lenguaje denominado BCPL. Este influenció a otro llamado B (inventado
por Ken Thompson). En los años 70; éste lenguaje llevó a la aparición del C. Los tipos
básicos de datos eran "CHAR" (carácter), "INT" (enteros), "FLOAT" (Reales en simple
presición), y "DOUBLE" (Reales en doble Presición). Posteriormente se añadieron los
tipos "SHORT" (Enteros de longitud<=longitud de un int), "LONG" (Enteros de
longitud >= longitud de un entero), "UNSIGNED" (Enteros sin signo), y
"ENUMERACIONES". Los tipos estructurados básicos de C son las estructuras, las
uniónes, y los arrays. Estos permiten la definición y declaración de tipos de mayor
complejidad. En 1978 Kernighan y Ritchie publican su descripción en el libro "The C
Programming Language", versión que es llamada hoy en día 'K&R C'. A mediados de
los ochenta ya había en el mercado numerosos compiladores C, y muchas aplicaciones
habían sido rescritas a él para aprovechar sus ventajas.
Durante este periodo fabricantes introducen mejoras en el lenguaje, las cuales son
recogidas por un comité de estandarización ANSI y establecen las especificaciones de lo
que se conoce hoy en día como 'ANSI C'.
El C se encuentra en la jerarquía de lenguajes en un nivel intermedio entre Pascal y el
Ensamblador. Pretende ser un lenguaje de alto nivel con la versatilidad del bajo nivel.
Con la popularidad de las microcomputadoras muchas compañías comenzaron
implementar su propio C por lo cual surgieron discusiones entre sí. Por esta razón
ANSI (American National Standars Institute, por sus siglas en inglés), estableció un
comité en 1983 para crear una definición no buena del lenguaje C e independiente de la
máquina que pudiera utilizarse en todos los tipos de C. Algunos de las C existentes son:

- Quick C
- C++
- Turbo C
- Turbo C ++
- Borland C
- Borland C++
ESTRUCTURA DE UN PROGRAMA

/*Comentario de varias líneas/

//Comentario de una línea

//Librerías que se incluyen en el programa
#include<nombre_de_libreria>

//Definición de constantes simbólicas
#define K 1

/*Declaración de variables publicas, estructuras, punteros, tipos de datos de
usuario*/
int a=10;
float c;
char nom [30];
int *p ;

/*Declaración de funciones prototipo*/

int validar_datos (int valor);
float calcular_resultado (float);
char conversación (char);

/*Función principal-Inicio del programa*/
void main ()
{
//Declaración y definición de variables locales
        instrucción 1;
        :
        validar_datos(a);
        :
        instrucción_n;
}
int validar_datos (int valor)
        {
         instruccion1;
         :
         instrucción_n;
         }


CONSTANTES Y DECLARACION

 Constante:
Es un valor invariable, no cambia durante el desarrollo del programa. Para expresar una
constante se debe indicar el nombre y su valor.

 Declaración de Constantes:
A la declaración de un elemento, se puede anteponer el calificador const con el fin de
expresar que dicho elemento es una constante.

Ejemplo const int M=127;


VARIABLES Y DECLARACION
Es un elemento cuyo valor puede cambiar durante el desarrollo del algoritmo o
programa posee dos atributos: un nombre para identificarla y un tipo que describe el
conjunto de valores que puede tomar.
Para declarar variables utilizar las sintaxis:
[clase] tipo de dato identificador1, identificador2…;

TIPOS DE DATOS

Existen tres tipos de datos básicos en programación estructurada:

    Alfanuméricos

          Carácter

    Numéricos

          Enteros
          Números de coma flotante

    Lógicos

      Boolean

El conjunto de valores varía de acuerdo al tipo de procesador y a la implementación
del compilador a usarse.

-Tipo de dato char (carácter)
Se denomina de esta manera a cualquier carácter que se encuentre encerrado entre
comillas.
Ejemplo:
   ‘a’, ‘1’, ‘&’

-Tipo de dato int (entero)
Un dato de tipo int (entero) corresponde a un valor entero, los datos que se encuentran
definidos como tipo int solamente determinan un rango entre -32768 a 32767
Existen otros tipos de enteros, así tenemos:
short int (Entero corto)
long int (Entero largo)
unsigned int (Entero sin signo)

Short int (Entero Corto)
Utiliza 16 bits, esta denominado de acuerdo a la arquitectura de la maquina, su rango es
de -32768 a 32767.

Long int (Entero de precisión largo)
Utiliza 32 bits de acuerdo a la arquitectura de la maquina, con maquina de 32 bits se
define un rango de -2147483648 a 3247483647.

-Tipo de dato float
Comprende a los valores reales, números que tienen punto decimal. Su rango de valores
esta comprendido en:
-3.402823E+38 a -1.175494E-38 para números negativos.
1.175494E-38 a 3.402823E+38 para números positivos.

-Tipo de dato doublé
Es un numero real concón mayor precisión que el tipo de dato float, posee
aproximadamente 12 dígitos de precisión en las maquinas de 64 bits.
OPERADORES ARITMÉTICOS
Los operadores aritméticos nos permiten, básicamente, hacer cualquier operación
aritmética, que necesitemos (ejemplo: suma, resta, multiplicación, etc). En la siguiente
tabla se muestran los operadores de los que disponemos en C y su función asociada.
Tabla: Operadores aritméticos Operador Acción Ejemplo
 Resta x = 5 3; // x vale 2
 Suma x = 2 3; // x vale 5
 Multiplicación x = 2 3; // x vale 6
 División x = 6 2; // x vale 3
 Módulo x = 5 % 2; // x vale 1
 Decremento x = 1; x; // x vale 0
 Incremento x = 1; x; // x vale 2

OPERADORES RELACIONALES

Los operadores relacionales, también denominados operadores binarios lógicos y de
comparación, se utilizan para comprobar la veracidad o falsedad de determinadas
propuestas de relación (en realidad se trata respuestas a preguntas). Las expresiones que
los contienen se denominan expresiones relacionales. Aceptan diversos tipos de
argumentos, y el resultado, que es la respuesta a la pregunta, es siempre del tipo
cierto/falso, es decir, producen un resultado booleano ( 3.2.1b)

Si la propuesta es cierta, el resultado es true (un valor distinto de cero), si es falsa false
(cero). C++ dispone de los siguientes:

<    Menor que

>    Mayor que

<= Menor o igual que
>= Mayor o igual que
== Igual que (identidad)

!=   Desigual que (desigualdad)+

OPERADORES LÓGICOS BOOLEANOS

La mayoría de los motores de búsqueda, y también los directorios que permiten buscar
en su propia base de datos, permiten la utilización de operadores lógicos booleanos que
establecen la relación entre los términos de búsqueda. Estos operadores tomado del
álgebra del matemático inglés George Boole, permiten combinar los términos de
búsqueda de acuerdo con nuestras necesidades.

Los operadores utilizados son:

OR | |
AND &&
NOT 1
TABLA DE VERDAD


p                 q                 P &&q             P||q              |q
V                 V                 V                 V                 F
V                 F                 F                 V                 V
F                 V                 F                 V                 F
F                 F                 F                 F                 V


FUNCIONES DE ENTRADA Y SALIDA

 Los cálculos que realizan las computadoras requieren la entrada de los datos necesarios
para ejecutar las operaciones que posteriormente se convertirán en resultados, es decir,
salida. Las operaciones de entrada permite leer determinados valores y asignarlos a
determinadas variables, esto se conoce como operación de lectura.
Las funciones de entrada y salidas mas utilizadas son las siguientes:

Funciones de entrada:
Scanf
Getch
Gets
Cin

Funciones de salidas
Printf
Putchar
Cout

                            FUNCIONES DE ENTRADA


 Funcion scanf: esta función se utiliza para leer datos desde un dispositivos de entrada
de datos externo.
    La funcio scanf() lee los datos y los almacena en las variables indicadas de acuerdo
    a un formato.
    Ejemplo:
    #include<stdio.h>
    Void main()
    {
    Int a;
    Printf(“ingrese un números”);
    Scanf(“%d”,a);
    Printf(“el numero es..%3d”,a);
    }
Funcion getch: permite la captura de un carácter digitado desde teclado.

   #include<stdio.h>
   Main()
   {
      Char b,d;
      Printf(“digite un carácter”);
      B=getch();
      Printf(“\ncaracter digitado”);
     Putchar(b);
   }

   Funcion gets: permite leer una cadena de caracteres desde la erntrada estandar.
   Sintaxis:
   Gets(nombre_variable);

   La variable debe ser declarada como una cadena de caracteres.
   /*codigo saludo*/
   #include<stdio.h>
   #include<stdlib.h>
   Void main()
   {
   Char mensaje1[25]= “bienvenidos a C”;
   Char mensaje2[35]=”te alegraras de haberme conocido”;
   Char nombre[50];
   System(“cls”);
   Printf(“¿Cuál es tu nombre?”);
   Gets (nombre);
   Printf(“\n%s%s\n%s\n”,mensaje1,nombre,mensaje2);
   }
                              FUNCIONES DE SALIDA

   Función printf: la función printf() en lenguaje c permite escribir y efectuar salidas
   por pantallas
   Sintaxis:
   Printf(“cadena de control”,lista de argumentos”);
   Eje: printf(“hola%c%dgerardo”,´C´,10);
    En la pantalla aparecerá
   Hola C 10 Gerardo

   Funcion putchar: permite mostrar en pantalla un carácter que contiene una
   localidad de memoria.

   #include<stdio.h>
   Main()
   {
   Int a,b;
   A=`*`;
   B=`#`;
   Putchar(a);
   Putchar(b);
   Return0;
   }

								
To top