El lenguaje de programación C es uno de los más antiguos (se desarrolló en los años 70), pero sigue siendo muy potente gracias a su sencillez. Aprender a programar en C también es una excelente forma de ingresar a lenguajes más complejos, además el conocimiento que ganes te será útil en casi todos los lenguajes de programación y puede ayudarte a desarrollar aplicaciones. Para aprender a programar en C, lee los pasos a continuación.
Pasos
-
Descarga e instala un compilador. El código C necesita que lo compile un programa que interpreta el código en señales que la computadora pueda entender. Por lo general, los compiladores son gratuitos y hay una variedad disponible para diferentes sistemas operativos.
- Para Windows, prueba Microsoft Visual Studio Express o MinGW.
- Para Mac, XCode es uno de los mejores compiladores de C.
- Para Linux, GCC es una de las alternativas más populares.
-
Conoce los conceptos básicos. El lenguaje de programación C es uno de los más antiguos y puede ser muy potente. Fue diseñado para los sistemas operativos Unix, pero se ha expandido a casi todos los demás. La versión moderna de C es C++ .
- El C consta básicamente de funciones, en las cuales puedes utilizar variables, sentencias condicionales y bucles para almacenar y manipular datos .
-
Examina algunos códigos básicos. Échale un vistazo al programa (muy) básico a continuación para tener una idea clara de cómo algunos de los diversos aspectos del lenguaje trabajan en conjunto y de cómo funcionan los programas.
#include <stdio.h>int main() { printf ( "Hola, ¡Mundo! \n " ); getchar (); return 0 ; }
- El comando # include se produce antes de que el programa inicie y carga bibliotecas que contienen las funciones que necesitas. En este ejemplo, stdio.h nos permite usar las funciones printf() y getchar() .
- El comando int main() le dice al compilador que el programa está ejecutando la función llamada "main" y que dará como resultado un número entero cuando termine. Todos los programas en C ejecutan una función "main".
- Las { } indican que todo lo que se encuentra dentro de ellas es parte de la función. En este caso, indican que todo lo que está dentro es una parte de la función "main".
- La función printf() muestra los contenidos de los paréntesis en la pantalla del usuario. Las comillas aseguran que todo lo que esté en el interior se muestre literalmente. La secuencia \n le dice al compilador que mueva el cursor a la siguiente línea.
- El ; indica el final de la línea. La mayoría de las líneas del código C necesita terminar con un punto y coma.
- El comando getchar() le dice al compilador que espere la pulsación de un botón antes de continuar. Esto es útil porque muchos compiladores ejecutarán el programa e inmediatamente cerrarán la ventana. Esto evita que el programa finalice hasta que se presione una tecla.
- El comando return 0 indica el término de la función. Ten en cuenta que la función "main" es una función int . Esto significa que se necesitará dar como resultado un número entero cuando el programa finalice. Un "0" indica que el programa se ha desarrollado correctamente; cualquier otro número significará que hubo un error en el programa.
-
Compila el programa. Ingresa el código en tu editor de códigos y guardarlo como un archivo "*.c". Compílalo en tu compilador, por lo general, haciendo clic en el botón "Ejecutar" ( Build o Run ).
-
Siempre comenta en tu código. Los comentarios son parte del código que no está compilado, pero te permiten explicar lo que ocurre. Esto es útil para recordarte para qué sirve tu código y para ayudar a otros desarrolladores que podrían verlo.
- Para comentar en C escribe /* al comienzo del comentario y */ al final.
- Comenta en todo menos en las partes más básicas del código.
- Los comentarios pueden servir para retirar rápidamente partes de tu código sin eliminarlas. Simplemente encierra el código que quieres excluir con etiquetas de comentario y luego compila. Si quieres volver a agregar un código, quita las etiquetas.
Anuncio
-
Comprende la función de las variables. Las variables permiten almacenar datos proporcionados por los cálculos en el programa o ingresados por el usuario. Antes de poder usar las variables, es necesario definirlas y hay varios tipos de los cuales elegir.
- Algunas de las variables más comunes incluyen int , char y float . Cada una almacena un tipo distinto de datos.
-
Aprende a declarar las variables. Las variables deben ser establecidas o "declaradas" antes de que el programa pueda usarlas. Puedes declarar una variable al ingresar el tipo de datos seguido por el nombre de la variable. Por ejemplo, estas son algunas declaraciones válidas de variables:
float x ; char nombre ; int a , b , c , d ;
- Ten en cuenta que puedes declarar múltiples variables en la misma línea, siempre que sean del mismo tipo. Simplemente separa los nombres de las variables con comas.
- Al igual que muchas líneas en C, cada línea de declaración de variable debe terminar con un punto y coma.
-
Debes saber dónde declarar variables. Las variables deben declararse al principio de cada bloque de código (las partes de tu código encerradas entre "{}"). Si quieres declarar una variable más adelante en el bloque, el programa no funcionará correctamente.
-
Utiliza variables para almacenar las entradas del usuario. Ahora que conoces los conceptos básicos de cómo funcionan las variables, puedes escribir un programa sencillo que almacene las entradas del usuario. Deberás utilizar otra función en el programa llamada scanf . Esta función busca la entrada proporcionada para cada valor específico.
#include <stdio.h> int main () { int x ; printf ( "Escribe un número: " ); scanf ( "%d" , & x ); printf ( "Escribiste %d" , x ); getchar (); return 0 ; }
- La cadena de caracteres "%d" le indica a la función scanf que busque números enteros en las entradas del usuario.
- El signo & antes de la variable x le dice a la función scanf dónde encontrar la variable con el fin de cambiarla y almacena el número entero ubicado en ella.
- El comando final printf le vuelve a mostrar el número entero ingresado al usuario.
-
Manipula las variables. Puedes usar expresiones matemáticas para manipular los datos que has almacenado en tus variables. La diferencia más importante en las expresiones matemáticas que hay que recordar es que un simple = establece el valor de la variable mientras que == compara los valores en cada lado para ver si son iguales.
x = 3 * 4 ; /* establece "x" en 3 * 4 o 12 */ x = x + 3 ; /* añade 3 al valor original de "x" y establece el valor nuevo como la variable */ x == 15 ; /* verifica si "x" es igual a 15 */ x < 10 ; /* verifica si el valor de "x" es menor que 10 */
Anuncio
-
Comprende los conceptos básicos de las sentencias condicionales. Las sentencias condicionales son las que dirigen la mayoría de los programas y que están determinadas para ser TRUE (verdaderas) o FALSE (falsas) y luego actúan en base al resultado. La sentencia más básica es IF .
- Las sentencias TRUE y FALSE funcionan en C de forma distinta a lo que puedes estar acostumbrado. Las sentencias TRUE siempre terminan con un valor diferente de cero. Cuando realices las comparaciones, si el resultado es TRUE (verdadero), entonces la respuesta es "1". Si el resultado es FALSE (falso), entonces el resultado es "0". Comprender esto te ayudará a ver la manera en la que se procesan las sentencias IF.
-
Aprende los operadores condicionales básicos. Las sentencias condicionales giran en torno al uso de operadores matemáticos que comparan valores. La siguiente lista contiene los operadores condicionales usados con más frecuencia:
> /* mayor que */ < /* menor que */ >= /* mayor que o igual a */ <= /* menor que o igual a */ == /* igual a */ != /* diferente de */
10 > 5 TRUE 6 < 15 TRUE 8 >= 8 TRUE 4 <= 8 TRUE 3 == 3 TRUE 4 != 5 TRUE
-
Escribe una sentencia IF básica. Puedes usar las sentencias IF para determinar lo que el programa debe hacer después de evaluar la sentencia. Puedes combinarla con otras sentencias condicionales más adelante para crear opciones múltiples más complejas, pero por ahora escribe una simple para acostumbrarte a ella.
#include <stdio.h> int main () { if ( 3 < 5 ) printf ( "3 es menor que 5" ); getchar (); }
-
Utiliza sentencias ELSE o ELSE IF para expandir tus condiciones. Puedes desarrollar sentencias IF utilizando las sentencias ELSE y ELSE IF para manejar resultados diferentes. Las sentencias ELSE funcionan si la sentencia IF es falsa. Las sentencias ELSE IF te permiten incluir múltiples sentencias IF en un bloque de código para manejar varios casos. Mira el ejemplo a continuación para ver cómo interactúan.
#include <stdio.h> int main () { int age ; printf ( "Escribe tu edad actual: " ); scanf ( "%d" , & age ); if ( age <= 12 ) { printf ( "¡Solo eres un niño! \n " ); } else if ( age < 20 ) { printf ( "¡Ser un adolescente es genial! \n " ); } else if ( age < 40 ) { printf ( "¡Aún eres joven de corazón! \n " ); } else { printf ( "Con la edad viene la sabiduría. \n " ); } return 0 ; }
- El programa toma la entrada del usuario y la lleva a través de las sentencias IF. Si el número cumple con la primera sentencia printf , entonces el programa da esa como resultado. Si no, pasa a través de las demás sentencias ELSE IF hasta que encuentre una que se aplique. Si no coincide con ninguna de ellas, pasa a la sentencia ELSE al final.
Anuncio
-
Aprende el funcionamiento de los bucles. Los bucles son uno de los aspectos más importantes de la programación, ya que permiten repetir bloques de código hasta que se cumplan las condiciones específicas. Esto facilita la implementación de acciones repetitivas y evita que debas escribir sentencias condicionales nuevas cada vez que quieras hacer algo.
- Existen tres tipos de bucles: FOR (para), WHILE (mientras) y DO...WHILE (hacer-mientras).
-
Utiliza un bucle FOR. Este es el tipo de bucle más común y útil. Continuará ejecutando la función hasta que las condiciones establecidas en los bucles FOR se cumplan. Los bucles FOR requieren tres condiciones: inicializar la variable, la condición a cumplir y la forma en la que dicha variable debe actualizarse. Si no necesitas todas estas condiciones, aún necesitarás dejar un espacio en blanco con un punto y coma, de lo contrario, el bucle se ejecutará por siempre. [3] X Fuente de investigación
#include <stdio.h> int main () { int y ; for ( y = 0 ; y < 15 ; y ++ ;){ printf ( "%d \n " , y ); } getchar (); }
- En el programa mostrado arriba, y se establece en 0 y el bucle continúa siempre y cuando el valor de y sea menor que 15. Cada vez que el valor de y se muestre, se añade 1 a dicho valor y el bucle se repite. Una vez que y = 15, el bucle se detendrá.
-
Utiliza un bucle WHILE. Los bucles WHILE son más simples que los FOR. Solo tienen una condición y siempre y cuando dicha condición sea verdadera, el bucle funcionará. No necesitas inicializar o actualizar la variable, aunque puedes hacerlo en la estructura principal del bucle.
#include <stdio.h> int main () { int y ; while ( y <= 15 ){ printf ( "%d \n " , y ); y ++ ; } getchar (); }
- El comando y++ añade 1 a la variable y cada vez que se ejecuta el bucle. Una vez que y llegue a 16 (recuerda que este bucle continúa siempre que y sea menor o igual a 15), se detiene.
-
Utiliza un bucle DO.. .WHILE. Este es muy útil para bucles que quieras ejecutar al menos una vez. En los bucles FOR y WHILE, la condición se verifica al principio, lo que significa que podría no pasar y fallar inmediatamente. Los bucles DO...WHILE verifican las condiciones al final del bucle, asegurando que se ejecute al menos una vez.
#include <stdio.h> int main () { int y ; y = 5 ; do { printf ( "¡Este bucle está en ejecución! \n " ); } while ( y != 5 ); getchar (); }
- Este bucle mostrará el mensaje aun cuando la condición sea FALSE (falsa). La variable y se establece en 5 y el bucle WHILE se configura para ejecutarse cuando y sea diferente de 5, de modo que el bucle termine. El mensaje ya fue mostrado dado que la condición no se verifica hasta el final.
- El bucle WHILE dentro de uno DO...WHILE debe terminar con un punto y coma. Esta es la única ocasión en la que un bucle termina de esta manera.
Anuncio
-
Aprende los conceptos básicos de las funciones. Las funciones son bloques de código independientes que pueden utilizarse en otras partes del programa. Ellas facilitan la repetición del código y ayudan a que el programa sea más fácil de leer y de modificar. Las funciones pueden incluir todas las técnicas mencionadas previamente en el presente artículo e incluso otras funciones.
- La línea main() al principio de todos los ejemplos anteriores es una función, al igual que getchar() .
- Las funciones son imprescindibles para formar códigos eficientes y fáciles de leer. Haz un buen uso de ellas para optimizar tu programa.
-
Comienza con un esquema. Las funciones se crean mejor cuando realizas un esquema de lo que quieres lograr antes de comenzar con la programación real. La sintaxis básica para las funciones es "return_type nombre (parámetro1, parámetro2, etc.);". Por ejemplo, para crear una función que añada dos números:
int add ( int x , int y );
- Esto creará una función que añada dos enteros ( x e y ) y luego da como resultado la suma como un entero.
-
Agrega la función a un programa. Puedes usar el esquema para crear un programa que tome dos enteros que el usuario ingrese y que luego los sume. El programa definirá la manera en la que opere la función "adicional" y la usará para manipular los números ingresados.
#include <stdio.h> int add ( int x , int y ); int main () { int x ; int y ; printf ( "Escribe los dos números que se sumarán: " ); scanf ( "%d" , & x ); scanf ( "%d" , & y ); printf ( "La suma de los números es %d \n " add ( x , y ) ); getchar (); } int add ( int x , int y ) { return x + y ; }
- Ten en cuenta que el esquema de la función se ubica en la parte superior del programa. Esto le dice al compilador lo que debe esperar cuando se ejecuta la función y qué dará como resultado. Es únicamente necesario si quieres definir la función más adelante en el programa. Puedes definir add() antes de la función main() y el resultado sería el mismo.
- La operatividad real de la función se define en la parte inferior del programa. La función main() recoge los enteros del usuario y los envía a la función add() para que los procese. Por último, la función add() devuelve los resultados a main() .
- Ahora que se ha definido la función add() , puede ejecutarse en cualquier parte del programa.
Anuncio
-
Busca un libro acerca de la programación en C. El presente artículo cubre los conceptos básicos, pero solo trata los puntos superficiales de la programación en C y todo el conocimiento relacionado. Un buen libro de referencia te ayudará a resolver problemas y a ahorrarte muchos problemas durante el proceso.
-
Únete a algunas comunidades. Hay muchas comunidades, tanto virtuales como en el mundo real, dedicadas a la programación y a todos los lenguajes relacionados. Busca a algunos programadores en C con ideas similares a las tuyas con quienes intercambiar códigos e ideas y llegarás a aprender mucho más.
- Asiste a algunos "hackatones" si es posible. Estos son eventos donde los equipos y personas tienen límites de tiempo para inventar programas y soluciones, lo que a menudo desarrolla una gran cantidad de creatividad. De esa forma, puedes conocer a muchos programadores buenos, además ten en cuenta que este tipo de eventos se lleva a cabo regularmente en todo el mundo.
-
Toma algunas clases. No necesitas volver a la escuela para obtener un título en ciencias de la computación, pero tomar unas cuantas clases puede hacer maravillas en tu aprendizaje. No hay nada más útil que la ayuda práctica de personas experimentadas en la materia. A menudo, puedes encontrar clases en centros comunitarios locales y en instituciones de educación superior, además algunas universidades te permitirán asistir como oyente a sus programas en ciencias de la comunicación sin tener que inscribirte.
-
Considera la posibilidad de aprender programación en C++. Una vez que hayas aprendido a programar en C, no sería mala idea aprender programación en C++. Esta es la versión más moderna de la programación en C y te brinda más flexibilidad. C++ está diseñado pensando en la manipulación de objetos y si lo dominas, puedes crear mejores programas para prácticamente cualquier sistema operativo.Anuncio
Consejos
- Siempre agrega comentarios en tus programas. Hacerlo no solo ayudará a otros que podrían echarle un vistazo a su código fuente, sino que también te permite recordar lo que escribes y por qué lo haces. Podrías saber lo que haces en el momento en el que escribes tu código, pero luego de dos o tres meses, no recordarás mucho.
- Siempre recuerda terminar una sentencia como printf(), scanf(), etc. con un punto y coma (;), pero nunca los introduzcas después de una sentencia de control como los bucles IF, WHILE o FOR
- Cuando te topes con un error de sintaxis al momento de compilar, si no sabes qué hacer, busca en Google (o en algún otro motor de búsqueda) el error que tuviste. Lo más probable es que alguien más haya experimentado el mismo problema y haya publicado una solución.
- Tu código fuente debe tener una extensión *.c de modo que tu compilador pueda entender que es un archivo de origen C.
- Siempre recuerda que la práctica hace al maestro. Mientras más practiques sobre programación, mejor serás. Así que empieza con programas simples y cortos hasta que lo domines y, una vez que tengas la confianza suficiente, puedes pasar a programas más complejos.
- Trata de aprender la construcción lógica. Esto te ayudará a superar los diferentes problemas que aparecen al escribir un código.
Anuncio
Referencias
Anuncio