Вы находитесь на странице: 1из 6

UNIVERSIDAD DE MENDOZA

Facultad de Ingeniería

INFORMATICA (4009)

Introducción a Lenguaje C

1. De algoritmos a Programas

Debemos tener en cuenta que la lógica informática que aplicamos


para resolver problemas (Algoritmos), puede escribirse en un Lenguaje
de programación que puede ser interpretado por un dispositivo
(computadora, tablet, teléfono móvil, etc.).

Repasemos los PASOS PARA RESOLVER UN PROBLEMA:

1. Identificar los datos del problema, que aparecen en el enunciado,


los cuales pueden ser:

DATOS DE ENTRADA (E)


DATOS DE SALIDA (S)

2. Delinear el PROCESO (P) que, usando los datos de ENTRADA le


permitirá OBTENER los datos de SALIDA.
El proceso permitirá obtener el algoritmo que plantee la solución al
problema.

Recomendación: Si al comienzo no detectamos cuál/es sentencias de


control podemos utilizar (Ver apunte “Sentencias de control.pdf”), resulta
útil resolver el problema con “lápiz y papel”, para estudiar qué pasa con los
datos cuando trabajamos con ellos, cambiándolos o resolviendo operaciones
con los mismos.

3. Establecer las fórmulas, cálculos y/o las sentencias de control


necesarias para resolver el problema.

Recordemos que estas sentencias pueden ser: secuenciales (una sentencia


sigue a otra en jerarquía top-down); condicionales (if, if-else, select-case) o
repetitivas (for, while, do-while) y que todas pueden combinarse o anidarse
adecuadamente según la lógica del proceso.

Asimismo, definir tipo de las variables y constantes. Si es


necesario, inicializaremos las variables con algún valor.

4. Diseñar en Pseudocódigo un algoritmo acorde al problema a


resolver.

5. Plantear una Prueba de Escritorio, para evaluar los distintos cambios


que ocurren en las variables de (E) y de (S), a medida que seguimos
el flujo del algoritmo.

6. Escribir el código fuente en un Lenguaje de programación. En nuestro


caso, lo codificaremos en Lenguaje C.

Betina Cárcano Curso: 1°Año (Ingeniería Industrial) 1


UNIVERSIDAD DE MENDOZA
Facultad de Ingeniería

INFORMATICA (4009)

Introducción a Lenguaje C

2. Introducción al C

¿Qué es este lenguaje y por qué lo utilizaremos?

C es un lenguaje de programación de uso general. Ha sido asociado


estrechamente al sistema operativo UNIX (anterior al actual LINUX), ya que su
desarrollo se realizó en este sistema y debido a que tanto UNIX como su
software fueron escritos en C. Sin embargo, no está ligado a ningún sistema
operativo o máquina en concreto.

C trabaja con tipos de datos que son directamente tratables por el


hardware, como son los caracteres, los números y las direcciones. Estos tipos
de datos pueden ser manipulados por las operaciones aritméticas que
proporcionan los dispositivos.

En C existen sentencias de control sencillas: secuenciales, de selección


o alternativas, y de iteración o repetitivas (lazos). Al ser un lenguaje simple,
los compiladores son de fácil implementación. Mediante la inclusión de
funciones de librería se pueden realizar desde las tareas más simples hasta
las más complejas (como las que normalmente dependen del sistema
operativo). Cada versión de C provee librerías de funciones para llevar a cabo
las operaciones de entrada-salida, manejo de caracteres y asignación de
memoria. Además, es posible incluir librerías escritas por el mismo
programador.

Diseño correcto de programas

La metodología correcta para escribir programas es análoga a lo que


hemos aprendido al diseñar algoritmos. Se recomienda seguir estos pasos:

a) Definir el problema que será abordado y resuelto por la computadora.

b) Diseñar la salida del programa; esto es, cómo le serán presentados


los resultados al usuario. Desglosar el problema en las partes lógicas
que fuesen necesarias para lograr la salida deseada, esto incluye la
determinación de la entrada requerida por el programa. Este
proceso puede realizarse mediante pseudocódigo, diagramas de flujo o
alguna otra herramienta de la Lógica Informática.

c) Redactar o escribir el código fuente del programa, mediante el


empleo de un editor incluido en algún programa de compilación; por
ejemplo, Dev-C++.

d) Compilar el programa; momento en que se incluye todo lo necesario


de las librerías del Lenguaje C y se produce el “linkeo” del código

Betina Cárcano Curso: 1°Año (Ingeniería Industrial) 2


UNIVERSIDAD DE MENDOZA
Facultad de Ingeniería

INFORMATICA (4009)

Introducción a Lenguaje C

fuente. A partir de la compilación sin errores, obtenemos un programa


ejecutable (archivo con extensión .EXE).

e) Comprobar el programa (cargando datos desde el teclado), para


asegurarse de que funciona según lo esperado.

En la imagen siguiente, se grafican los pasos:

Algoritmo en
Pseudocódigo Programa C archivo
Pre-procesador Link Editor
fuente objeto
.cpp o .c .obj

Prog.fuente C Compilador Archivo


Editor preprocesa ejecutable
do .exe

Compilación de código fuente en C para convertirlo en un programa ejecutable

3. Análisis de un programa realizado en C

EJEMPLO.
/* Programa inicial que muestra el aspecto de los comentarios en C y presenta
algunas variables y sus declaraciones */
#include <stdio.h>
#include <stdlib.h>
main() {
int i, j; // Esta línea declara 2 variables de tipo entero
char c; // Esta línea declara 1 variable de tipo carácter
float x; // Esta línea declara 1 variable de tipo punto flotante (real)
/* En las líneas siguientes se asignan valores a las variables
declaradas anteriormente; esto también puede realizarse al momento de
su declaración */
i=4;
j=i+7; // A la variable j se le asigna el valor de i más 7
c='A'; /* Todas las constantes que representan caracteres van
encerradas entre comillas simples */
x=9.087; /* A la variable x se le asigna un valor de punto flotante, de
acuerdo al tipo de dato con el que fue declarada */
x=x * 4.5; // Esta asignación modifica lo que había previamente en x
/* Muestra los valores actuales de las variables en la pantalla, mediante el uso de
la función printf() que está incluida en la librería stdio.h */
printf(“Valor de i:%d Valor de j:%d Valor de c:%c Valor de x:%f”, i, j, c, x);
system(“PAUSE”);
}

Betina Cárcano Curso: 1°Año (Ingeniería Industrial) 3


UNIVERSIDAD DE MENDOZA
Facultad de Ingeniería

INFORMATICA (4009)

Introducción a Lenguaje C

Compilemos y probemos este primer programa. La salida deberá ser:


Valor de i:4 Valor de j:11 Valor de c:A Valor de x:40.891499

Veamos las partes principales de un programa en C, en base al ejemplo que


hemos analizado:
Comentario
/* Programa inicial que muestra el aspecto de los comentarios multilínea
Inclusión de en C y presenta algunas variables y sus declaraciones */
librerías de E/S #include <stdio.h>
#include <stdlib.h>
Comienzo main() {
del programa int i, j; // Esta línea declara 2 variables de tipo entero
char c; // Esta línea declara 1 variable de tipo carácter Comentario
float x; // Esta línea declara 1 variable de tipo punto flotante (real) de una línea
Declaración
de variables /* En las líneas siguientes se asignan valores a las variables
declaradas anteriormente; esto también puede realizarse al
momento de su declaración */
i=4;
Cuerpo del j=i+7; // A la variable j se le asigna el valor de i más 7
programa c='A'; /* Todas las constantes que representan caracteresvan
encerradas entre comillas simples */
x=9.087; /* A la variable x se le asigna un valor de punto flotante, de
acuerdo al tipo de dato con el que fue declarada */
x=x * 4.5; // Esta asignación modifica lo que había previamente en x

/* Muestra los valores actuales de las variables en la pantalla,


Salida del mediante el uso de la función printf() que está incluida en la
programa librería stdio.h */
printf(“Valor de i:%d Valor de j:%d Valor de c:%c Valor de
Fin del programa x:%f”, i, j, c, x);
system(“PAUSE”);
}

Veamos cada una de las partes:

a. Los comentarios
Son mensajes que usted, como programador, inserta en sus códigos
fuente, explicando qué es lo que está sucediendo en el programa en algún
momento en particular.
Nunca se colocan sentencias de C dentro de un comentario, porque los
comentarios son para el programador, no para la computadora.
El compilador ignora todos los comentarios de los programas que procesa.
Como se vio en el EJEMPLO, los comentarios pueden ser multilínea, en
cuyo caso se usan los símbolos /* antes del mensaje y */ al finalizar el mismo;
y también pueden ser de una línea, para lo cual se utilizan los símbolos // al
inicio y no se cierra con ningún símbolo.

b. Comienzo del programa


Previo al inicio del programa, se deben incluir las librerías de funciones,
mediante la instrucción #include <nombrelibreria.h>, como por ejemplo:

Betina Cárcano Curso: 1°Año (Ingeniería Industrial) 4


UNIVERSIDAD DE MENDOZA
Facultad de Ingeniería

INFORMATICA (4009)

Introducción a Lenguaje C

#include <stdio.h>
#include <stdlib.h>
Más adelante, se explicará el contenido de las librerías.

Posteriormente, comienza la función main(), con su llave de apertura {


y de cierre }, dentro de las cuales irá el cuerpo o bloque de código del
programa.
Los programas en C pueden contener más de una función, pero deben
contener indefectiblemente la función denominada main().
Cuando el programa fuente se compila y se lo hace ejecutar o correr, la
computadora busca la función main() y comienza a ejecutar la instrucción que
sigue a la llave de apertura correspondiente a main().

c. Declaración de variables
En las líneas siguientes se declaran las variables que se usarán en el
programa. Una declaración de variables describe todas las variables que
son utilizadas en ese bloque de código.
Un programa de C procesa los datos con el fin de obtener resultados
significativos. Todos los programas incluyen los elementos siguientes:
 Instrucciones
 Datos
Los datos están formados por variables y constantes. Una variable es
un dato que puede cambiar (variar) a medida que se está ejecutando el
programa. Una constante permanece inalterable.
C permite emplear varios tipos de constantes literales, a menudo
llamadas simplemente constantes. En C, una constante es cualquier número,
carácter alfabético, palabra o frase, como por ejemplo:
5.6
-45
‘Q’
“Maria tiene un perro”
Para declarar una constante en lenguaje C, usamos la siguiente sintaxis:

#define nombre_de_constante valor

Por ejemplo: #define MAX 15 //Nótese que no va el símbolo ; al final

Una variable es semejante a un casillero ubicado en la memoria de la


computadora y puede alojar algo. Ese “algo” puede ser un número o un
carácter alfanumérico. Al declarar una variable se le puede asignar un valor, el
cual permanecerá alojado en ella hasta que el programa lo modifique o el
usuario le asigne otro valor. Ejemplos de nombres de variables son:
i, c, ventas
fecha, sueldo

Betina Cárcano Curso: 1°Año (Ingeniería Industrial) 5


UNIVERSIDAD DE MENDOZA
Facultad de Ingeniería

INFORMATICA (4009)

Introducción a Lenguaje C

Para declarar una variable en lenguaje C, usamos la siguiente sintaxis:

tipo_de_dato nombre_de_variable ;

Por ejemplo: int num;

d. Nombres de variables
Un identificador típicamente se utiliza para nombrar a una variable. Los
identificadores en C, son combinaciones de letras, dígitos numéricos y _ (guión
bajo). Comienzan siempre con una letra o con _. Es decir, no pueden
comenzar con dígitos numéricos.
C es sensible a las mayúsculas, es decir, que las letras mayúsculas y
minúsculas son tratadas como letras diferentes. Por tradición se emplea letras
minúsculas para nombres de variables y funciones y para las constantes letras
mayúsculas.

e. Tipos de datos
Los tipos de datos básicos definidos por C son caracteres, números
enteros y números en coma flotante.
Los caracteres son representados por el tipo char, los enteros por el tipo
int (con sus dos variantes short y long) y los números en coma flotante por los
tipos float y double.
Los tipos básicos disponibles y su tamaño son:

Tipo Descripción Tamaño


char Carácter normalmente 1 byte (8 bits)
short Entero corto con normalmente 2 bytes (16 bits)
signo
int Entero con signo depende de la implementación,
normalmente 2 bytes (16 bits)
long Entero largo con normalmente 4 bytes (32 bits)
signo
float Flotante simple normalmente 4 bytes (32 bits)
double Flotante doble normalmente 8 bytes (64 bits)

Además hay dos calificadores que se aplican a los enteros: unsigned y signed.
Esto determina si el entero se considera entero con signo o sin signo. Los números
unsigned son siempre positivos o 0 (cero) y obedecen las leyes de la aritmética módulo
2N, donde N es el número de bits del tipo.
En realidad, como los caracteres (tipo char) se tratan como cualquier entero los
calificadores signed y unsigned también pueden aplicarse a este tipo. Como resultado,
un unsigned char toma valores de 0 a 255, en cambio un signed char, de -128 a 127
(algo poco común).
Nota: Si se omite el calificador delante del tipo de la variable entera, éste se
adopta por omisión (default) como "signed".

Betina Cárcano Curso: 1°Año (Ingeniería Industrial) 6

Вам также может понравиться