¿Cómo podemos desarrollar nuestras habilidades de programación en C?

C es uno de los hermosos idiomas que hay.
No sé de qué habilidades de programación estás hablando, que son realmente específicas de “C”. La programación en general es muy fascinante y el ingrediente básico que se requiere para dominarlo es la capacidad de convertir una solución a un problema en una serie de pasos (que se llama algoritmo) y convertirlo en líneas de código en C (o cualquier lenguaje para el caso)
Mencionaré algunas de las cosas que necesitarías hacer para mejorar esta habilidad.

  • Conocer diferentes tipos de estrategias de resolución de problemas.
  • Conozca diferentes tipos de patrones de solución (o algoritmos existentes)
  • Encuentra patrones en problemas nuevos que se correlacionan con problemas existentes
  • Escriba los pasos (muy específicos) para resolver el problema en papel
  • Conozca los matices específicos del idioma que debe usar al convertir el algoritmo que se le ocurrió, en código legible por máquina.

Ahora, hablemos específicamente sobre C. Deberá aprender algunos conceptos clave del lenguaje C. Son

  • Punteros
  • E / S de archivo
  • Gestión de memoria (usando malloc, calloc, realloc, etc.)
  • Estructuras de datos usando C
    • Matrices
    • Instrumentos de cuerda
    • Listas vinculadas
    • Arboles
    • Gráficos
  • Programación de socket en C

Y hay muchos más.

Sugeriría que escriba sus propias funciones para las llamadas a la biblioteca como strcmp, strstr, strlen, etc. Esto le ayudará a darse cuenta de su verdadero potencial como desarrollador y le dará una idea de cómo se escribe el lenguaje C.

… y lo más importante. Práctica.

Codifique tantos problemas como pueda. Esto lo ayudará a aumentar su confianza para resolver cualquier problema.

“Let us C” de Yashwanth Kanetkar es un libro realmente bueno para empezar si eres un principiante.

Pero si solo está interesado en aumentar su habilidad a un nivel más genérico, confíe en cualquier sitio web de programación competitivo como Preguntas de entrevista de programación | ¡CareerCup o geeksforgeeks.com que tienen muchos conceptos y preguntas esperando ser resueltos y aprendidos!
Gracias.

Ve a través de ‘let us C’ – libro yashwant kanetkar. Está fácilmente disponible en formato pdf en línea. Y trate de mantenerse dentro de la convección, únase a un grupo de lenguaje C en línea o páginas como ThoughtProcess, una lógica de programación

Puedo darte una respuesta muy subjetiva ya que soy yo mismo en el proceso, así que puedo compartir mi experiencia contigo

Pondré la distribución

Para principiantes
C es el lenguaje más básico con el que cualquier programador debería comenzar, pero también es muy poderoso y vasto si se tiene en cuenta su profundidad.
Entonces, antes de dirigirse a foros en línea y buscar dudas en la web, etc., sugiero que lean libros como vamos a c por yaswant karnetkar o E.balaguruswami book en C (algo así no recuerdo el nombre). en su mayoría serán suficientes para obtener la idea básica y trabajar, y también para iniciar su progreso.

Creo que la mayoría de las veces es la depuración de cosas realmente pequeñas que requieren la mayor parte del tiempo y la paciencia. A través de la comprensión de los conceptos básicos de C, como las estructuras de E / S de punteros, lo ayudará mucho a largo plazo

Nivel moderado

Ahora debería aceptar manejar sintaxis y codificar cosas básicas
, debería centrarse ahora en comprender algoritmos o lógica
La clave es que si resuelve alguna pregunta, entonces cómo traducir ese cálculo mental en palabras (lógica) y luego en algunas líneas de código.
Recomendaría la estructura de datos de Karunmachi Narsimha Y algo, este es un libro excelente.
Con esto, comienza con la práctica básica de algunas estructuras de datos simples, como la cola de pilas de matriz y la lista de enlaces, y aprende a usarlas de manera eficiente.

Avanzar
Bueno, no estoy lo suficientemente calificado para esta parte, pero te lo haré saber tan pronto como me entere 😛

PD: – también tenga en cuenta que la lectura del texto no es suficiente, se recomienda codificar preferiblemente en la máquina Unix