- Prólogo (íntegro de lo que en su momento fue la edición impresa).
- 1 El proceso de programación.
- 1.1 Etapas del proceso de programación en C.
- Diseño del algoritmo.
- Pruebas de escritorio para el algoritmo.
- Edición del programa en código fuente.
- Compilación.
- Vinculación.
- Carga y ejecución.
- Depuración.
- 1.2 Estructura de un programa en C.
- 1.3 Ejercicios selectos.
- 2 Bienvenido a C!
- 2.1 El primer programa en C.
- 2.2 Lectura de datos.
- 2.3 Consideraciones adicionales respecto a la E/S de procesos.
- 2.4 Ejercicios selectos.
- 3 Estructuras de control.
- 3.1 Estructuras de control para la selección.
- La estructura de control if.
- La estructura de control if-else.
- El operador ternario ? : .
- La estructura de control switch.
- 3.2 Estructuras de control para la repetición.
- 3.3 Estructuras de control combinadas.
- 3.4 Tipos de repetición.
- 3.5 Ejercicios selectos.
- 4 Módulos de programa: funciones.
- 4.1 Funciones de biblioteca.
- 4.2 Estructura para las funciones en C.
- 4.3 Ejemplos de definición de funciones.
- 4.4 Ámbitos de variables.
- 4.5 Bibliotecas personalizadas de funciones.
- 4.6 Ejercicios selectos.
- 5 Recursividad.
- 5.1 Definición y conceptos.
- 5.2 Soluciones iterativas vs recursivas.
- 5.3 Torres de Hanoi.
- 5.4 Ejercicios selectos.
- 6 Arreglos.
- 6.1 Arreglos de una dimensión (vectores).
- Arreglos y funciones.
- Ordenamiento por burbuja.
- Búsqueda lineal y búsqueda binaria.
- Arreglos de caracteres (cadenas).
- 6.2 Arreglos de dos dimensiones (matrices).
- 6.3 Arreglos de n dimensiones.
- 6.4 Consideraciones finales con arreglos.
- 6.5 Ejercicios selectos (arreglos/vectores).
- 6.6 Ejercicios selectos (matrices).
- 7 Apuntadores.
- 7.1Definición, estructura y representación.
- 7.2 Parámetros por valor y por referencia.
- 7.3 Aritmética de apuntadores.
- 7.4 Apuntadores y arreglos.
- Asignación dinámica de memoria.
- Arreglos.
- Matrices.
- Argumentos en la invocación de programas.
- 7.5 Apuntadores a funciones.
- 7.6 Ordenamiento genérico.
- Burbuja genérico.
- Invocación.
- 7.7 Ejercicios selectos (apuntadores).
- 7.8 Ejercicios selectos (doble apuntador).
- 8 Abstracción de datos.
- 8.1 Conceptos, representación y estructura.
- 8.2 Abstracción en acción.
- 8.3 Estructuras compuestas.
- 8.4 Arreglos de estructuras.
- 8.5Abstracción de matrices.
- 8.6 Ejercicios selectos.
- 9 Archivos.
- 10 Algoritmos: panorama general.
- 10.1 Panorama general.
- 10.2 Teorema de Böhm y Jacopini.
- 10.3 Estructuras de control.
- 10.4 Definición y conceptos.
- Uso de la computadora en la resolución de problemas.
- Cinco importantes condiciones de un algoritmo.
- Estructura de un algoritmo.
- Pruebas de algoritmos.
- 10.5 Diagramas de flujo.
- Estructuras de control.
- Algoritmo de Euclides.
- 10.6 Pseudo código.
- Estructuras de control.
- Algoritmo de Euclides.
- 10.7 Pruebas de escritorio.
- 10.8 Diseño básico de programas estructurados y consideraciones finales.
- 11 Bibliografía sugerida.
- 12 Miscelánea.
- C Reference.
- Comentarios y sugerencias.
- Compilación de programas.
- El Yoda del Valle del Silicio (Silicon Valley).
- Errores frecuentes de programación.
- FOLDOC (Free OnLine Dictionary Of Computing).
- Manual de referencia en línea (cplusplus).
- Móvil C (Compilador de C para móviles).
- The Community Wiki for GLIBC.
- The GNU C Library.
- To teach or not to teach.
El interés que despierta en mí un filósofo depende exactamente de su capacidad para darnos un ejemplo.
Friedrich Nietzsche.
