Está en la página 1de 20

GUIA DE PROGRAMACIÓN EN LENGUAJE “C”

Contenido
METODOLOGÍA PARA LA SOLUCIÓN DE PROBLEMAS............................................................ 2
DIAGRAMAS DE FLUJO ................................................................................................................ 2
PROGRAMACIÓN EN “C” ............................................................................................................. 3
COMPILAR UN PROGRAMA PARA VER ERRORES: .................................................................. 5
DECLARACIÓN Y TIPO DE VARIABLES ...................................................................................... 6
OPERADORES ARITMÉTICOS EN “C”......................................................................................... 6
INDICADORES DE CONTROL DE FORMATO Y SECUENCIAS DE ESCAPE. ............................ 7
OPERADORES LÓGICOS EN “C”................................................................................................. 7
OPERADORES DE COMPARACIÓN EN “C” ................................................................................ 8
PRINCIPALES LIBRERIAS EN “C” ............................................................................................... 8
ESTRUCTURAS DE SELECCIÓN .................................................................................................. 9
SENTENCIA IF. ........................................................................................................................... 9
SENTENCIA IF ELSE.............................................................................................................. 11
SENTENCIA SWITCH y CASE ................................................................................................. 13
ESTRUCTURAS DE REPETICIÓN ............................................................................................... 13
CICLO FOR ............................................................................................................................... 13
TABLA DE COLORES EN “C”..................................................................................................... 15
CICLO WHILE ........................................................................................................................... 15
CICLO DO WHILE..................................................................................................................... 16
FUNCIONES EN “C” .................................................................................................................... 19

Nombre del alumno: . Grupo: .

PROFESOR LEOPOLDO TÉLLEZ LÓPEZ 1


GUIA DE PROGRAMACIÓN EN LENGUAJE “C”

METODOLOGÍA PARA LA SOLUCIÓN DE PROBLEMAS


POR MEDIO DE UNA COMPUTADORA Y PROGRAMACIÓN

E
n esta etapa de tu curso vas a entrar al mundo de la programación, que no es otra cosa si no
indicarle a la computadora paso a paso lo que quieres que realice, utilizando para ello un
lenguaje de programación, que en este caso es “C”. Que nos va a servir para que las
computadoras trabajen para nosotros.
Para resolver un problema utilizando una computadora se requiere diseñar un algoritmo, esto
significa encontrar los pasos para solucionar un problema, te sugerimos seguir la siguiente
metodología que se compone de cinco pasos:

1. Especificación del problema. En esta etapa se debe identificar perfectamente el problema,


sus limitaciones, las variables que intervienen y los resultados deseados.

2. Análisis. Es la formulación de la solución del problema, denominada también algoritmo, de


manera que se tenga una serie de pasos detallados que resuelvan el problema.

3. Programación. Este paso consiste en traducir el algoritmo de solución, a un lenguaje de


programación, que en nuestro caso es “C”. La programación se divide en dos partes en la
primera el algoritmo se presenta en una forma gráfica que se llama Diagrama de Flujo que
permite dar una idea gráfica precisa de lo que se desea hacer y en la segunda parte, que se
denomina codificación, el diagrama de flujo anterior se traduce a un lenguaje máquina. Que en
este caso es “C”.

4. Verificación. Es la prueba exhaustiva del programa para eliminar todos los errores que tenga,
de manera que efectúe lo que se desea. Los resultados de prueba se comparan con soluciones
conocidas de problemas ya resueltos.

5. Documentación. Consiste en preparar un instructivo o guía del programa de manera que


cualquier otra persona pueda conocer, utilizar y mejorar el programa.

Una herramienta para desarrollar un problema y verlo gráficamente es la elaboración de diagramas


de flujo que no es otra cosa sino la representación gráfica del Algoritmo, que contiene pasos para
solucionar el problema.
DIAGRAMAS DE FLUJO

Primeramente, conoceremos la simbología involucrada en la elaboración de los diagramas, así como


su significado, los cuales se muestran en la tabla siguiente:
FIGURA SIGNIFICADO
INICIO Y FIN DEL PROGRAMA
Se coloca al inicio y al final del programa

OPERACIÓN (PROCESO)
Dentro de esta figura colocaras todas las operaciones que vaya a realizar
tu programa

DECISIÓN
Dentro de esta figura puedes colocar preguntas como: A=B , A<B, C=4,
etc., Existen dos caminos verdadero o falso.

PROFESOR LEOPOLDO TÉLLEZ LÓPEZ 2


GUIA DE PROGRAMACIÓN EN LENGUAJE “C”

LECTURA DE DATOS
Utiliza esta figura cuando vas a solicitar o leer un dato fuera de tu
programa

RESULTADOS POR IMPRESORA


Dentro de esta figura colocaras todo lo que quieras que se imprima

SALIDA EN PANTALLA
Dentro de ella colocaras aquellas variables que quieres que aparezcan en
la pantalla

CONECTOR
Se utiliza cuando quieres indicar la conexión de una parte del diagrama
con otra, dentro de ella se puede colocar una letra o un número que
indique la conexión
CONECTOR DE CAMBIO DE PAGINA
Se utiliza cuando en la hoja donde estas dibujando tu diagrama ya no
caben más figuraras puedas dirigirte a otra hoja, dentro de ella se puede
colocar una letra o un número que indique la conexión
OPERACIÓN REPETITIVA O CÍCLICA
Se utiliza para representar un conjunto de instrucciones que quieres que
se repitan continuamente hasta que se cumpla una condición
determinada

PROGRAMACIÓN EN “C”

La historia de C parte de un lenguaje anterior, el lenguaje B, escrito por Ken Thompson en 1970 con
el objetivo de recodificar el sistema operativo UNIX.
En 1972 es Dennis Ritchie (de los Laboratorios Bell de AT&T) quien diseña finalmente C a partir del
B de Thompson, aportando un diseño de tipos y estructuras de datos que consiguen una claridad y
eficacia en el lenguaje muy superior.

En 1980 surge C++ de la mano de Bjarne Stroustrup (también de Laboratorios Bell de AT&T). Diseña
este lenguaje con el objetivo de añadir a C nuevas características: clases y funciones virtuales, tipos
genéricos y expresiones, que le la posibilidad de declarar variables en cualquier punto del programa,
y sobre todo, un auténtico motor de objetos con herencia múltiple que permite combinar la
programación imperativa de C con la programación orientada a objetos. Estas nuevas características
mantienen siempre la esencia del lenguaje C: otorgan el control absoluto de la aplicación al
programador, consiguiendo una velocidad muy superior a la ofrecida por otros lenguajes.
El siguiente hecho fundamental en la evolución de C++ es sin duda la incorporación de la librería
STL años más tarde, obra de Alexander Stepanov y Adrew Koening. Esta librería de clases con
contenedores y algoritmos genéricos proporciona a C++ una potencia única entre los lenguajes de
alto nivel.

C” posee varias características que lo hacen muy apto para la enseñanza y muy útil para solucionar
problemas diversos. Sus principales características son: “C” es un lenguaje que requiere compilador,
es Estructurado y Modular, esto es que se pueden realizar pequeños programas (módulos) que
formen parte de un programa más grande.
Un programa en lenguaje “C” es en realidad un documento (escrito) que contiene una serie de
instrucciones y especificaciones que le indican a una computadora cómo resolver un problema.
Sin embargo, dichas instrucciones y especificaciones deben ser colocadas en lugares adecuados
del texto siguiendo la siguiente estructura:
PROFESOR LEOPOLDO TÉLLEZ LÓPEZ 3
GUIA DE PROGRAMACIÓN EN LENGUAJE “C”
1. Encabezado
2. Declaraciones o especificaciones
3. Cuerpo del Modulo

// Programa que suma dos números 1.- Encabezado:


enteros En esta parte del programa se le da un nombre que debe ser
alusivo a lo que va a realizar el programa. Se coloca el texto
después de dos diagonales, También estas diagonales sirven
para poner comentarios en cualquier parte del programa
#include <stdio.h> 2.- Declaraciones:
Int a,b,r; En esta parte del programa se abren las librerías a utilizar. y se
declaran las variables globales que utilizaremos para resolver
el problema, para este programa se utilizaran tres variables dos
para los sumandos y una para el resultado.
int main() { 3.- Cuerpo del Programa:
printf("Teclea el primer sumando\n"); se inicia con la instrucción int main () { todo lo que se
scanf("%i",&a); encuentra dentro de estos corchetes son las instrucciones
printf("teclea el segundo sumando\n"); que se realizaran}, en este caso se pide el primer dato y se
scanf("%i",&b); guarda en la variable “a”, se pide el segundo y se guarda
r=a+b; en la variable “b” y por último se guarda la suma en la
printf("La suma es = %i\n ",r); variable “r”.
system("pause"); Nota: solo deberá haber una instrucción main en cada
return 0; programa.
} Las instrucciones debes escribirlas en minúsculas

Como primer ejemplo realizaremos un programa que escriba nuestro nombre, el primer paso es
describir como lo haríamos nosotros; esto es hacernos la pregunta ¿qué pasos seguiríamos para
escribir nuestro nombre?
1. Iniciar
2. Tomar la pluma
3. Escribir mi nombre
4. Terminar
Un algoritmo es una forma de describir la solución de un problema, por lo que los pasos anteriores
representan un algoritmo para resolver el problema de escribir mi nombre, a continuación,
transformaremos estos pasos en un diagrama de flujo:

INICIO

LEOPOLDO
TÉLLEZ LÓPEZ

FIN

El siguiente paso es transformar el algoritmo y el diagrama de flujo al lenguaje de programación “C”.

PROFESOR LEOPOLDO TÉLLEZ LÓPEZ 4


GUIA DE PROGRAMACIÓN EN LENGUAJE “C”
//PROGRAMA NOMBRE
#include<stdio.h>
char nombre[30]; //declaramos una variable tipo carácter de longitud 30
int main(){
printf("escribe tu nombre \n");
gets(nombre); //este comando nos sirve para leer la cadena de caracteres y guardarla en la variable
printf("tu nombre es %s\n",nombre); //con esta instrucción mostramos en pantalla el nombre
system("pause");
return 0;
}

En la primera línea encontramos dos diagonales que es un comentario y nos sirve para indican lo
que realiza el programa. En este caso escribe mi nombre, posteriormente se abre la librería estándar
de C que es stdio.h esta librería deberá utilizarse en todos los programas que realicemos.
Se declara una variable de tipo carácter (char) que se llama nombre con una longitud de 30 letras
o caracteres.

El programa principal lo encontramos después de la instrucción int main() { el conjunto de


instrucciones que se encuentren encerrados dentro de estos corchetes son las instrucciones
que ejecutara el programa.}

Posteriormente encontramos dentro del cuerpo del programa la instrucción que nos servirá para
mandar a imprimir un texto o valor en la pantalla que es el comando printf("escribe tu nombre \n");
debemos observar claramente que al final del texto colocamos una diagonal invertida\ y la letra n
esto nos sirve para indicarle a la computadora que muestre el mensaje y después de esto realice un
salto de línea. El texto que se encuentre entre comillas será el que mande o muestre en la pantalla.
Posteriormente utilizamos la instrucción gets para asignar o guardar la cadena de caracteres que
tecle el usuario en la variable nombre (gets(nombre); ), posteriormente la mandamos a imprimir
nuevamente utilizamos la función printf . Finalmente ponemos la instrucción system("pause"); para
detener la corrida del programa y por ver el resultado concluimos la instrucción return 0; esta nos
sirve para indicarle al programa que termino. No olvides colocar un punto y coma al final de las
instrucciones printf y return.

Teclea el programa anterior en el compilador y verifica que funcione adecuadamente no olvides


algo muy importante siempre debes guardar tus archivos con la extensión .C, por lo que al
compilar el programa te pedirá que le proporciones un nombre así mismo te solicita el formato de
guardado por lo que deberás siempre cambiarlo con extensión .C .

COMPILAR UN PROGRAMA PARA VER ERRORES:

La compilación de un programa consiste en revisarlo línea por línea de arriba hacia abajo para
detectar Instrucciones mal escritas, faltas de punto y coma, variables desconocidas o no declaradas,
etc. Al compilar un programa este se ira deteniendo en la línea donde encuentre el error debes poner
atención que, si ves que el cursor está detenido al inicio de la línea, esto indica que solo ha revisado
la línea anterior, por lo tanto, el error se encuentra en esa línea, por lo que debes buscar la falla en
la línea anterior al cursor, en seguida te muestro algunos errores de los más comunes:

MENSAJE DE ERROR DESCRIPCIÓN DE LA SOLUCIÓN


[Error] ‘system’ was not declaret in this scope Verifica siempre que el nombre de tu programa en
la pestaña del compilador tenga extensión .C y no
.CCP
[Error] expected ';' before 'scanf' Falta punto y coma en la línea anterior a la
instrucción scanf.

PROFESOR LEOPOLDO TÉLLEZ LÓPEZ 5


GUIA DE PROGRAMACIÓN EN LENGUAJE “C”

[Error] expected ';' before 'printf' Falta punto y coma en la línea anterior a la
instrucción printf.
[Error] 'r' undeclared (first use in this function) La instrucción está mal escrita, si es una variable no
la has declarado.
[Error] expected declaration or statement at end of A la función main le falta el corchete que cierra( } )
input
[Error] 'retrn' undeclared (first use in this function) La función return está mal escrita. Este mensaje
aparece cuando escribiste mal una función o no
declaraste la variable.
Recuerda siempre que al inicio del. mensaje de error aparece el numero de la line donde se encuentra el
problema, revisa también la línea anterior.

DECLARACIÓN Y TIPO DE VARIABLES


Una variable es un espacio en la memoria de la computadora donde es posible almacenar un dato.
En “C” es necesario especificar con claridad qué variables se usarán en el programa (antes de
usarlas) y qué tipo de información guardarán en esos espacios de memoria.
TIPOS DE VARIABLES
VARIABLE DESCRIPCIÓN VALOR MÍNIMO VALOR MÁXIMO
int entera -2147483648 +2147483647
float Flotante 1.175x10-38 3.403x1038
-308
double Doble 2.225x10 1.798x10308
char carácter ASCII 0 ASCII 255
boolean falso o verdadero falso verdadero
string Cadena de caracteres Se especifica Se especifica

En seguida te muestro algunos ejemplos de variables:


int contador; //declaración de una variable entera 16 bits de espacio 216
float precio; //variable flotante con decimales 32 bits de espacio 232
double deuda; //número máximo 2 64
char opción; //cualquier carácter

1 152.20 500.12 S
contador precio 36
deuda opcion

Puedes observar que las cajas reservadas para guardar los datos cuentan con un nombre que será
el de la variable, dentro de cada caja existen datos de diferente tipo, por ejemplo, la variable
contador es de tipo entera por que guardara números enteros, esto es que del 1 pasa al 2
directamente o sea no existen decimales. En la variable precio y deuda se permite manejar
decimales, por eso podemos guardar en ella el número 152.20. y 500.12 respectivamente. La
variable opción sirve para guardar una letra o un conjunto de caracteres.

Nota: Debes tomar en cuenta que los nombres de las variables no pueden llevar acentos,
espacios en blanco y algunos caracteres especiales.

OPERADORES ARITMÉTICOS EN “C”


OPERADOR DESCRIPCIÓN EJEMPLO
+ SUMA 5+6
- RESTA 8-4
* MULTIPLICA 9*6
/ DIVISIÓN 11/4 ES 2.75
% MODULO (RESIDUO) 11%4

PROFESOR LEOPOLDO TÉLLEZ LÓPEZ 6


GUIA DE PROGRAMACIÓN EN LENGUAJE “C”

INDICADORES DE CONTROL DE FORMATO Y SECUENCIAS DE ESCAPE.


INDICADORES DE FORMATO CARACTERES DE CONTROL
%i Numero entero \n Salto de renglón
%f Número real \” Imprimir comillas
%s Mensaje (cadena de caracteres) \’ Imprimir comilla sencilla
%c Símbolo (carácter) \0 Carácter nulo
Nota: Para obtener la diagonal invertida presiona la tecla ALT y digita el numero 92

Queremos realizar un programa que dibuje un rectángulo


//PROGRAMA DIBUJA UN RECTÁNGULO
#include<stdio.h> //ABRIR LIBRERÍA

int main (){

printf(" *************************************************** \n ");


printf(" * *\n ");
printf(" * *\n ");
printf(" ****************************************************\n ");

return 0;
}

Queremos realizar un programa que multiplique dos números, donde el usuario solo tendrá que
teclear los dos números y presionar la tecla Enter para obtener el resultado:

//PROGRAMA MULTIPLICACION
#include<stdio.h>

int main (){


int x,y,r;
printf("Este programa multiplica dos numeros\n ");
printf("Introduce el multiplicando: \n ");
scanf("%i",&x); // aquí lee el número y lo almacena en la variable x
printf("Introduce el multiplicador: \n ");
scanf("%i",&y); // aquí lee el número y lo almacena en la variable y
r=x+y;
printf("El resultado de la multiplicacion es = %i\n ",r);
return 0;
}

NOTA: REALIZA LOS PROGRAMAS DE LAS OPERACIONES BÁSICAS RESTANTES

OPERADORES LÓGICOS EN “C”

OPERADOR EQUIVALENTE BOOLEANO SIGNIFICADO


&& AND Y
II OR O
¡ NOT NO

PROFESOR LEOPOLDO TÉLLEZ LÓPEZ 7


GUIA DE PROGRAMACIÓN EN LENGUAJE “C”

OPERADORES DE COMPARACIÓN EN “C”

OPERADOR DESCRIPCIÓN SÍMBOLO MATEMÁTICO


== Igual que =
< Menor que <
> Mayor que >
<= Menor o igual que ≤
>= Mayor o igual que ≥
!= Diferente que ≠

PRINCIPALES LIBRERIAS EN “C”

FUNCIONES PRINCIPALES DE LA LIBRERÍA stdio.h

NOMBRE DESCRIPCIÓN
fclose Cierra un fichero a través de su puntero.
fopen,freopen,fdopen Abre un fichero para lectura, para escritura/reescritura o para adición
remove Elimina un fichero.
rename Cambia al fichero de nombre
fgetc Devuelve un carácter de fichero
fpunts Escribe una cadena de caracteres en un fichero
getc Devuelve un carácter desde un fichero
getchar Devuelve un carácter desde la entrada estándar
gets Lee caracteres de entrada hasta que encuentra un salto de línea y
los almacena en un único argumento.
printf, fprintf, sprintf, Usados para imprimir salidas de datos.
snprintf
vprintf También utilizado para imprimir salidas.
scanf, fscanf, sscanf Utilizado para introducir entradas.
vfscanf,vscanf,vsscanf También utilizado para introducir entradas.

FUNCIONES PRINCIPALES DE LA LIBRERÍA stdlib.h


NOMBRE DESCRIPCIÓN
system ( C standard library) Ejecutar un comando externo
rand Genera un numero pseudo-aleatorio
free Libera memoria devolviéndola al heap
abort Termina ejecución anormalmente
exit (operating system) Terminar ejecución del programa
abs, labs Valor absoluto
div, ldiv División entera o euclidiana

FUNCIONES PRINCIPALES DE LA LIBRERÍA ctype.h

NOMBRE DESCRIPCIÓN
tolower Regresa la minúscula del carácter
toupper Regresa la mayúscula del carácter

PROFESOR LEOPOLDO TÉLLEZ LÓPEZ 8


GUIA DE PROGRAMACIÓN EN LENGUAJE “C”

FUNCIONES PRINCIPALES DE LA LIBRERÍA math.h


NOMBRE DESCRIPCIÓN
Acos Arco coseno
Asin arcoseno
Atan arco tangente
Atan2 Arco tangente de dos parámetros
Cos Coseno
Cosh Coseno hiperbólico
Fmod Residuo de la división de flotantes
Frexp Fracción elevada al cuadrado
Log logaritmo natural
Log10 logaritmo base 10
Pow(x,y) Elevar un valor dado a un exponente, x y
Sin Seno
Sinh Seno hiperbólico
Sqrt Raíz cuadrada
Tan Tangente
Tanh Tangente hiperbólica
abs Valor absoluto de la variable
fabs Valor absoluto de x decimales
exp Inversa del logaritmo natural

FUNCIONES PRINCIPALES DE LA LIBRERÍA string.h


NOMBRE DESCRIPCIÓN
strcat Añade una cadena al final de la otra
strchr Localiza un carácter en una cadena, buscando desde el principio
strrchr Localiza un carácter en una cadena, buscando desde el final
strcmp Compara dos cadenas alfabéticamente
strcpy Copia una cadena en otra
strlen Devuelve la longitud de una cadena
Nota: para utilizar cualquiera de estas funciones es necesario incluir la librería a la que
pertenecen.
ESTRUCTURAS DE SELECCIÓN

Las estructuras de selección nos permiten elegir entre un bloque de instrucciones diferentes para
ello evalúa expresiones booleanas y considera si se cumplió (o no) la condición. En “C” existen tres
formas de indicar selección.

IF se traduce como si entonces


IF ELSE se traduce como si entonces de lo contrario.
SWITCH Junto con se traduce como en caso de presentarse un valor igual a , realiza lo siguiente
CASE

SENTENCIA IF.

En el siguiente diagrama, podemos observar que si la variable “a” es igual a cinco (a=5), el conjunto
de instrucciones que se encuentran debajo del rombo se ejecutaran.
Con cualquier otro valor de la variable, el programa pasara al final sin realizar ninguna instrucción.

PROFESOR LEOPOLDO TÉLLEZ LÓPEZ 9


GUIA DE PROGRAMACIÓN EN LENGUAJE “C”

INICIO

NO
a=5

SI

INSTRUCCIONES

FIN

Deseamos que nuestro programa de suma le de la opcion al usuario de seguir realizando sumas o
de terminar el programa. Utilizaremos para ello la intruccion IF y GOTO, veamos como queda:
//PROGRAMA SUMA con IF y GOTO
#include<stdio.h>
int main (){
int x,y,r,op;
eti:
system("cls");
printf("Este programa realiza la suma de dos numeros enteros\n");
printf("Introduce el primer sumando ");
scanf("%i",&x);
printf("Introduce el segundo sumando ");
scanf("%i",&y);
r=x+y;
printf("El resultado de la suma es = %i\n",r);
printf("Deseas realizar otra suma si (1) no (2)\n");
scanf("%i",&op);

if(op==2)
{ printf("Que tengas un buen dia\n "); }

if (op==1)
{ goto eti; }

if(op!=2 && op!=1)


{printf("No elegiste ninguna opcion valida\n ");
system("pause");
goto eti; }

system("pause");
return 0;
}
Veamos otro ejemplo: con un programa de a escoger al usuario si desea una suma o una resta
utilizando la instrucion if:

//PROGRAMA SUMA o RESTA con IF

PROFESOR LEOPOLDO TÉLLEZ LÓPEZ 10


GUIA DE PROGRAMACIÓN EN LENGUAJE “C”
#include<stdio.h>
int main (){
int op,x,y,r;
system("cls");
printf("Elige la operacion que deseas\n");
printf("1.-Suma\n");
printf("2.- Resta\n");
scanf("%i",&op);
if (op==1)
{
printf("Introduce el primer sumando");
scanf("%i",&x); // aquí lee el número y lo almacena en la variable x
printf("Introduce el segundo sumando");
scanf("%i",&y); // aquí lee el número y lo almacena en la variable y
r=x+y;
printf("El resultado de la suma es = %i\n ",r);
}
if (op==2)
{
printf("Introduce el minuendo");
scanf("%i",&x); // aquí lee el número y lo almacena en la variable x
printf("Introduce el sustraendo");
scanf("%i",&y); // aquí lee el número y lo almacena en la variable y
r=x-y;
printf("El resultado de la resta es = %i\n ",r);
}
return 0;
}
Agrega al programa anterior, las instrucciones para que el usuario pueda decidir, seguir realizando
operaciones o terminar el programa.

SENTENCIA IF ELSE
En el siguiente diagrama, podemos observar que si la variable “a” es igual a cinco (a=5), el conjunto
de instrucciones que se encuentran debajo del rombo se ejecutaran.
Con cualquier otro valor de la variable el programa pasara a la opción ELSE y realizara el conjunto
de instrucciones que se encuentren debajo de ella.

INICIO

NO (Else)
a=5

SI INSTRUCCIONES
INSTRUCCIONES (B)
(A)

FIN

PROFESOR LEOPOLDO TÉLLEZ LÓPEZ 11


GUIA DE PROGRAMACIÓN EN LENGUAJE “C”
Veamos un ejemplo realicemos el programa que de a elegir al usuario siquiere una suma o una resta, utilizando
la funcion if con else. Primero veremos el diagrama de flujo y despues lo pasaremos a lenguaje C:

INICIO

Elige la operación que deseas


1.- Suma
2.-resta

op=1

NO
op = 1
(ELSE)

SI RESTA

SUMA

FIN

Elaboremos el programa en lenguaje C


//PROGRAMA SUMA o RESTA con IF y ELSE
#include<stdio.h>
int main (){
int op,x,y,r;
system("cls");
printf("Elige la operacion que deseas\n");
printf("1.-Suma\n");
printf("2.- Resta\n");
scanf("%i",&op);
if (op==1)
{
printf("Introduce el primer dato ");
scanf("%i",&x); // aquí lee el número y lo almacena en la variable x
printf("Introduce el segundo dato ");
scanf("%i",&y); // aquí lee el número y lo almacena en la variable y
r=x+y;
printf("El resultado de la suma es = %i\n ",r);
}
else
{
printf("Introduce el primer dato ");
scanf("%i",&x); // aquí lee el número y lo almacena en la variable x
printf("Introduce el segundo dato ");
scanf("%i",&y); // aquí lee el número y lo almacena en la variable y
r=x-y;
printf("El resultado de la resta es = %i\n ",r);
}
return 0; }
PROFESOR LEOPOLDO TÉLLEZ LÓPEZ 12
GUIA DE PROGRAMACIÓN EN LENGUAJE “C”

SENTENCIA SWITCH y CASE

Otra intrucion de selección es la función switch que nos ayuda cuando hay varias opciones, con
esta función en complemento con case, podremos realizar menús de opciones para que el usuario
de nuestro programa elija lo que desea, veamos con el programa anterior como funcionaria
incluyendo esta función:

//PROGRAMA SUMA o RESTA con función SWITCH y CASE


#include<stdio.h>

int main (){


int op;
float x,y,r;
system("cls");
printf("Elige la operacion que deseas\n");
printf("1.-Suma\n");
printf("2.- Resta\n");
scanf("%i",&op);

switch (op)

{
case 1:
system("cls ");
printf("Introduce el primer sumando : ");
scanf("%f",&x); // aquí lee el número y lo almacena en la variable x
printf("Introduce el segundo sumando : ");
scanf("%f",&y); // aquí lee el número y lo almacena en la variable y
r=x+y;
printf("El resultado de la suma es = %.2f\n ",r);break;

case 2:
system("cls ");
printf("Introduce el primer dato ");
scanf("%f",&x); // aquí lee el número y lo almacena en la variable x
printf("Introduce el segundo dato ");
scanf("%f",&y); // aquí lee el número y lo almacena en la variable y
r=x-y;
printf("El resultado de la resta es = %.2f\n ",r); break;
default:
printf("No elegiste ninguna opción valida, vuelve a intentarlo\n "); break;
}
return 0;
}

ESTRUCTURAS DE REPETICIÓN
CICLO FOR
Supongamos que queremos realizar el programa dibuja triángulos dos veces, si lo hiciéramos con
las instrucciones que ya conocemos bastaría con teclear el programa dos veces. Pero qué pasaría
si quisiéramos que lo realizara 25 veces, se convertiría en algo más laborioso, para hacerlo más
factible veremos a continuación el ciclo for:

PROFESOR LEOPOLDO TÉLLEZ LÓPEZ 13


GUIA DE PROGRAMACIÓN EN LENGUAJE “C”
DIAGRAMA DE FLUJO DEL CICLO FOR

INICIO

INSTRUCCIONES

i = i +1

i = 25
NO
SI

FIN

Esta instrucción no sirve para repetir una parte del código el número de veces que requiramos o
indiquemos. para el uso de esta instrucción en lenguaje C, necesitamos primero que nada declarar
una variable de tipo entera que servirá para ir contando las veces que se realizarán las instrucciones
que queremos repetir, así mismo se conforma de tres partes, primero indicaremos en que numero
empieza nuestra variable a contar, para el caso del programa dibuja triángulos la variable que
declaramos es “i”, entonces la primera parte es indicarle que valor tendrá esta variable al inicio que
en este caso es 0 , entonces la primera parte que de la siguiente forma “i=0”, posteriormente
colocamos un punto y coma y continuamos con la segunda parte de la instrucción que indica el
número de veces queremos que se repita el ciclo, como queremos que el programa se ejecute 25
veces el valor de la variable i será de 26 quedando de la siguiente forma “i<26”, posteriormente
colocamos punto y coma y pasamos a la última parte que indica en cuanto ira creciendo el valor de
la variable i encada ciclo realizado que para este caso es de uno. Esto en programación C se expresa
con el signo + dos veces continuas por lo que quedaría la tercera parte de la instrucción de la
siguiente forma “i++” lo que indica que se incremente en uno cada ciclo, a continuación, mostramos
como queda la instrucción con sus tres componentes:
for (i=0; i<26;i++)
{dentro de estos corchetes van las intrusiones que queremos que se repitan 25 veces}
En seguida te muestro el programa completo:
//PROGRAMA DIBUJA UN TRIANGULO 25 veces con FOR
include<stdio.h>
int main ()
{
int i;
for (i=1; i<26;i++)
{
system(“color 17”);
printf(" * \n ");
printf(" **\n ");
printf(" ***\n ");
printf(" *****\n ");
}
return 0;
}

PROFESOR LEOPOLDO TÉLLEZ LÓPEZ 14


GUIA DE PROGRAMACIÓN EN LENGUAJE “C”
Podemos observar que el programa anterior es sencillo y realiza 25 dibujos de un triángulo. Otra
instrucción que incluimos en este programa es la instrucción system(“color 17”); que nos sirve para
colocarle color a la pantalla de fondo y color al texto, para el caso que se muestra el color de pantalla
es azul y el del texto es blanco, en seguida se muestra la paleta de colores:

TABLA DE COLORES EN “C”

0 = Negro 8= Gris
1= Azul 9= Azul Claro
2= Verde A= Verde Claro
3= Aguamarina B= Aguamarina Claro
4= Rojo C= Rojo Claro
5= Púrpura D= Púrpura Claro
6= Amarillo E= Amarillo Claro
7= Blanco F= Blanco Brillante

Por Ejemplo, si queremos que, a la hora de ejecutar un código de programa con fondo de color azul
y texto de color rojo, ingresamos: system(“color 14”);donde el 1 sería para el fondo de color azul
y el 4 para el texto de color rojo. (combinaciones recomendadas: 0b,07,17,1c,1a,1b,1e y 1f)
Para limpiar la pantalla se utiliza system(“cls”);

CICLO WHILE
Continuaremos a hora con otro ciclo de repetición while y lo aplicaremos al programa dibuja
triángulo.
DIAGRAMA DE FLUJO DEL CICLO WHILE

INICIO

NO
a < 25

SI
INSTRUCCIONES

FIN

Esta instrucción no sirve también para repetir una parte del código y estará sujeta a una condición
mientras esta sea verdadera el conjunto de instrucciones se seguirá repitiendo, en el momento que
la condición sea falsa se termina el ciclo de repetición.

Para usar este bucle necesitamos primero que nada declarar dos variables de tipo entero una
variable que cuente el número de veces que se realiza que para este caso es (i) y otra que es la
condición (a), para el caso del programa que repite 25 veces el dibujo de un triángulo tenemos que
a diferencia del for aquí tenemos que inicializar la variable que cuenta (i) antes de iniciar el ciclo que
para este caso queda “i=0”, otro cambio importante es que el incremento de la variable va colocada
dentro del ciclo y no como tercer término como en el for, veamos a continuación como queda:

PROFESOR LEOPOLDO TÉLLEZ LÓPEZ 15


GUIA DE PROGRAMACIÓN EN LENGUAJE “C”
int i,a;
i=0;
while (i<25)
{dentro de estos corchetes van las intrusiones que queremos que se repitan 25 veces,
además agregaremos el incremento de nuestro contador i++}
En seguida te muestro el programa completo:
//PROGRAMA DIBUJA UN TRIANGULO 25 veces con while
#include<stdio.h>
int main ()
{ int i,a;
i=0;
while (i<25)
{
system(“color 17”);
printf(" * \n ");
printf(" **\n ");
printf(" ***\n ");
printf(" *****\n ");
i++;
}
return 0;
}
CICLO DO WHILE
Continuaremos a hora con otro ciclo de repetición do while y lo aplicaremos al programa dibuja
triángulo, esta instrucción funciona igual que la anterior solo que aun cuando no se cumpla la
condición el programa se realiza siempre por lo menos una vez.

DIAGRAMA DE FLUJO DEL CICLO DO WHILE


INICIO

INSTRUCCIONES

S
a < 25
I

NO
FIN

Esta instrucción no sirve también para repetir una parte del código y estará sujeta a una condición
mientras esta sea verdadera el conjunto de instrucciones se seguirá repitiendo, en el momento que
la condición sea falsa se termina el ciclo de repetición.
Así mismo cabe mencionar algo muy importante que en este ciclo aun cuando la condición sea falsa
el programa se realizara por lo menos una vez.

Para usar este bucle necesitamos primero que nada declarar una variable de tipo entero que cuente
el número de veces que se realiza, que para este caso es (i) a diferencia del for aquí tenemos que
inicializar la variable que cuenta (i) antes de iniciar el ciclo que para este caso queda “i=0”, otro
cambio importante es que el incremento de la variable va colocada dentro del ciclo do y no como
tercer término como en el for, veamos a continuación como queda:

PROFESOR LEOPOLDO TÉLLEZ LÓPEZ 16


GUIA DE PROGRAMACIÓN EN LENGUAJE “C”
int i,a;
i=0;
do {dentro de estos corchetes van las intrusiones que queremos que se repitan 25 veces,
además agregaremos el incremento de nuestro contador i++}
while (i<25);
En seguida te muestro el programa completo:
//PROGRAMA DIBUJA UN TRIANGULO 25 veces con do while
#include<stdio.h>
int main ()
{ int i,a;
i=0;
do {
system("cls");
system(“color 17”);
printf(" * \n ");
printf(" **\n ");
printf(" ***\n ");
printf(" *****\n ");
i++;
}
while (i<25);
return 0;
}
Mejoremos nuestro programa suma resta con switch agregandole una instrucion que ya vismo que
es el do while con esta podremos ver otra forma de hacer que el programa se este repitiendo y que
incluya una opcion para salir del el.

//PROGRAMA SUMA o RESTA con función SWITCH con DO WHILE


#include<stdio.h>
int main ()
{
int op,x,y,r;

do{ system("cls");
printf("\n Elige la operacion que deseas\n");
printf("1.-Suma\n");
printf("2.- Resta\n");
printf("3.- Salir del programa\n");
scanf("%i",&op);

switch (op)
{
case 1:
system("cls ");
printf("Introduce el primer sumando : ");
scanf("%i",&x); // aquí lee el número y lo almacena en la variable x
printf("Introduce el segundo sumando : ");
scanf("%i",&y); // aquí lee el número y lo almacena en la variable y
r=x+y;
printf("El resultado de la suma es = %i\n ",r);
system("pause");
break;

PROFESOR LEOPOLDO TÉLLEZ LÓPEZ 17


GUIA DE PROGRAMACIÓN EN LENGUAJE “C”
case 2:
system("cls ");
printf("Introduce el primer dato ");
scanf("%i",&x); // aquí lee el número y lo almacena en la variable x
printf("Introduce el segundo dato ");
scanf("%i",&y); // aquí lee el número y lo almacena en la variable y
r=x-y;
printf("El resultado de la resta es = %i\n ",r);
system("pause");
break;

case 3:
printf("********************************************************************\n ");
printf("* HASTA LA VISTA BABY *\n ");
printf("********************************************************************\n ");
break;

default:
printf("No elegiste ninguna opcion valida intentalo nuevamente\n ");
system("pause");
break;
}
}
while (op!=3);
return 0;
}

Realicemos un programa que calcule la raiz cuadrada y tenga un menu donde indique la opcion de
salir del programa.
//PROGRAMA RAIZ CUADRADA con SWITCH y DO WHILE
#include<stdio.h>
#include<math.h>
int main (){
int op,x;
float r;
do{
system ("color 1f");
printf("\n\n Elige la operacion que deseas\n");
printf("1.- Calcular la raiz cuadrada de un numero\n ");
printf("2.- Salir del programa ");
scanf("%i",&op);

switch (op)
{
case 1:
system("cls ");
printf("Introduce el dato para calcular la raiz : ");
scanf("%i",&x);
r=sqrt(x);
printf("La raiz del numero es = %f\n ",r);
system("pause");
break;

PROFESOR LEOPOLDO TÉLLEZ LÓPEZ 18


GUIA DE PROGRAMACIÓN EN LENGUAJE “C”
case 2:
printf("********************************************************************\n ");
printf("* HASTA LA VISTA BABY *\n ");
printf("********************************************************************\n ");
system("pause");
break;

default:
system("cls ");
printf("No elegiste ninguna opcion valida intentalo nuevamente\n ");
system("pause");
break;
}
}
while (op!=2);
return 0;
}
Puedes observar que en el programa anterior se añadieron cambios uno de ellos es que se incluyo
la librería math.h que es la que contiene la instrucion sqrt, a demas podemos observar que la
variable que contiene el resultado ya no se declaro entera si no flontante, estos es porque la raices
no siempres son exactas ( de tipo entero).

FUNCIONES EN “C”
Para completar nuestro curso de programacion en C veremos el empleo de funciones y las
aplicaremos al programa suma resta que ya realizamos, para que podamos observar su utilidad y la
diferencia entre las otras versiones del programa.

Una funcion se identifica con la palabra reservada void, despues de esta va el nombre de nuestra
funcion. Cuando mandamos llamar la funcion en el programa principal esto se relaiza con el nombre
que le pusimos agregandole parentesis y un punto y coma. Ejemplo suma();

//PROGRAMA SUMA o RESTA con SWITCH y DO WHILE con funciones


#include<stdio.h>

void suma() //funcion suma


{ int a,b,r;
printf("Introduce el primer sumando : ");
scanf("%i",&a);
printf("Introduce el segundo sumando : ");
scanf("%i",&b);
r=a+b;
printf("El resultado de la suma es = %i\n ",r);
}

void resta() //funcion resta


{ int a,b,r;
printf("Introduce el sustraendo : ");
scanf("%i",&a);
printf("Introduce el minuendo : ");
scanf("%i",&b);
r=a-b;
printf("El resultado de la resta es = %i\n ",r); }

PROFESOR LEOPOLDO TÉLLEZ LÓPEZ 19


GUIA DE PROGRAMACIÓN EN LENGUAJE “C”
int main (){
int op;

do{ system ("color 1f");


system("cls");
printf("Elige la operacion que deseas\n");
printf("1.- Suma\n");
printf("2.- Resta\n");
printf("3.- Salir del programa\n");
scanf("%i",&op);

switch (op)
{ case 1:
suma();// aquí se llama la función suma
system("pause");
break;

case 2:
resta();// aquí se llama la función resta
system("pause"); PROGRAMA PRINCIPAL
break;
de aquí se llaman todas
case 3: las Funciones que
system("cls"); creamos.
system("color 2f");
printf("******************************************************************\n");
printf("\n");
printf(" __ \n");
printf(" .' '. \n");
printf(" _.-'/ | . \n");
printf(" , _.- , | / 0 `-. \n");
printf(" |. ._.-* `---`_._ .'=========================, \n");
printf(" * '-'` .___.--._)===========================| \n");
printf(" . .' * *\n");
printf(" | /,_.-' * *\n");
printf(" _/ _.'( * HASTA LA VISTA BABY *\n");
printf("/ ,-' . . * *\n");
printf(". . `-' * *\n");
printf(" `-' '==============================' \n");
printf("\n");
system("pause");
break;

default:
system("cls");
printf("No elegiste ninguna opcion valida intentalo nuevamente\n ");
system("pause");
break;
}
}
while (op!=3);
return 0;
}

PROFESOR LEOPOLDO TÉLLEZ LÓPEZ 20

También podría gustarte