| Índice general | ||
| Índice de Figuras | ||
| Índice de Tablas | ||
| Prefacio | ||
| 1. Conceptos básicos de programación | ||
| 1.1 Ordenador y periféricos | ||
| 1.2 Bits, bytes y palabras | ||
| 1.3.1 Lenguajes de bajo nivel | ||
| 1.3.2 Lenguajes de alto nivel | ||
| 1.4 Elaboración de un programa | ||
| 1.5 Traductores | ||
| 1.5.1 Ensambladores | ||
| 1.5.2 Interpretes | ||
| 1.5.3 Compiladores | ||
| 2. Primer contacto con C | ||
| 2.1 Un poco de historia | ||
| 2.2 Características del lenguaje | ||
| 2.3 Creación de un programa | ||
| 2.4 Primeros pasos con C | ||
| 2.5 El modelo de compilación de C | ||
| 3. Empezando a programar | ||
| 3.1 Identificadores | ||
| 3.2 Estructura de un programa | ||
| 3.3 Variables y constantes | ||
| 3.3.1 Variables | ||
| 3.3.2 Constantes | ||
| 3.3.3 Entrada y salida de valores | ||
| 3.4 Expresiones | ||
| 3.4.1 Operador de asignación | ||
| 3.4.2 Operadores aritméticos | ||
| 3.4.3 Operadores relacionales | ||
| 3.4.4 Operadores lógicos | ||
| 3.4.5 Prioridad de operadores | ||
| 3.5 Ejercicios | ||
| 4. Construcciones condicionales | ||
| 4.1 Construcción if | ||
| 4.1.1 Variante if-else | ||
| 4.1.2 Variante if-else-if | ||
| 4.2 El operador condicional ? | ||
| 4.3 Construcción switch | ||
| 4.4 Ejercicios | ||
| 5. Construcciones iterativas | ||
| 5.1 Construcción while | ||
| 5.2 Construcción do-while | ||
| 5.3 Construcción for | ||
| 5.3.1 El operador coma (,) | ||
| 5.3.2 Equivalencia for-while | ||
| 5.4 Las sentencias break y continue | ||
| 5.5 Ejercicios | ||
| 6. Tipos de datos elementales | ||
| 6.1 Números enteros | ||
| 6.1.1 Modificadores | ||
| 6.1.2 Resumen | ||
| 6.2 Caracteres | ||
| 6.2.1 Caracteres especiales | ||
| 6.2.2 Enteros y el tipo char | ||
| 6.2.3 Conversiones de tipos | ||
| 6.3 Números reales | ||
| 6.4 Ejercicios | ||
| 7. Tipos de datos estructurados: Tablas | ||
| 7.1 Vectores | ||
| 7.1.1 Consulta | ||
| 7.1.2 Asignación | ||
| 7.1.3 Ejemplos | ||
| 7.2 Matrices | ||
| 7.2.1 Consulta | ||
| 7.2.2 Asignación | ||
| 7.2.3 Ejemplos | ||
| 7.3 Tablas multidimensionales | ||
| 7.3.1 Ejemplos | ||
| 7.4 Cadenas de caracteres | ||
| 7.4.1 Consulta | ||
| 7.4.2 Asignación | ||
| 7.4.3 Ejemplos | ||
| 7.5 Ejemplos | ||
| 8. Otros tipos de datos | ||
| 8.1 Estructuras | ||
| 8.1.1 Declaración de variables | ||
| 8.1.2 Acceso a los campos | ||
| 8.1.3 Asignación | ||
| 8.1.4 Ejemplo | ||
| 8.2 Uniones | ||
| 8.2.1 Ejemplo | ||
| 8.3 Tipos de datos enumerados | ||
| 8.4 Definición de nuevos tipos de datos | ||
| 8.5 Tiras de bits | ||
| 8.5.1 Operador de negación | ||
| 8.5.2 Operadores lógicos | ||
| 8.5.3 Operadores de desplazamiento de bits | ||
| 8.6 Ejercicios | ||
| 9. Punteros | ||
| 9.1 Declaración y asignación de direcciones | ||
| 9.1.1 Declaración | ||
| 9.1.2 Asignación de direcciones | ||
| 9.2 Indirección | ||
| 9.3 Operaciones con punteros | ||
| 9.4 Punteros y tablas | ||
| 9.5 Punteros y estructuras | ||
| 9.6 Ejercicios | ||
| 10. Funciones | ||
| 10.1 Generalidades | ||
| 10.2 Definición y llamada | ||
| 10.2.1 Definición | ||
| 10.2.2 Prototipos | ||
| 10.2.3 Llamada | ||
| 10.3 Variables y parámetros | ||
| 10.3.1 Variables locales | ||
| 10.3.2 Variables globales | ||
| 10.3.3 Parámetros formales | ||
| 10.4 Devolución de resultados | ||
| 10.5 Paso de parámetros | ||
| 10.5.1 Paso de parámetros por valor | ||
| 10.5.2 Paso de parámetros por referencia | ||
| 10.5.3 Las tablas y las funciones | ||
| 10.5.4 Parámetros en la función main | ||
| 10.6 Recursividad | ||
| 10.7 Ejercicios | ||
| 11. Ficheros | ||
| 11.1 Abrir y cerrar ficheros | ||
| 11.2 Leer y escribir en ficheros | ||
| 11.3 Otras funciones para el manejo de ficheros | ||
| 11.3.1 feof | ||
| 11.3.2 ferror | ||
| 11.3.3 fflush | ||
| 11.4 Ficheros estándar: stdin, stdout, stderr | ||
| 11.5 Ejercicios | ||
| A. El preprocesador | ||
| A.1 Directiva include | ||
| A.2 Directivas define y undef | ||
| A.3 Directivas ifdef y ifndef | ||
| A.4 Macros | ||
| B. La libreria estándar | ||
| B.1 Manipulación de cadenas de caracteres | ||
| B.2 Entrada y salida | ||
| B.2.1 Entrada y salida básica | ||
| B.2.2 Entrada y salida con formato | ||
| B.2.3 Ficheros | ||
| B.3 Funciones matemáticas | ||
| B.4 Clasificación y manipulación de caracteres | ||
| B.5 Conversión de datos | ||
| B.6 Manipulación de directorios | ||
| B.7 Memoria dinámica | ||
| C. Sistemas de numeración | ||
| C.1 Naturales | ||
| C.2 Enteros | ||
| C.3 Reales | ||
| C.3.1 Problemas derivados de la representación en coma flotante | ||
| D. Tabla de caracteres ASCII | ||
| E. Bibliografía y recursos WEB | ||