Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Iniciación a la programación en C
1
Objetivos
• El alumno conocerá los elementos básicos para la programar en el lenguaje de
programación C
Introducción
C es un lenguaje de programación de propósito general que ofrece economía de expresión,
control de flujo, estructuras de datos y un conjunto de operadores. C fue originalmente
diseñado para el sistema operativo UNIX. Tanto dicho sistema como los programas que se
ejecutan en él están desarrollados en C.
Proceso de compilación
La compilación de un programa C se realiza en varias fases que normalmente son automatizadas
y ocultadas por los entornos de desarrollo.
1. Preprocesado. Consistente en modificar el código fuente en C según una serie de
instrucciones (denominadas directivas de preprocesado) simplificando de esta forma el
trabajo del compilador. Por ejemplo, sustitución de las inclusiones (#include) por las
declaraciones reales existentes en el fichero indicado.
2. Compilación. Genera el código objeto a partir del código ya preprocesado. 3. Enlazado.
Une los códigos objeto de los distintos módulos y bibliotecas externas para generar el
programa ejecutable final.
El siguiente programa imprime en pantalla "Hola Mundo"
Para los comentarios de una o más líneas se indican entre los símbolos “/*” inicio y cierre “*/ “
/* comentario de dos
líneas */
Las líneas con comentarios sirven al programador para aclarar puntos clave del programa, así
como para facilitar el mantenimiento de los mismos. Declaración de variables Los datos
en el lenguaje C deben tener un tipo de datos. Las variables contienen datos, y se debe declarar
el tipo adecuado para los valores que van a contener. En C se dispone los siguientes tipos de
datos básicos:
Rangos de valores y tipos modificados
Rango de los enteros
Una variable entera acepta valores positivos y negativos dentro de un rango determinado, que
depende de la plataforma y del compilador (Por ejemplo, bajo MS-DOS un entero suele estar en
entre -32768 y 32767; en Linux suelen ser de 32 bits).
Existen modificaciones para alterar el rango de valores sobre el que trabaja los enteros:
La función scanf es una de las funciones más usadas en C, ya que nos permite solicitarle
datos al usuario por medio de la entrada estándar (teclado). La función scanf se utiliza de
acuerdo al siguiente formato:
scanf(“cadena de formato”, &variable1, &variable2, ... &variableN);
En la cadena de formato aparecen:
En el código anterior se solicita al usuario dos datos: uno entero que se guarda en la variable
num, y otro de punto flotante que se guarda en fnum.
Después de la ejecución de la instrucción scanf, se detiene el programa hasta que el usuario
capture dichos números. Se captura el primer número y se teclea enter para poder capturar
el siguiente número. Al final las variables tendrán los valores capturados.
Funciones matemáticas
Otras funciones útiles son las funciones matemáticas, en C existe una biblioteca que nos permite
hacer uso de tales funciones: math.h En esta biblioteca se encuentran definidas las funciones
trigonométricas, raíz cuadrada, potencia, etc. Algunas funciones se definen a continuación.
Ejemplo.
x=sqrt(4); // El resultado x=2
y=pow(4,2); // El resultado y=16 equivalente a 4 *
4 z=log10(20); // El resultado z=1.30 Ejemplos de programa
en C Ejemplo1. Ejecutar el siguiente programa.
#include <stdio.h>
#include <conio.h>
/* determina el volumen de una esfera de radio 21 */ int
main()
{ float radio, volumen, PI ;
PI= 3.1416;
radio=21;
volumen= (4.0/3.0) * PI * radio * radio * radio;
printf("El volumen de la esfera con radio %f es %f",
radio, volumen ); getche(); return 0;
}
La función getche(), en este caso, permite detener el programa para poder visualizar los
resultados, su definición se encuentra en la biblioteca conio.h
Ejemplo2. Ejecutar el siguiente programa.
Este programa resuelve la ecuación 2x + 3y =18 f(x)= (18-2x)/3
#include <stdio.h>
#include <conio.h>
int main()
{
/* resuelve la ecuación 2x + 3y =18 */
float x,y;
printf("Resuelve la ecuacion 2x + 3y =18\n");
printf("Teclea el valor para x:"); scanf("%f",&x);
y = (18 - 2*x)/3; printf("fun(x)= (18-2x)/3 \n");
printf("y = fun(%f)= %f \n",x,y); getche(); return
0; }
Ejercicios
Escriba un diagrama de flujo que resuelva los siguientes problemas. Además, codifique el
diagrama de flujo propuesto, en lenguaje C, para verificar el funcionamiento de la propuesta de
solución.
1) Una temperatura Celsius (C) puede ser convertida a su equivalente en grados Fahrenheit de
acuerdo con la siguiente fórmula
Escriba un programa que lea la temperatura en grados Celsius y la muestre en pantalla en grados
Fahrenheit.
Diseñar un programa que lea dos conjuntos de coeficientes (a, b y c; d, e y f) y visualice los valores
de x y y
3) Escriba un programa que desglose cierta cantidad de segundos introducida por el teclado en su
equivalente en semanas, días, horas, minutos y segundos.