¿Cuál es la forma correcta de mejorar mi programación práctica en C?

CS50 es un curso en la Universidad de Harvard. Ellos enseñan C en ese curso. Todos estos conjuntos de problemas, junto con las conferencias y los tutoriales, están disponibles en http://cs50.tv/2010/fall/#l=psets. Los conjuntos de problemas están inspirados en la CS del mundo real, como la criptografía, el análisis forense (recuperación de datos) , y el juego. También hay otros pequeños psets fáciles, uno está relacionado con la verificación de números de tarjetas de crédito y otros 3 psets. Pero los psets relacionados con criptografía, análisis forense, juegos son muy exigentes y divertidos de hacer, y se relacionan con varios dominios de la informática. Seguir el esquema de los psets y las cosas que aprenderá para resolverlos.

  • Conjunto de problemas forenses. Aquí recuperará los archivos eliminados de una unidad de disco. Leerá el disco poco a poco. Esto implica la creación de ADT. Punteros, muchos de ellos.
  • Conjunto de problemas de juego . Aquí implementarás el juego de Sudoku en la terminal usando una biblioteca de Gráficos. Este pset es muy divertido de hacer. Y te da una comprensión básica de Gráficos, y trabajar con bibliotecas.
  • Diccionario conjunto de problemas. Implementarás una búsqueda de diccionario funcional. Esto involucra estructuras de datos, hash, árboles binarios. Aprenderás a manejar la memoria completamente, si terminas esto.
  • Y hay pset de criptografía. Y algunos psets no tan difíciles.

Este es un curso excelente. La forma en que el profesor David J Malan lo enseña es muy atractiva y divertida. Mi viaje de programación comenzó con este curso.
Si el recurso es útil para que votes :), para que otros también puedan encontrar esto.
Buena suerte

La forma más rápida y fácil de aprender a programar C en Mac o Windows .

Curso enlace- Programación en C para principiantes, aprenda C en diez sencillos pasos en Windows, Mac OS X o Linux

Este curso te enseñará a programar el lenguaje C desde cero. Aprenderá todo, desde los fundamentos de la programación hasta las complejidades de los punteros, las direcciones y el archivo IO. Tal vez usted ha tratado de dominar C antes pero ha fallado. O quizás eres nuevo en C o nuevo en programación. Si es así, este es el curso para ti!

C es uno de los lenguajes de programación más importantes. Se utiliza para programar aplicaciones de escritorio, compiladores, herramientas y utilidades e incluso dispositivos de hardware. El lenguaje C es rápido y eficiente, pero puede ser difícil de aprender. A menos que uses este curso. Este curso comienza con una suave introducción a C, pero rápidamente pasa a explicar algunas de sus características más confusas: todo, desde las reglas de “alcance” de C hasta la curiosa conexión entre matrices y direcciones de memoria. Al final del curso, tendrá una comprensión profunda del lenguaje C en sí y también de la “arquitectura” subyacente de su computadora.

Lo que vas a aprender:

  • Los fundamentos de la programación – desde el principio.
  • Cómo programar en una Mac o en Windows
  • Los detalles esenciales del lenguaje C
  • Temas avanzados, como la asignación de memoria, la pila y el montón, y el archivo binario IO

Quién debe tomar el curso

  • Principiantes: si nunca ha codificado anteriormente, puede aprender C paso a paso
  • Programadores que cambian a C desde otro lenguaje como Java, Ruby o Python
  • Desarrolladores multiplataforma: hay compiladores de C para todos los principales sistemas operativos
  • Cualquiera que necesite programar C ++ u Objective-C. El lenguaje C es el lugar para comenzar.

¿Quién es el público objetivo?

  • Los recién llegados a la programación
  • Programadores de otros lenguajes que quieren una entrada rápida a C
  • Cualquiera que necesite dominar C como base para usar C ++ o Objective-C

Gracias por A2A .

Como en 2015, soy un gran fanático del lenguaje C.

Aunque he probado muchos otros idiomas, C sigue siendo uno de los favoritos. Recientemente, Google Go / golang también se convirtió en mi favorito.

En el trabajo, han optado por utilizar Google Go en lugar de C.

Puede ser, deberías ver qué es Google Go / golang como alternativa al lenguaje C. Vea a continuación los enlaces:
# The Go Programming Language
# golang en 1 hora

Es difícil resolver todos los problemas algorítmicos en C languagedo en C ya que es de bajo nivel. Pero si lo haces, aprenderás mucho. Pero, una vez más, es mucho más fácil hacerlo en JavaScript o en lenguajes Python.

Ahora solo sobre C, así es como practico el lenguaje C:
1. Si conoces tu entorno como IDE (donde escribes tu código) y SO (como Unix o Windows) te ayudará mucho. Puedes usar un ide como NetBeans para C / C ++, es bueno. Descarga la página en netbeans.org. Linux como Ubuntu podría ser bueno para un programador.
2. Reservar como Let Us C de Yashwant Kanetkar, ver enlace a continuación, ayudará mucho, tiene un inglés muy simple y una explicación muy detallada: Compre Let Us C Reserve en línea a precios bajos en la India
3. Aprenda las estructuras de datos (pila, cola, lista enlazada, árbol y gráfico) y varios algoritmos de varios sitios. Una buena es GeeksforGeeks | Un portal informático para geeks.
4. Aprender a implementar mapas en lenguaje C. Aprende de los objetos de JavaScript.
5. Pruebe los problemas de calentamiento en HackerRank para saber cómo programar y probar bien. Haga clic en este enlace: HackerRank. Obtener un buen rango en HackerRank tiene que ver con la planificación, no te quedes estancado, continúa con otra pregunta, por supuesto, el aprendizaje es mejor en HackerRank, ya que te hacen un buen viaje de problemas pequeños a difíciles / avanzados, me gustó mucho.
6. Si es posible, intente involucrarse en un proyecto de C en GitHub: haga clic en este enlace: cree mejor el software, juntos

Si lo hace en la secuencia, en su mayoría puede trabajar en la mayoría de los proyectos que tienen algunos estándares de codificación.

Consejo práctico:
Si estoy empezando a aprender mi primer lenguaje de programación en 2015, aprenderé Google Go en lugar de C. Google Go aumentará su productividad en el trabajo, lo digo por experiencia. Solo asegúrate de que puedes hacer lo que quieres hacer en Google Go finalmente, es decir, las funciones, si es compatible o no. Vea los enlaces mencionados anteriormente para Google Go.

Por favor, siéntase libre de dejar un comentario.
La mejor de las suertes.

Hola, soy parte del equipo de Marketing y Comunicación en HackerEarth.

HackerEarth es un centro de programadores de todo el mundo. Para ayudar a las personas a aprender a programar, tenemos una estructura de curso llamada CodeMonk. Tenemos la intención de hacer que la Programación de Aprendizaje sea lo más atractiva y efectiva posible.

Aquí está el Porqué Code Monk es un gran lugar para aprender Programación:

  1. Enfoque estructurado : la mayoría de los artículos o fuentes que obtenemos en google no tienen un contenido estructurado claro donde podamos hacer un seguimiento de nuestro progreso. El curso comienza a partir de los conceptos básicos del algoritmo y pasa gradualmente a conceptos de programación más complicados.
  2. Aprender haciendo: a cada tema también le seguirá un breve desafío de programación para ayudarlo a evaluar su comprensión de los conceptos tratados en el tema. Y hay editoriales y otras notas.

Lo lanzamos en 2015 y tuvimos más de 14K participantes de todo el mundo. Los desafíos de HackerEarth que se llevan a cabo todos los meses te ayudarán a obtener un mejor dominio del dominio.

  • Fácil – Retos fáciles y simples, ideal para principiantes.
  • Choque : desafío de nivel intermedio de 24 horas de duración, con problemas que van desde el nivel medio al difícil.
  • Circuitos : un desafío de 8 días que tiene una combinación de desafíos de programación fáciles, medios y difíciles.

Estos desafíos lo ayudan a poner sus habilidades a prueba contra programadores competitivos de todo el mundo, lo que lo ayuda a mejorar sus habilidades de programación.

Algunos Ref:

  1. Libro de texto – El lenguaje de programación C, 2ª edición, por Brian Kernighan y Dennis Ritchie
  2. Geeks for Geeks C Lenguaje de programación – GeeksforGeeks
  3. Artículos sobre las palabras clave
  4. Foro sobre StackOverflow

Posteriormente podrás practicar sobre los siguientes conceptos:

  1. Punteros, Estructuras de Datos.
  2. Herramientas de diseño como Sparx, Rational Tools.
  3. Herramientas de memoria como IBM Purify, también xcode le da un buen uso de memoria.
  4. Únase a los proyectos de github, intente con los pequeños kits integrados. (Microsoft, Intel y muchos de ellos en estos días están impulsando los desarrollos en el extremo de IoT (internet de las cosas), puede obtener los tableros de desarrolladores. Página en intel.com

Exactamente cómo empezar con C hoy

Bien, vamos al grano: quieres aprender a programar en C y quieres saber exactamente qué debes hacer, ahora mismo.

No se necesita ningún conocimiento especial para aprender C, y si usted es un aprendiz independiente, probablemente pueda aprender C de los tutoriales en línea o de los libros.

Si puedes tomar una ruta solo por la web:

  1. Configura el compilador para que puedas ejecutar tu código
  2. Comience nuestro tutorial de C ++
  3. Resolver problemas de programación de la práctica.

Si prefieres los libros físicos puedes aprender de:

  1. El lenguaje de programación C (Autor: Kernighan & Ritchie)
  2. ANSI C – Made Easy (Autor: Herbert Schildt)

Si tiene problemas, eche un vistazo a estos artículos:

1. Maneras de enseñarte a codificar .

2. Consejos para aprender a programar más rápido .

La forma correcta de mejorar su programación práctica en C haciendo más práctica …

Hola
Bueno, siento que llego bastante tarde para responder, pero aún así responderé para que pueda ayudarte a ti y a otros que buscan las mismas palabras clave más adelante.

1) Tutoriales en video (en realidad odio leer copias impresas (tal vez porque soy tan estúpido que no puedo leerlas), por eso considero que los tutoriales en video son la mejor manera de aprender cosas porque son fáciles, interactivas y rápidas. ).

Videos y tutoriales de thenewboston

2) Aprenda y pruebe en línea (este sitio web contiene un compilador incorporado para que no tenga que abrir GCC, puede aprender directamente y probar sus habilidades en línea en un solo lugar).

Aprende C – Tutorial interactivo de C gratis

3) Un poco más para probar

Aprender c ++

Programación en C – Aprender programación en C y C ++ – Cprogramming.com

Y ahora lo último y lo más importante,

4) Obtener la certificación (Pruebe este curso y complételo en un momento dado, si puede completarlo, obtendrá un certificado que también es gratuito, y este certificado es valioso, ya que se otorgará bajo el nombre de un profesor de universidades de renombre).

Página en coursera.org

Feliz codificacion

Si te refieres a la codificación competitiva, intenta resolver preguntas en varios sitios como:

  • Codechef: concurso de programación, concurso de programación, programación de computadoras en línea
  • Juez de Esfera Online (SPOJ)
  • HackerRank
  • HackerEarth – Desafíos de programación y trabajos de desarrollador
  • codificador superior

Comience desde los básicos si es nuevo y continúe con los más difíciles a medida que aprende. También la mejor manera de practicar en un entorno restringido es participar en las competiciones de programación organizadas (casi todas las semanas / meses) en sitios como Codechef o Hackerrank.

Feliz codificación 🙂

Practica mucho Por lo tanto;

Escribe muchos programas, especialmente programas grandes. Muchas buenas prácticas se vuelven obvias una vez que has cometido los errores típicos.

Escribir programas pequeños le permite escribir más programas en la misma cantidad de tiempo; esto mejorará algunas de tus habilidades de programación mucho más rápidamente, pero otras no.

Modificar programas existentes escritos por otras personas. Leer código sin tener conocimiento previo de él es una habilidad valiosa, no puedes depurar sin él, y no tienes mucha práctica con él cuando estás escribiendo programas desde cero. Si reflexiona sobre lo que ha encontrado difícil de entender, también puede ayudarlo a aprender cómo escribir código de mantenimiento. Además, esto le permite trabajar en muchos más programas grandes de los que tendría tiempo de escribirse desde cero, lo que ayuda mucho con aquellas habilidades que solo se aplican a programas grandes.

Aprender de buenos programadores.

Ir a una buena escuela de programación como Holberton School.

Adapte un buen código (aprendí mucho sobre los idiomas C al adaptar una biblioteca de Btree Index para agregar la función de índice de clave compuesta).

Equipo con buenos programadores. Siéntate de rodillas y aprende. Emula sus hábitos. No insista en que adopten sus prácticas / herramientas / hábitos porque cree que conoce una forma mejor / más rápida / más barata.

Tenouk: –
Tutoriales prácticos de programación en C ++, lenguaje C, red Windows y Linux, interfaz gráfica de usuario MFC, biblioteca de plantillas estándar (STL), compiladores, Win32, controladores de dispositivo, codificación segura y orientado a objetos con código y ejemplos de programas.

Enlaces de IBM developerWorks (por búsqueda): –
Conversión de Windows a UNIX, Parte 1: Portar fuentes de C / C ++
Cómo mejorar el rendimiento de los programas que llaman funciones matemáticas.
Una guía para el montaje en línea para C y C ++
Punteros y fugas de memoria en C
Escribiendo un programa simple de IPv6
Escribiendo código endian-independiente en C
Asignación de memoria dinámica en C (Linux del mundo real)
Programación dinámica y alineación de secuencias.
Técnicas para la depuración de memoria.
Gestión de la memoria interna
Diario de un ingeniero de base de datos
Declaración C
Todo lo que siempre quiso saber sobre los tipos C, Parte 3: Detalles de la implementación
Acelera tu código con el perfilador GNU
Dominar la programación recursiva.
Montaje en línea para x86 en Linux
Alineación de datos: enderezarse y volar a la derecha

Algunos recursos en C de código abierto para usted: –
Codificación – Código abierto para ti

Para la biblioteca de C estándar, puede consultar la Referencia – Referencia de C ++ para conocer el prototipo de la función, el uso con ejemplos y sugerencias al usar.
Para el desarrollo de llamadas de sistema y biblioteca. Microsoft Windows puede obtener referencias de la API de Microsoft y del Catálogo de referencia. Las programaciones de Linux y UNIX usan man o el proyecto de las páginas del manual de Linux para obtener llamadas de función y uso.
Como se mencionó en la respuesta de Amrit Pal, si tiene alguna pregunta o problema, vaya a la página en geeksforgeeks.org, Desbordamiento de pila o simplemente búsquelo en Google.

Dennis MacAlistair Ritchie era un científico informático estadounidense. Creó el lenguaje de programación C y, con su antiguo colega Ken Thompson , el sistema operativo Unix.

1.Libros: –

  • Debe :
  • El lenguaje de programación C por Brian Kernighan y Dennis Ritchie
  • Programación en C: un enfoque moderno por KN King% 3