introducción al leguaje c

Páginas: 17 (4189 palabras) Publicado: 19 de enero de 2015
Introducción al lenguaje C
Marta Zorrilla
Universidad de Cantabria

1

Marta Zorrilla – Universidad de Cantabria

Introducción al C
„

Objetivos:
„

„

„

Presentar la historia del lenguaje C y sus
características principales.
Presentar la estructura de un programa en C
mediante ejemplos sencillos.

Contenidos:
„
„
„

1. La historia del C.
2. Características.
3. Miprimer programa en C.
2

Marta Zorrilla – Universidad de Cantabria

Historia del C
„

„

„

„
„
„
„

„

Muchas ideas provienen de BCPL (Martin Richards, 1967) y de B (Ken
Thompson, 1970).
C fue diseñado originalmente en 1972 para el SO UNIX en el DEC PDP-11 por
Dennis Ritchie en los Laboratorios Bell.
Primer Libro de referencia de C: The C Programming Language (1978) deBrian Kernighan y Dennis Ritchie.
En los 80, gran parte de la programación se realiza en C.
En 1983 aparece C++ (orientado a objetos).
En 1989 aparece el estándar ANSI C.
En 1990 aparece el estándar ISO C (actual estándar de C). WG14 se
convierte en el comité oficial del estándar ISO C.
En década de los 90, WG14 trabaja en el estándar C9X/C99 que resuelve
problemas de fiabilidad del ANSI C,amplia su funcionalidad con nuevos tipos
de dato, funciones matemáticas, arrays irrestringidos, etc.
3

Marta Zorrilla – Universidad de Cantabria

Características del C
„

„

„

„
„

„

Lenguaje de programación de propósito general, muy adecuado para
programación de sistemas (unix fue escrito en C).
Lenguaje relativamente pequeño: solo ofrece sentencias de control
sencillas yfunciones.
La E/S no forma parte del lenguaje, sino que se proporciona a través
de una biblioteca de funciones.
Permite la agrupación de instrucciones. Programación estructurada.
Permite la separación de un programa en módulos que admiten
compilación independiente. Diseño modular.
Programas portables.

4

Marta Zorrilla – Universidad de Cantabria

Inconvenientes del C
„
„
„

„No es un lenguaje fuertemente tipado.
Es bastante permisivo con la conversión de datos.
Sin una programación metódica puede ser propenso a errores
difíciles de encontrar.
La versatilidad de C permite crear programas difíciles de leer.
#define _ -F ");
scanf("%s", cajas[registro].pieza);
/* Leer el número de piezas. */
printf("Numero de piezas => ");
scanf("%d",&cajas[registro].cantidad);
/* Leer el precio de cada pieza. */
printf("Precio de cada pieza => ");
scanf("%f", &cajas[registro].precio_unitario);
/* Indicar que el registro tiene datos, V */
cajas[registro].existe = 'V';
registro ++;
} while (registro < NUMCAJAS);

135

Marta Zorrilla – Universidad de Cantabria

Cont.
/* Imprimir la información. */
for(registro = 0; registro < NUMCAJAS; registro++)
{if(cajas[registro].existe == 'V')
{
printf("La caja %d contiene:\n", registro + 1);
printf("Pieza => %s\n", cajas[registro].pieza);
printf("Cantidad => %d\n",
cajas[registro].cantidad);
printf("Precio unitario => $%f\n",
cajas[registro].precio_unitario);
}
} /* Fin for. */
} /*fin main*/
136

Marta Zorrilla – Universidad de Cantabria

Paso de estructuras a funciones
„
„

„

Unafunción puede devolver una estructura.
Se pueden pasar miembros individuales y estructuras
completas a una función. Si la estructura es grande, el
tiempo para copiar un estructura (paso por valor) es
prohibitivo, por eso se aconseja pasarlo por referencia.
Paso de miembros individuales
struct punto
{
float x;
float y;
};

void imprime_x (float x)
{
printf ("el valor de x %f", x);
}/*llamada a función*/
imprime_x (p1.x);

137

Marta Zorrilla – Universidad de Cantabria

Paso de estructuras a funciones por
valor
Ej.: leer y escribir una fecha.

struct fecha leer_fecha(void)
{
struct fecha f;
printf("Dia: ");
scanf("%d", &(f.dia));
printf("Mes: ");
scanf("%d", &(f.mes));
printf("Anno: ");
scanf("%d", &(f.anno));
return(f);

#include
struct fecha
{...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Leguaje c
  • Datos del leguaje c
  • Introduccion a leguaje ensablador
  • introduccion c ++
  • Introducción C
  • Introduccion a c++
  • Introduccion a c++
  • introduccion a-c

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS