Академический Документы
Профессиональный Документы
Культура Документы
Stephenson Prieto
[ El comienzo ]
Aprendiendo Lenguaje C
Gua TeleTriunfador
En esta Leccin
Stephenson Prieto
Compilando
Nuestro primer programa lo guardaremos con el nombre de Programa.C Para codificar nuestros ejemplos utilizaremos el Editor de Texto de nuestro Sistema Operativo GNU/Linux, y los compilaremos con el confiable GCC. Para usar GCC debemos abrir un terminal (pantalla tipo consola).
Lecciones
El Comienzo. Controlando la Salida. Tipos de Datos. Capturando Datos. Operaciones Aritmticas. Selecciones Simples. Selecciones Dobles. Condiciones Lgicas. Selecciones Mltiples. Ciclos Repetitivos determinados. Ciclos Repetitivos indeterminados I. Ciclos Repetitivos indeterminados II.
Apndices
En esta Leccin
Stephenson Prieto
Compilando
Sobre el Autor
Stephenson Prieto es miembro de la Misin Sucre desde sus inicios, primero como triunfador y luego como colaborador activo en diversas reas. En 2008 acuo el trmino TeleTriunfador, definindolo como un triunfador (miembro de Misin Sucre) que utiliza las Tecnologas de Informacin y Comunicacin para los fines de bienestar colectivo que se buscan con esta Misin. Es fundador del Grupo TeleTriunfador y promotor de la Jornadas Nacionales de Soberana Tecnolgica.
En esta Leccin
Stephenson Prieto
[ El comienzo ]
Aprendiendo Lenguaje C
Gua TeleTriunfador
Lecciones
01
En esta Leccin
Stephenson Prieto
[ El comienzo ]
Aprendiendo Lenguaje C
Gua TeleTriunfador
C es un lenguaje de programacin creado en 1972 por Dennis M. Ritchie, Kenneth L. Thompson, Brian Kernighan y en los Laboratorios Bell como evolucin del anterior lenguaje B. Es un lenguaje de programacin de propsito general que ofrece economa sintctica, control de flujo y estructuras sencillas y un buen conjunto de operadores. No es un lenguaje de muy alto nivel y ms bien un lenguaje pequeo, sencillo y no est especializado en ningn tipo de aplicacin. Esto lo hace un lenguaje potente, con un campo de aplicacin ilimitado y sobre todo, se aprende rpidamente. En poco tiempo, un programador puede utilizar la totalidad del lenguaje.
Compilando
Nuestro primer programa lo guardaremos con el nombre de Programa.C Para codificar nuestros ejemplos utilizaremos el Editor de Texto de nuestro Sistema Operativo GNU/Linux, y los compilaremos con el confiable GCC. Para usar GCC debemos abrir un terminal (pantalla tipo consola).
Primer Programa
La mejor forma de aprender es haciendo, a continuacin realizaremos nuestro primer programa en el editor de texto:
Resultado en Pantalla
Si todo sali bien, luego de ejecutado el programa, se debe leer la siguiente frase:
Si no lo haz logrado, revisa la sintaxis del programa y vuelve a compilarlo. Si lo haz logrado entonces Felicitaciones!, vas rumbo a convertirte en un Programador de la Repblica Bolivariana de Venezuela.
02
En esta Leccin
Stephenson Prieto
[ Controlando la Salida ]
Aprendiendo Lenguaje C
Gua TeleTriunfador
En nuestro primer programa ya vimos una instruccin que utilizaremos mucho: La funcin printf.
Programa Propuesto
Usando la instruccin printf y los caracteres de control, realice un cdigo fuente en Lenguaje C que de como resultado la siguiente pantalla:
La funcin printf
La funcin printf toma como argumento una cadena de caracteres, que se imprimen y van encerradas entre comillas dobles " ". En pocas palabras, todo lo que est dentro de las comillas, saldr impreso por pantalla al momento de la ejecucin del programa. En nuestro ejemplo saldr todo a excepcin del smbolo \n el cual indica un cambio de lnea.
Misin Sucre P N F
Programa
Nacional de
Formacin
\a
Alerta
\n
Espacio atrs
Salto de lnea
\b \v
Por si acaso
\r
Retorno de carro
Tabulacin vertical
\t
Tabulacin horizontal
\f
Tal vez en alguna ocasin usted desee mostrar por pantalla algunas comillas o barras. Para no causar conflictos con el compilador debe usar los caracteres de control de la siguiente manera: Comilla simple Barra invertida Comillas dobles
\\
\'
Salto de pgina
\"
03
En esta Leccin
Stephenson Prieto
[ Tipos de Datos ]
Tipos de Datos
Aprendiendo Lenguaje C
Gua TeleTriunfador
A toda variable que se use en un programa, se le debe asociar (generalmente al principio del programa) un tipo de dato especfico.
Programa de Ejemplo
Un tipo de dato define todo el posible rango de valores que una variable puede tomar al momento de ejecucin del programa y a lo largo de toda la vida til del propio programa. Entre los mas comunes tenemos los siguientes:
Tipo de Dato Entero Tipo de Dato Entero Largo Tipo de Dato Real Tipo de DatoReal de doble precisin Tipo de Dato caracter Tambien existen arreglos y cadenas de caracteres
Formato de Escritura
Estos sirven para controlar el formato de salida de datos. %u Imprime Entero sin signo %d Imprime Entero %i Imprime Entero %ld Imprime Entero Largo %f Imprime Real %lf Imprime real de Doble Precisin %e Imprime en forma Exponencial %g Imprime %f o %e en funcin del tamao del nmero %c Imprime Caracter %s Imprime una cadena de caracteres
Tambin puedes controlar el nmero de cifras en la salida, por ejemplo %2.2f muestra 2 en teros y dos decimales
Programa Propuesto
Realice un programa que tenga tres variables (mumpart, salon y prom), el valor de la primera variable ser 25, el de la segunda 10 y el de la tercera 18.5 La salida por pantalla debe ser parecida a la siguiente:
Saln 10 Misin Sucre Participantes 25
04
En esta Leccin
Stephenson Prieto
[ Capturando Datos ]
Identificadores
Aprendiendo Lenguaje C
Gua TeleTriunfador
Los datos que procesar una computadora se deben almacenar en espacios de memoria para utilizarlos posteriormente, a estos espacios se le asigna un nombre para reconocerlos, un identificador.
Programa de Ejemplo
Los identificadores se forman por medio de letras, dgitos y el caracter subrayado (_). Siempre debe comenzar con letras y no debe coincidir con el listado de palabras reservadas del lenguaje. En el caso de Lenguaje C tambin distingue entre maysculas y minsculas
Variables y Constantes
Las variables son objetos que pueden cambiar su valor durante la ejecucin del programa, caso contrario el de las constantes cuyos datos no cambian durante la ejecucin del programa. Para nombrarlos se utilizan identificadores.
La funcin scanf
La funcin scanf de la biblioteca estndar del lenguaje C permite asignar a una o ms variables, uno o ms valores (datos) recibidos desde la entrada estndar (el teclado). En la fucin scanf, por cada argumento (variable) que se le pase, se debe escribir un especificador de formato, que establecer el formato de entrada por teclado del argumento. La forma ms sencilla de escribir un especificador de formato en la funcin scanf es con el carcter tanto por ciento (%) seguido de un carcter de conversin que indique el tipo de dato del argumento. De momento, no es necesario conocer todos los especificadores de formato que se pueden usar en la funcin scanf, pero s, los ms usados, que son los mismos que en la funcin printf:
%d %f %c %s Imprime Entero Imprime Real Imprime Caracter Imprime una cadena de caracteres
Linea 11: Realizamos una operacin matemtica, multiplicando la variable numero por la constante mult, el resultado lo almacenamos en la variable doble. Linea 12: Imprimimos el valor de la variable doble.
Programa Propuesto
Modifique el anterior programa para que adicionalmente a su funcionalidad imprima el triple de la cifra ingresada por teclado. Utilice una constante llamada multri y una variable llamada triple.
05
En esta Leccin
Stephenson Prieto
[ Operaciones Aritmticas ]
Operadores aritmticos
Aprendiendo Lenguaje C
Gua TeleTriunfador
C es un lenguaje donde las operaciones matemticas pueden ser tratadas de forma fcil y eficiente gracias a la versatilidad de los operadores aritmticos y una batera de funciones especificas.
Los operadores aritmticos nos permiten realizar operaciones entre operandos (nmeros, constantes y variables).
+ -
Suma Resta
* /
Multiplicacin Divisin
Mdulo (residuo)
Incremento y decremento
Lenguaje C tambin cuenta con unos operadores propios de incremento (++) y decremento(--). Estos operadores se idearon para simplificar la escritura de frmulas.
Programa de Ejemplo
Programa Propuesto
Un triunfador de Misin Sucre culmina el Trayecto Inicial en la Aldea Universitaria de su municipio. Durante un trimestre curs cuatro materias: Matemticas I. Lenguaje y Comunicacin. Proyecto Nacional y Nueva Ciudadana Alfabetizacin Tecnolgica. El triunfador posee las notas de cada materia, pero necesita que su vocero de aula le diga cual es su promedio. Realice un programa en Lenguaje C que pregunte las notas de cada una de las materias vistas por el triunfador durante el Trayecto Inicial y calcule el promedio de notas del trimestre.
Observacin: Note que una vez realizado este programa servir para este triunfador y para cualquier otro que haya cursado el Trayecto Inicial.
06
En esta Leccin
Stephenson Prieto
[ Selecciones Simples ]
Aprendiendo Lenguaje C
Gua TeleTriunfador
Programa de Ejemplo
Operadores relacionales
Los operadores relacionales se utilizan para comparar dos operandos, que pueden ser nmeros, caracteres, cadenas de caracteres, constantes o variables.
Igual a
Diferente de
Menor que
Mayor que
Programa Propuesto
Una chica desea saber si votar en las elecciones, para eso debes realizar un programa que pregunte la edad. Si es mayor de edad imprimir un mensaje afirmativo, si es menor de edad imprimir un mensaje negativo (debes usar dos estructuras selectivas). El valor referencial de la mayora de edad debe estar en una constante declarada al comienzo del programa.
07
En esta Leccin
Stephenson Prieto
[ Selecciones dobles ]
Aprendiendo Lenguaje C
Gua TeleTriunfador
Programa Propuesto
Una Escuela Bolivariana est diseando un software educativo llamado Aprendiendo Matemticas. El Ministerio de Educacin requiere de su ayuda para programar uno de los mdulos en Lenguaje C. El programa debe preguntar dos nmeros para ser ingresados por teclado. Posteriormente el estudiante debe teclear el numero 1 si desea sumarlos o el nmero 2 si desea restarlos. La ejecucin del programa debe ser parecida a la siguiente pantalla:
Escuela Bolivariana
Programa de Ejemplo
Ingrese un numero:
Aprendiendo Matemticas
08
En esta Leccin
Stephenson Prieto
[ Condiciones Lgicas ]
Operadores lgicos
&& II !
Conjuncin Disyuncin Negacin
Aprendiendo Lenguaje C
Gua TeleTriunfador
(el equivalente de la palabra Y en pseudocdigo o AND de otros lenguajes) (el equivalente de la palabra O en pseudocdigo u OR de otros lenguajes)
Programa de Ejemplo
Programa Propuesto
El Banco del Pueblo necesita programar un dispensador de boletos electrnicos para esperar turno en el banco. El cdigo fuente del software que manejar el equipo estar codificado en Lenguaje C.
Ingrese su edad:
Bienvenido
Se requiere que el computador pregunte la edad del cliente y seguidamente pregunte si posee alguna discacidad fsica. Si el cliente tiene mas de 60 aos o posee alguna discapacidad el computador debe direccionarlo a la Taquilla nmero 1, en caso contrario lo direccionar a cualquier otra taquilla.
Discapacitado Presione 1
09
En esta Leccin
Stephenson Prieto
[ Selecciones Mltiples ]
Aprendiendo Lenguaje C
Gua TeleTriunfador
Lenguaje C permite la toma de decisiones no slo mediante estructuras algortmicas selectivas simples, sino tambin mltiples
Programa de Ejemplo
Programa Propuesto
Una cooperativa de agricultores realizan unas cosechas de papas, cebollas, tomates y maz. El valor de cada kilo es papas 5.000Bs, cebollas 9.000Bs, tomates 8.000Bs y maz 7.000Bs. Debido a un crdito especial para automatizar sus procesos, los agricultores han adquirido unas computadoras pero necesitan un programa especfico que calcule la cantidad de dinero que deben pedir por su cosecha.
Cooperativa La Pachamama
1- Papas. 2- Cebollas. 3- Tomates. 4- Maz.
10
En esta Leccin
Stephenson Prieto
Aprendiendo Lenguaje C
Gua TeleTriunfador
Durante la solucin de Problemas, es muy comn encontrar operaciones que deben ejecutarse un determinado nmero de veces.
Programa Propuesto
Realice un programa codificado en lenguaje C, donde se pregunte a 15 alumnos sus edades, posteriormente se debe mostrar en pantalla el promedio de edad de los alumnos del saln. Este programa se ejecutar en una Escuela Bolivariana. Recuerde utilizar para este programa la estrucutura repetitiva for.
Esta estructura algortmica se utiliza para repetir un conjunto de instrucciones un nmero definido de veces.
Programa de Ejemplo
Extra
Usando lo aprendido en lecciones pasadas, agrguele las siguientes funcionalidades al programa: Si el promedio de edad es menor a 13 aos, emitir un mensaje en pantalla que diga que la poblacin es de nios y nias, en caso contrario el mensaje dir que son adolescentes.
11
En esta Leccin
Stephenson Prieto
Aprendiendo Lenguaje C
Gua TeleTriunfador
Durante la solucin de Problemas, es muy comn encontrar operaciones que deben ejecutarse un determinado nmero de veces.
Esta estructura algortmica se utiliza permite repetir un conjunto de instrucciones. Sin embargo el nmero de veces que debe repetirse depende de las proposiciones que tenga el ciclo. Cada vez que corresponde iniciar el ciclo se evala una condicin, si sta es verdadera (diferente de cero) se contina con la ejecucin, de otra forma se detiene.
Programa de Ejemplo
Programa Propuesto
Un establecimiento de Mercal tiene una cantidad limitada de pollos para venderlo a la comunidad, slo se vender el producto hasta agotarse la existencia. Disee un programa codificado en Lenguaje C que pregunte si hay pollos en existencia, en caso de ser afirmativo se debe vender una unidad. Para efectos del programa, al momento de preguntar la existencia de pollos, un 1 indicar SI y un 2 indicar NO. Al final debe salir un mensaje que diga Existencia Agotada
Extra
Usando lo aprendido en lecciones pasadas, agrguele las siguientes funcionalidades al programa: Nmero de pollos vendidos.
12
En esta Leccin
Stephenson Prieto
Aprendiendo Lenguaje C
Gua TeleTriunfador
Durante la solucin de Problemas, es muy comn encontrar operaciones que deben ejecutarse un determinado nmero de veces.
Programa de Ejemplo
Programa Propuesto
Un Mercal itinerante se establece en una populosa barriada. Tiene una cantidad ilimitada de potes de leche en polvo para venderlo a la comunidad, slo se vender el producto hasta que no quede gente haciendo cola. Disee un programa codificado en Lenguaje C que pregunte si hay gente en cola, en caso de ser afirmativo se debe vender un pote. Para efectos del programa, al momento de preguntar la existencia de potes, un 1 indicar SI y un 2 indicar NO.
Extra
Usando lo aprendido en lecciones pasadas, agrguele las siguientes funcionalidades al programa: Nmero de potes vendidos. Cantidad de dinero recogido (a razn de 16Bs el pote).
En esta Leccin
Stephenson Prieto
[ El comienzo ]
Aprendiendo Lenguaje C
Gua TeleTriunfador
Apndices
En esta Leccin
Apndice 1
Stephenson Prieto
Leccin 10
Ejemplo Propuesto
Leccin 1
Ejemplo Propuesto
Leccin 2
Ejemplo Propuesto
Leccin 4
Ejemplo Propuesto
Leccin 5
Ejemplo Propuesto
Leccin 6
Ejemplo Propuesto
Leccin 7
Ejemplo Propuesto
Leccin 8
Ejemplo Propuesto
Leccin 9
Ejemplo Propuesto
Leccin 11
Ejemplo Propuesto
Leccin 12
Ejemplo Propuesto
En cada clase (a excepcin de la 1era y la segunda) el ejercicio de ejemplo vale 05 puntos y el ejercicio propuesto vale 15, el estudiante que en cada clase hace los dos ejercicios correctamente tiene 20 puntos. Al final del trimestre se promediaran las notas de todas las clases. Las tres ltimas lecciones tienen un apartado de extra, esto permitir agregar puntos a juicio del profesor.
En esta Leccin
Apndice 2
Stephenson Prieto
El estndar ANSI C define un conjunto de funciones, as como tipos relacionados y macros, que son proporcionados para la implementacin. Todas las libreras son declaradas en un fichero cabecera. Para que sea visible al programa, se aade el comando del preprocesador #include. Por ejemplo: #include <stdio.h>; Cada fichero de cabecera se denomina librera. En la siguiente lista mostraremos la Librera junto con la descripcin: assert.h Contiene una macro para el diagnstico dentro de los programas. ctype.h Contiene varias funciones para comprobacin de tipos y transformacin de caracteres. errno.h Contiene varias macros usadas para informar de errores. limits.h Contienen varias macros que definen constantes para el tamao de tipo enteros. float.h Contienen varias macros que definen constantes para el tamao de tipo flotante. locale.h Contienen varias macros, funciones y tipos para unidades locales, como unidad monetaria, tiempo, dgitos, etc. math.h Contiene una macro y varias funciones matemticas. setjmp.h Contienen declaraciones que proporcionan una forma de evitar la secuencia normal de llamada y regreso de funciones. signal.h Contiene un tipo, dos funciones y varias macros para manejar condiciones excepcionales que aparecen durante la ejecucin, tal como una seal de interrupcin de una fuente externa o un error en la ejecucin. stdarg.h Contiene un tipo y tres macros que proporcionan recursos para recorrer una lista de argumentos de funcin de tamao y tipo desconocido. stddef.h Contiene varios tipos y macros que tambin estn definidas en otras libreras, como size_t. stdio.h Contiene tipos, macros y funciones para la realizacin de tareas de E/S. stdlib.h Contiene tipos, macros y funciones para la conversin numrica, generacin de nmeros aleatorios, bsquedas y ordenacin, gestin de memoria y tareas similares. string.h Contiene tipos, macros y funciones para la manipulacin de cadenas de caracteres. time.h Contiene tipos, macros y funciones para la la manipulacin de informacin sobre fechas y horas.
En esta Leccin
Stephenson Prieto
Aprendiendo Lenguaje C
Gua TeleTriunfador