0% encontró este documento útil (0 votos)
71 vistas16 páginas

Introducción al Lenguaje C

El documento introduce el lenguaje de programación C. C fue creado en 1972 por Dennis Ritchie para el sistema operativo UNIX. El lenguaje C es eficiente, portable, y potente, y se usa ampliamente para sistemas operativos, compiladores, e interpretadores. Un programa en C consta de funciones, incluyendo la función principal main, que llama a otras funciones.

Cargado por

chichan_
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)
71 vistas16 páginas

Introducción al Lenguaje C

El documento introduce el lenguaje de programación C. C fue creado en 1972 por Dennis Ritchie para el sistema operativo UNIX. El lenguaje C es eficiente, portable, y potente, y se usa ampliamente para sistemas operativos, compiladores, e interpretadores. Un programa en C consta de funciones, incluyendo la función principal main, que llama a otras funciones.

Cargado por

chichan_
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

FUNDAMENTOS DE PROGRAMACIÓN

INTRODUCCIÓN AL LENGUAJE C

Ing. Rosario Coral H. Msc.

Modalidad de estudios Presencial / Semipresencial


Objetivos del encuentro:

 Identificar parámetros por valor y por dirección en la llamada a funciones.


 Editar, Compilar y Ejecutar programas en lenguaje C que manejen
funciones

Contenidos:
Funciones.
 Argumentos y parámetros de funciones
 Devolución de un valor en el nombre de la función: return
 Paso de parámetros:
 Por Valor
 Por referencia
INTRODUCCIÓN AL LENGUAJE C
Algoritmos

Fue creado por Dennis Ritchie de los Laboratorios Bell, en 1972, cuando trabajaba junto con Ken Thompson en el diseño del sistema operativo UNIX. Fue el resultado de un
proceso que comenzó con los lenguajes: BCLP que fue desarrollado por Martin Richards y el lenguaje B inventado por Ken Thompson.

El Lenguaje C es el lenguaje predominante en el mundo de las microcomputadoras de sistemas UNIX y de computadoras personales. La gran mayoría de programas que forman
parte del sistema operativo de la computadora o de sus utilidades de soporte están realizados en lenguaje C, como por ejemplo: sistemas operativos, intérpretes, compiladores,
editores de texto, hojas electrónicas, programas de ensamblado, gestores de bases de datos, etc.

Eficiencia Potencia:
En C están escritos casi todos los compiladores e intérpretes
Eficiencia:
como: Pascal,
El lenguaje Fortran, Logo,
C aprovecha APL, LISP,
óptimamente lasBasic, etc. También
características del
están
hardware de las microcomputadoras, por lo tanto,ylos
escritos en C: los sistema operativos UNIX LINUX,
bases de datos,
programas hojas
tienden electrónicas,
a ser procesadores
mas compactos de texto,
y se ejecutan con
emuladores
Portabilidad:
mayor rapidez. gráficos (producción de secuencias animadas).
Además, se utiliza
Los programas de CC en ingeniería
escritos en unpara manejo
sistema de puertos,
pueden
Portabilidad VENTAJAS Potencia comunicaciones,
ejecutarse etc.
en otros sin ninguna modificación o modificaciones
Flexibilidad:
mínimas,
El lenguajeexistiendo
C posee compiladores de C paradel
control sobre aspectos unos 40 sistemas
computador
computacionales,
asociados con el lenguaje ensamblador y las ventajasfáciles
por lo que los programas de C son del
de modificar
lenguaje y denivel.
de alto adaptar a nuevos
Es decir, modelos
se puede de computadoras.
lograr mayor
eficiencia del computador sin mayor complicación en el
desarrollo de los programas

Flexibilidad
Presione clic en cada elipse para ver información

3
Algoritmos
ESTRUCTURA DE UN PROGRAMA EN LENGUAJE C

• Todo programa en C consta de una o más funciones, una de las cuales se llama main. El programa comienza en la función main, desde la cual es posible llamar a otras funciones.

• Cada función estará formada por la cabecera de la función, compuesta por el nombre de la misma y la lista de argumentos (si los hubiese), la declaración de las variables a utilizar y
la secuencia de sentencias a ejecutar.

Archivos de cabecera
declaraciones globales Archivos de Cabecera: Contienen funciones propias del C para llevar a cabo tareas como:
Entrada/Salida, funciones matemáticas, cadenas de caracteres, etc., se los reconoce porque tienen una
main( ) extensión .h, por ejemplo: stdio.h
{
Declaraciones globales: Se declara aquellas variables que van a estar activas durante toda la ejecución
Declaraciones locales ; del programa.
sentencia(s);
Función main() : Es la función principal y es donde inicia y finaliza la ejecución del programa.
}
Variables locales: Son aquellas variables que solamente están activas durante la ejecución de la función.
funcion1( )
{ Sentencia(s): Son la o el bloque de sentencias que se ejecutan, cada sentencias debe estar separada por
un punto y coma ( ; ) .
Declaraciones locales;
Función1(): Luego de la función principal el programa puede contener una o más funciones que se
sentencia(s);
ejecutan las veces que el programador lo requiera.
}

Presione clic en el recuadro para ver información

4
Algoritmos
MAPA DE MEMORIA DE C

Un programa compilado en C crea y usa cuatro regiones de memoria lógicas diferentes que sirven para funciones específicas:

PILA: Es la cuarta región de la memoria (stack), que se usa en el


Parte Alta PILA momento de la ejecución del programa, para mantener las direcciones de
retorno a las llamadas a funciones, almacenar las variables locales y
MONTON: Es la tercera región de la memoria que puede usar el
MONTON salvar el estado de la CPU.
programa mediante
VARIABLES funciones
GLOBALES: Esdela asignación dinámica
segunda región de lade memoria
memoria en el
donde
momento de la ejecución del programa. Se utiliza cuando se trabaja
se reserva espacio para las variables globales cuya creación se realiza con
CÓDIGO
estructuras
en DE
el momento PROGRAMA:
dinámicas Es la
como pilas,del
de la compilación primera
colas, región de la
listas, árboles.
programa. memoria que
VARIABLES GLOBALES contiene realmente el código de programa (ejecutable).

Parte Baja CÓDIGO DE PROGRAMA

Presione clic en el recuadro para ver información

5
Algoritmos
COMENTARIOS
A la hora de programar es conveniente añadir comentarios (cuantos más mejor) para poder saber que función tiene cada parte del
código, en caso de que no lo utilicemos durante algún tiempo. Además facilitaremos el trabajo a otros programadores que puedan
utilizar nuestro archivo fuente.

Para poner comentarios en un programa escrito en C se usa el siguiente formato:

/* Comentario */

/* Este es un ejemplo de comentario */

/* Un comentario también puede


estar escrito en varias líneas */

El símbolo /* se coloca al principio del comentario y el símbolo */ al final.

El comentario, contenido entre estos dos símbolos, no será tenido en cuenta por el compilador.
Presione clic con el ratón para ver información

6
Algoritmos
IDENTIFICADORES

Un identificador es el nombre que damos a las variables y funciones. Está formado por una secuencia de letras y dígitos, aunque también acepta el caracter de
subrayado _ . Por el contrario no acepta los acentos ni la ñ/Ñ.

Se debe considerar las siguientes reglas:

- El primer caracter de un identificador no puede ser un número, es decir que debe ser una letra o el símbolo _.

- Se diferencian las mayúsculas de las minúsculas, así num, Num y nuM son distintos identificadores.

- Procure utilizar nombres de identificadores que represente los datos que van a contener.

A continuación vemos algunos ejemplos de identificadores válidos y no válidos:

Válidos No válidos

_num 1num
var1 número2
fecha_nac año_nac

Presione clic con el ratón para ver información

7
Algoritmos
TIPOS DE DATOS
El tipo de dato define un conjunto de valores que puede tener una variable, junto con un conjunto de operaciones que se pueden realizar sobre esa variable. Los tipos de datos
comunes son los números enteros, números reales y caracteres.

int: Es un número exacto, carece de parte fraccionaria, por lo que no


tiene punto decimal. Se almacena en 2 bytes (16 bits) y el rango de
modificadores: tienen la misión de modificar el rango de valores de un
determinado tipo de variable. Estos calificadores son cuatro:
valores está desde -32768 a 32767.
Signed int
Le indica a la variable que va a llevar signo. Es el utilizado por defecto.
Unsigned
Le indica a la variable que no va a llevar signo (valor absoluto). El rango de modificador
valores es desde 0 a 255; unsigned int desde 0 a 65535. es float
Short float: Corresponde a los números reales se almacena
Rango de valores en formato corto (limitado). Es el utilizado por defecto. en 4 bytes (32 bites) y abarcan un rango de 3.4e-38 a
Long Tipos de datos 3.4e+38.
Rango de valores en formato largo (ampliado). El rango de valores long int
esta desde -2.147.483.648 a 2.147.483.647 ; long double desde -3'36 E-
4932 a 1'18 E+4932 . char
void

double char: Representa caracteres definidos por el código


ASCII. Se almacenan en 1 byte (8bits) y el rango esta
desde – 128 a 127.
void: Es un tipo vacio, no tiene tipo de dato y se utiliza para
declarar una función que no devuelve un valor, establecer que la
función no tiene parámetros o crear puntos genéricos. double: Son los mismos números de punto flotante, pero con doble precisión. Se almacenan en 8
bytes (64 bits) y el rango está desde 1.7e-308 a 1.7e+308

Presione clic en los círculos de los tipos de datos para ver información

8
Algoritmos
DECLARACIÓN DE VARIABLES
Una variable es un tipo de dato, referenciado mediante un identificador (que es el nombre de la variable). Su contenido podrá ser modificado a lo largo del programa. Una variable
sólo puede pertenecer a un tipo de dato. Para poder utilizar una variable, primero tiene que ser declarada con el siguiente formato:

Ejemplos:
int num;
1) tipo variable; Ejemplos:
float iva;
int
charnum,
op; con=0, i,x;
long int factor;
float tot_rec
float iess;
2) tipo var1, var2=valor; char op, fin, codigo;

DECLARACIÓN DE CONSTANTES
Al contrario que las variables, las constantes mantienen su valor a lo largo de todo el programa. Para indicar al compilador que se trata de una constante, se puede utilizar los
siguientes formatos:

Ejemplos:
#define IVA 0.12
1) #define CONSTANTE valor Ejemplos:
#define TRANSP 100

const float IVA = 0.12;


const int TRANS = 100;
2) const tipo CONSTANTE =valor;

Presione clic con el ratón para ver información

9
Algoritmos

SECUENCIAS DE ESCAPE ARCHIVOS DE CABECERA


Ciertos caracteres no representados gráficamente se pueden representar En la programación en C es posible utilizar funciones que no estén incluidas en el
mediante lo que se conoce como secuencia de escape. A continuación propio programa. Para ello utilizamos la directiva #include, que nos permite añadir
vemos una tabla de las más significativas: librerías o funciones que se encuentran en otros ficheros a nuestro programa. Para
indicar al compilador que vamos a incluir ficheros externos podemos hacerlo de dos
maneras (siempre antes de las declaraciones).

\n salto de línea
\b retroceso
1) Indicando que se encuentran en el directorio por defecto del compilador.
\t tabulación horizontal
\v tabulación vertical #include <misfunc.h>
\\ contrabarra
\f salto de página
\' apóstrofe
\" comillas dobles 2) Indicándole al compilador la ruta donde se encuentra el fichero.
\0 fin de una cadena de caracteres
#include "misfunc.h"
#include "c:\includes\misfunc.h"

Presione clic con el ratón para ver información

10
Algoritmos
OPERADORES
A continuación se explican los tipos de operadores que permiten realizar operaciones matemáticas en lenguaje C.

Prioridades de ejecución Operadores Aritméticos


suma +
1ra. Prioridad sqrt(); pow( );
resta
2da. Prioridad *,/, % Aritméticos
multiplicación *
división /
3ra. Prioridad +, -, ++,--
resto de la división %
OPERADORES incremento ++
decremento Operadores
-- Relacionales
EJEMPLOS: Mayor que >
Area = (b * h) / 2; Menor que <
num1 > num2 Asignación Mayor o igual que >=
(A > B) && (A > C) Menor o igual que <=
CONT = 10
Igual ==
Operadores Lógicos
Diferentes
&& ( and ) !=
Operador de asignación
|| (or)
! (not)
Identificador = valor

Presione clic con el ratón para ver información 11


Algoritmos
Entrada / Salida por consola
Las funciones printf() y scanf() permiten escribir y leer datos de cualquier tipo. Para poder utilizarlas se debe incluir el archivo de cabecera stdio.h

SALIDA

printf(“cadena de control”,arg1,arg2...);

Especificadores de formato (%)

En la cadena de control indicamos la forma en que se mostrarán los argumentos %c Un único caracter
posteriores. También podemos introducir una cadena de texto ( sin necesidad de %d Un entero con signo, en base decimal %u Un entero sin signo, en base decimal %o
argumentos ), o combinar ambas posibilidades, así como secuencias de escape (\n, \t, Un entero en base octal
\a, etc).
%x Un entero en base hexadecimal
En el caso de que utilicemos argumentos deberemos indicar en la cadena de control %e Un número real en coma flotante, con exponente
tantos especificadores de formato como argumentos vayamos a presentar. %f Un número real en coma flotante, sin exponente

El especificador de formato está compuesto por el carácter % seguido por un carácter %s Una cadena de caracteres
de conversión, que indica de que tipo de dato se trata. %p Un puntero o dirección de memoria

Presione clic con el ratón para ver información

12
Algoritmos
Ejemplo de utilización de printf( )

Declaración del archivo de cabecera stdio.h, (standar input output), donde se


/* Uso de la sentencia printf() 1. */ encuentran las funciones de entrada / salida del lenguaje C.
#include <stdio.h>
main() /* Saca por pantalla una suma */
{ Declaración del dos variables de tipo entero a y b que se inicializan al
momento de la declaración.
int a=20,b=10;

Saca a pantalla una constante de cadena, el valor de la variable a y da un


printf("El valor de a es %d\n",a); salto de línea (\n).

printf("El valor de b es %d\n",b);


Saca a pantalla una constante de cadena, el valor de la variable b y da un
printf("Por tanto %d+%d=%d",a,b,a+b); salto de línea (\n).
return 0;
} Saca a pantalla el valor de las variable a , b y la suma de las dos variables
(a+b). Note que existen 3 ordenes de formato %d para cada dato que sale a
pantalla.

Presione clic con el ratón para ver información

13
Algoritmos
ENTRADA

scanf(“cadena de control”,variable);

Especificadores de formato (%)

%c Un único carácter
En la cadena de control indicaremos, por regla general, los especificadores de formato
%d Un entero con signo, en base decimal
que harán referencia al tipo de dato de los argumentos. Al igual que en la sentencia
printf los Especificadores de formato estarán formados por el caracter % seguido de un %u Un entero sin signo, en base decimal
caracter de conversión. Los argumentos indicados serán, nuevamente, las variables. %o Un entero en base octal
%x Un entero en base hexadecimal
La principal característica de la sentencia scanf es que necesita saber la posición de la
memoria del ordenador en que se encuentra la variable para poder almacenar la %e Un número real en coma flotante, con exponente
información obtenida. Para indicarle esta posición utilizaremos el símbolo ampersand ( %f Un número real en coma flotante, sin exponente
& ), que colocaremos delante del nombre de cada variable numérica, en las variable de
tipo char no es requerido. %s Una cadena de caracteres
%p Un puntero o dirección de memoria

Presione clic con el ratón para ver información

14
Algoritmos
Ejemplo de utilización de scanf( )

/* Uso de la sentencia scanf() */ Declaración del archivo de cabecera stdio.h, (standar input output), donde se
encuentran las funciones de entrada / salida del lenguaje C.
#include <stdio.h>
main() /* Solicita dos datos */
{ Declaración del dos variables una de tipo cadena nombre de 10 bytes y una
de tipo entero edad .
char nombre[10];
int edad;
Saca a pantalla un mensaje al usuario solicitando que ingrese el nombre.

printf("Introduce tu nombre: ");


scanf("%s",nombre); Ingresa el nombre, el formato utilizado, %s indica que se ingresará una
cadena y será almacenada en la variable nombre.
printf("Introduce tu edad: ");
scanf("%d",&edad);
Saca a pantalla un mensaje al usuario solicitando que ingrese su edad.
return 0;
}
Ingresa la edad, el formato %d indica que se ingresará un número entero y se
almacenará en la variable edad , se antepone el símbolo & que es un operador de
dirección de punteros..
Presione clic con el ratón para ver información

15
GRACIAS

También podría gustarte