0% encontró este documento útil (0 votos)
143 vistas

Introducción Dev.c++

El documento describe el origen y características del lenguaje de programación C. El lenguaje C fue creado por Dennis Ritchie en 1972 para el sistema operativo UNIX. Deriva de los lenguajes B y BCPL. El estándar actual es el ANSI C. C es un lenguaje de propósito general, de medio nivel y portátil que permite programar de forma eficiente. Los pasos para ejecutar un programa en C son: escribirlo, compilarlo, enlazarlo y ejecutarlo.

Cargado por

veromejhdo
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
143 vistas

Introducción Dev.c++

El documento describe el origen y características del lenguaje de programación C. El lenguaje C fue creado por Dennis Ritchie en 1972 para el sistema operativo UNIX. Deriva de los lenguajes B y BCPL. El estándar actual es el ANSI C. C es un lenguaje de propósito general, de medio nivel y portátil que permite programar de forma eficiente. Los pasos para ejecutar un programa en C son: escribirlo, compilarlo, enlazarlo y ejecutarlo.

Cargado por

veromejhdo
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 13

INTRODUCCION

El lenguaje C fue inventado por Dennis Ritchie en 1972 cuando trabajaba,


junto con Ken Thompson, en el diseño del sistema operativo UNIX. El lenguaje C
deriva del lenguaje B de Thompson, el cual, a su vez, deriva del lenguaje BCPL
desarrollado por Martin Richards. Durante muchos años el estándar de C fue la
versión proporcionada con el sistema operativo UNIX versión 5. Pero pronto
empezaron a surgir muchas implementaciones del C a raíz de la popularidad
creciente de los microordenadores. Por este motivo, se hizo necesario definir un C
estándar que está representado hoy por el ANSI C.

Características del lenguaje C

Algunas características del lenguaje C son las siguientes:

- Es un lenguaje de propósito general. Este lenguaje se ha utilizado para el desarrollo


de aplicaciones tan dispares como: hojas de cálculos, gestores de bases de datos,
compiladores, sistemas operativos, ...

- Es un lenguaje de medio nivel. Este lenguaje permite programar a alto nivel


(pensando a nivel lógico y no en la máquina física) y a bajo nivel (con lo que se
puede obtener la máxima eficiencia y un control absoluto de cuanto sucede en el
interior del ordenador).

- Es un lenguaje portátil. Los programas escritos en C son fácilmente


transportables a otros sistemas.

- Es un lenguaje potente y eficiente. Usando C, un programador puede casi alcanzar la


eficiencia del código ensamblador junto con la estructura del Algol o Pascal.

Uso del C

Los pasos a seguir desde el momento que se comienza a escribir el programa C


hasta que se ejecuta son los siguientes:

1.- Escribirlo en un editor.


2.- Compilarlo en un compilador.
3.- Enlazarlo en un enlazador.
4.- Ejecutarlo.

Paso 1: ESCRIBIRLO

El programa se puede escribir en cualquier editor que genere ficheros de texto


estándar, esto es, que los ficheros generados no incluyan códigos de control y
caracteres no imprimibles. Estos ficheros que contienen código C se llaman ficheros
fuentes. Los ficheros fuentes son aquellos que contienen código fuente, es decir,
ficheros con texto que el usuario puede leer y que son utilizados como entrada al
compilador de C.
Los programas pequeños suelen ocupar un solo fichero fuente; pero a medida que
el programa crece, se va haciendo necesario distribuirlo en más ficheros fuentes.

Paso 2: COMPILARLO

El compilador produce ficheros objetos a partir de los ficheros fuentes. Los


ficheros objetos son los ficheros que contienen código objeto, es decir, ficheros
con código máquina (número binarios que tiene significado para el microprocesador)
y que son utilizados como entrada al enlazador.

La extensión de estos ficheros es OBJ, aunque también los hay con extensión
LIB. A estos últimos se les llama también ficheros de librería o biblioteca; contienen
código máquina perteneciente a código compilado suministrado por el compilador.

Paso 3: ENLAZARLO

El enlazador produce un fichero ejecutable a partir de los ficheros objetos. Los


ficheros ejecutables son aquellos que contienen código máquina y se pueden ejecutar
directamente por el sistema operativo. La extensión estos ficheros es EXE o COM. Al
proceso de enlazado también se le suele llamar el proceso
de linkado.

Paso 4: EJECUTARLO

El programa se puede ejecutar simplemente tecleando su nombre desde la línea


de comandos del sistema operativo.

Bibliotecas estándares
El lenguaje C es muy simple. Carece de tipos y servicios que forman parte de
otros lenguajes. No tiene tipo booleano, ni manejo de cadenas, ni manejo de memoria
dinámica.
No obstante, el estándar de C define un conjunto de bibliotecas o librerías de
funciones, que necesariamente vienen con todo entorno de compilación de C y que
satisfacen estos servicios elementales.
Las interfaces de estos servicios vienen definidas en unos ficheros cabeceras ( header
files ). El nombre de estos ficheros suele terminar en .h

Algunos de los servicios proporcionados por las bibliotecas estándares son:


 entrada y salida de datos (stdio.h)
 manejo de cadenas (string.h)
 memoria dinámica (stdlib.h)
 rutinas matemáticas (math.h)

Las que principalmente utilizaremos serán:


- stdio.h: que significa "standard input-output header" (cabecera estandar E/S), es la
biblioteca estándar del lenguaje de programación C, el archivo de cabecera que contiene
las definiciones de macros, las constantes, las declaraciones de funciones y la definición
de tipos usados por varias operaciones estándar de entrada y salida.
- conio.h: se utiliza más que nada por sus comandos: getch(), clrscr(), gotoxy(),
textcolor(), y textbackground(), los cuales usamos para darle mejor presentación a
nuestros programas.

- match.h: es un archivo de cabecera de la biblioteca estándar del lenguaje de


programación C diseñado para operaciones matemáticas básicas. Muchas de sus
funciones incluyen el uso de números en coma flotante.

COMPONENTES BÁSICOS DEL LENGUAJE C

El objetivo de un programa es el de procesar información en forma de datos, para


obtener un determinado resultado. Lo que diferencia un lenguaje computacional de otro
es la forma de representar los datos y las herramientas que ofrece para procesarlos.
Es decir:
Los tipos de datos que maneja
Su declaración de Variables
Las constantes
La forma de realizar asignaciones
La estructura general de un programa
Los comentarios
Sus operaciones de entrada/salida
Las operaciones condicionales
Las iteraciones
LOS TIPOS DE DATOS
C maneja cuatro clases de tipos:
1. los enteros
(a) char
(b) short
(c) int
(d) long
2. los enteros sin signo
(a) unsigned short
(b) unsigned int
(c)unsigned long
3. los flotantes
(a) float
(b) double
4. los apuntadores

Estructura básica de un programa en C


La mejor forma de aprender un lenguaje es programando con él. El programa más
sencillo que se puede escribir en C es el siguiente:
main( )
{
}
La función main, que es la que ejecuta el sistema operativo al llamar a un
programa C. El nombre de una función C siempre va seguida de paréntesis, tanto si
tiene argumentos como si no. La definición de la función está formada por un bloque de
sentencias, que esta encerrado entre llaves {}.
Un programa algo más complicado es el siguiente:
#include <stdio.h>

main( )
{
printf("Hola amigos!\n");
}
LAS VARIABLES

Una variable es un nombre que se asigna a una localidad de memoria que


almacena un determinado valor, (el valor de la variable). El nombre de una variable
debe de cumplir con las siguientes reglas:

1. Serie de caracteres formados por letras, dígitos y subrayados, (underscore: '_');


2. No debe empezar con un dígito;
3. Cualquier longitud (ANSI < 31 caracteres)
4. C trata como distintas las letras mayúsculas de las minúsculas, por lo que se debe de
tener cuidado en este aspecto al declarar una variable y referenciarla más tarde

Los siguientes son ejemplos no válidos de nombres de variables:


1. esto-no-se-vale
2. 12x
3. (nombre)
4. variable$

LA DECLARACIÓN DE VARIABLES
Para poder utilizar una variable es necesario primero declararla. Para declarar una
variable se requiere especificar su tipo, nombre y opcionalmente su valor inicial
La sintaxis de declaración es:
<tipo variable> <nombre variable> [, <nombre variable>];
Un ejemplo de declaración es:
int i;
char letra, opc;
unsigned short s1, s2;
float num, res;
long grande;
LAS CONSTANTES
 Las constantes son datos cuyos valores permanecen constantes durante la
ejecución de un programa.
 Son los posibles valores que una variable puede tomar.
 Encontramos constantes numéricas y de caracteres.
 Las constantes numéricas pueden expresarse en base ocho, diez y 16.
 Ejemplos de constantes son:

- caracteres: 'c','d','e','\n','\0'
- decimal: 123, 345, -1943, +4567
- octal: 0123, 0456, 01234, 04567
- hexadecimal: 0x12, 0xf5ad12, 0x12f103
RANGOS DE LAS CONSTANTES ENTERAS Y REALES
 El valor que una variable puede almacenar tiene un límite.
 Este esta definido en los rangos de las constantes.
 Dichos rangos dependen de la máquina en que se trabaje.

Tipo Longitud Rango


unsigned char 8 bits 0 a 255
char 8 bits -128 a 127
unsigned short 16 bits 0 a 65, 535
short 16 bits -32,768 a 32,767
unsignted int 32 bits 0 a 4,294,967,295
int 32 bits -2,147,483,648 a 2,147,483,647
unsigned long 32 bits 0 a 4,294,967,295
long 32 bits 2,147,483,648 a 2,147,483,647
float 32 bits 3.4E-38 a 3.4E+38
double 64 bits 1.7E-308 a 1.7E+308
long double 80 bits 3.4 E-4932 a 1.1E+4932

LAS ASIGNACIONES
 Una asignación es el hecho de otorgarle un valor constante a una variable.
 El tipo de constante a asignar debe de ser congruente con el tipo con el que fue
declarada la variable.
 El signo de afectación es: =
 Ejemplos de asignación:

int i; i = 3;
/* variable tipo entero i toma el valor de 3 */
short s; s = 4;
/* variable tipo entero s toma el valor de 4 */
char cp; cp = '\';
/* variable tipo carácter cp toma el valor de 3 */
float res; res = 241.45;

LOS ENUNCIADOS EN C
 Las partes del programa que realizan operaciones sobre las variables y/o datos
del programa se conoce enunciados
 Un programa esta formado por un gran número de instrucciones.
 Es necesario saber donde termina una y donde empieza la otra.
 Un enunciado es un conjunto de instrucciones que definen las acciones a
realizar.
 Después de cada enunciado se debe teclear un punto y coma ; para indicar que el
enunciado terminó.
 El enunciado es la unidad elemental de la estructura de un programa
 C es un lenguaje secuencial ya que los enunciados son ejecutados
secuencialmente, uno después de otro, y nunca simultáneamente

LAS PALABRAS RESERVADAS


 C utiliza ciertos nombres para designar funciones, dichos nombres se conocen
como palabras reservadas.
 Una variable no puede llamarse igual que una palabra reservada
 C cuenta con 48 palabras reservadas, estas son:

ed
asni continue float new signed try
auto default for operator sizeof typedef
break delete friend private static union
case do goto protected struct unsigned
catch double if public switch virtual
char else inline register template void
class enum int return this volatile
const extern long short throw while

LOS COMENTARIOS
 Un buen programa debe de contener notas o comentarios que faciliten su
comprensión a los lectores humanos
 Los comentarios son ignorados por el compilador del lenguaje
 Entre la información que generalmente se escribe como comentario esta:

1. Nombre del autor


2. Fecha de última modificación del programa
3. Explicación general de lo que hace el programa
4. Explicación de lo que realiza cada función, sus parámetros de entrada y de salida
5. Significado de las variables más importantes

 C soporta dos tipos de comentarios:


1. comentarios de bloque: /* */
por ejemplo: /* esto no lo lee el compilador*/
2.comentarios de línea: incian a partir de la secuencia de caracteres: // y hasta el
fin de línea.
por ejemplo: // Esto no lo lee el compilador

LAS OPERACIONES DE ENTRADA/SALIDA


 Una operación de entrada tiene por objeto el obtener datos de los diferentes
dispositivos de entrada; generalmente del teclado, y de almacenarlos en memoria
principal.
 Una operación de salida tiene por objeto el obtener datos de memoria principal
y sacarlos a los dispositivos de salida, gneralmente la pantalla.

C cuenta con dos funciones para realizar lo anterior:


1. printf()
2. scanf()
LA FUNCIÓN printf
Sintaxis:
printf ("formato", var1, var2, ..., varN)
"formato": serie de caracteres.
Secuencias especiales:

 %d}: escribir un entero;


 %o}: escribir en octal;
 %x}: escribir en hexadecimal;
 %u}: escribir en entero sin signo;
 %f}: escribir un flotante o doble;
 %%}: escribir caracter '%';
Despliega en pantalla lo especificado por formato, sustituye var1 por la primera
secuencia %, var2 por la segundo % y así sucesivamente.

LA FUNCIÓN scanf
Sintaxis:
scanf("formato", &var1, &var2, ..., &varN)
"formato": debe contener una las secuencias siguientes:

 %d, %o, %x: se refiere a un decimal, octal o hexadecimal;


 %ld, %lo, %lx: lo mismo solo que para un long;
 %hd, %ho, %hx: lo mismo solo que para un short;
 %c: hace referencia a un caracter;
 %f, %lf: referencia a un float o double

Los valores correspondientes a las secuencias % se asignan a las variables var1, var2,
hasta varN

EJEMPLO SALIDA DATOS


main( )
{
int i,j;
i=3;
j=4;
printf ("Hola el mundo \n");
printf("Valor i:\%d \nValor j:\%d",i,j);
}
/* Salida en pantalla:
Hola el mundo
Valor i:3
Valor j:4 */
OPERADORES ARITMÉTICOS
Operación a realizar Operador Expresión Expresión en
C
aritmético algebraica
Suma + f+7 f+7
Resta - p-c p-c
Multiplicación * b*m b*m
División / x/y x/y
Modulo % r mod s r%s

OPERADORES IGUALDAD Y RELACIONALES

Operador algebraico Operador de Ejemplo de Significado de


de igualdad o igualdad o condición la condición
relacional relacional en C en C expresada en C
Operador de igualdad
= == x == y x igual a y
=! =! x != y x diferente de y
Operadores relacionales
> > x>y x mayor que y
< < x<y x menor que y
=> => x >= y x mayor o igual a y
<= <= x <= y x menor o igual a y

OPERADORES BOOLEANOS
Operador Expresión en C Interpretación
Negación: ! !a vale 1 si a es nulo, 0 si no
O:|| a||b vale 1 si a o b es no nulo;
si no tiene un valor de 1
Y: && a&&b vale 1 solo si a y b son no-
nulos,
y 0 en caso contrario

ABREVIACIÓN EXPRESIONES DE ASIGNACIÓN


C dispone de operadores de asignaci'on para abreviar las expresiones de asignación, por
ejemplo el enunciado:
c = c+ 3
puede ser abreviado por el operador de asignación: += como:
c += 3
Si asumimos asume que:
int c=3; d=5; e=4; f=6; g=12;
entonces podemos decir que:
Operador Expresión muestra Explicación Asignación
+= c += 7 c=c+7 10 es asignado a c
-= d -= 4 d=d-4 1 es asignado a d
*= e *= 5 e=e*5 20 es asignado a e
/= f /= 3 f =f/3 2 es asignado a f
%= g %= 9 g=g%9 3 es asignado a g

Ejemplos de programas en Dev C++


1- Programa que muestra “Hola Mundo”.
La función printf permite mostrar mensajes en pantalla, como se muestra a
continuación. Lo que se encuentra dentro de /* */ son comentarios que no se ejecutan y
que no son necesarios a la hora de escribir el programa.
2- Programa que suma dos números.
Las variables serán declaradas “int” por ser enteras. Para poder mostrar una variable
tipo entera se utiliza “%d”, una variable tipo real (float) “%f”.

3- Programa que muestra números punto flotante (reales)


Las variables reales se muestran con “%f” y la cantidad de decimales se puede
seleccionar colocando “%.número de decimalesf ”.

4- Programa donde se capturan valores introducidos por teclado


La función scanf permite capturar datos introducidos por teclado y guardarlos en las
variables declaradas, delante del nombre de la variable siempre se debe colocar el
símbolo “&”.
EL CONDICIONAL if
Sirve para elegir entre una acción u otra dependiendo de una condición.
Bloque 0 Bloque 0
if ( < c.1 > ) if ( < c.1 > )
Bloque 1 Bloque 1
Bloque 2 else
Bloque 2
Bloque 3

EJEMPLO OPERADOR CONDICIONAL


/* Determina si un número es menor mayor o igual a cero */
#include <stdio.h>
main()
{
int i;
printf(''De el valor de i:'');
scanf(%d'',&i);
if (i ?= 0) {
if (i == 0)
printf(''N'umero igual a ceronn'');
else
printf(''Número MAYOR que ceronn'');
}
else
printf(''N'umero menor que ceronn'');
}

Segundo ejemplo operador condicional


/* Determina el número más grande de entre tres */
#include <stdio.h>
main()
{
int i,j,k,mayor;
printf(''De los valores i j k : '');
scanf(''%d%d%d'',&i,&j,&k);
if (i!j)
mayor = j;
else
mayor = i;
if (mayor!k)
mayor = k;
printf(''El m'as grande de(%d,%d,%d) es:%dnn'',i,j,k,mayor)
}
LAS ITERACIONES: el while
Dos posibilidades:
Bloque 0 Bloque 0
while ( <c.1> ) do
Bloque 1 Bloque 1
Bloque 2 while ( <c.1> )
Bloque 2
Funcionamiento:
a) Bloque 0 a) Bloque 0
b) si <c.1> es verdad entonces b) Bloque 1
b.1) Bloque 1 c) si <c.1> es verdad entonces
b.2) Ir a b) regresar a b)
sino sino
ir a c) ir a d)
c) Bloque 2 d) Bloque 2
Ejemplo uso While
/* Obtener la media de n números */
#include <stdio.h>
main()
{
int i;
float x,media;
i=0; media=0;
printf(''x(%d)?'',i);
scanf(''%f'',&x);
while (x!=0) {
media=media+x;
i=i+1;
printf(''x(%d)='',i);
scanf(''%f'',&x);
}
if(i !=0 )
printf(''la media es:%fnn'',media/i);
else
printf(''no hay mediann'');
}
Ejemplo uso do-while
/* Cálculo del número más grande de n números */
#include <stdio.h>
main()
{
int num,max;
max=0;
do {
printf(''De un n'umero:'');
scanf(''%d'',&num);
if (num?max)
max=num;
} while (num?0);
printf(''El n'umero m'as grande es: %dnn'',max);
}
el for ( )

Bloque 1
for ( <Ins d.1>,<Ins d.2>, ..., <Ins d.n> ; <c.1> ;
<Ins i.1>,<lns i.2>, ..., <Ins i.m> )
Bloque 2
Bloque 3
<Ins d.1> a <Ins d.1> y <Ins i.1> a <Ins i.m>:
son instrucciones simples (llamadas a una función o afectaciones)
Funcionamiento:
a) Ejecución del Bloque 1
b) Ejecución de <Ins d.1> después de <Ins d.2> hasta <Ins d.n>
c) Si la condición lógica, <c.1>:
es verdadera entonces ejecución de:
Bloque 2
<Ins i.1> ... hasta <Ins i.m< en ese orden
regreso a c)
sino ir a d)
d) Ejecución Bloque 3
Notas sobre el for
1. Si no hay condición => test condici'on es verdadero
2. Las instrucciones <Ins d.1> a <Ins d.n> y de <Ins i.1> a <Ins i.m> no son obligatorias
3. El for(;;) se considera como un ciclo infinito
ejemplo uso for()
/* Despliega la tabla de multiplicar (1-10) de un número n */
main()
{
int i,n,res;

printf(''Numero:'');
scanf(''%d'',n);
for (i=1; i!=n; i++)
{
res = i*n;
printf(''%d * %d = resnn'',n,i,res);
}
}

También podría gustarte