ANSI C
Curso de programación en ANSI C
Apuntes
Relaciones de ejercicios
Problemas y ejercicios resueltos
El juego de Nim
El juego de Nim (o juego de los palillos) consiste en que los jugadores vayan retirando palillos de un montón. Pierde el juego el jugador que se ve forzado a retirar el último palillo del montón.
Las siete y media
El juego de cartas de las siete y media consiste en ir pidiendo cartas intentando sumar 7.5 puntos sin pasarse. Gana el jugador que más se acerca a 7.5. Se utiliza una baraja española. Sota, caballo y rey valen medio punto. Las demás cartas puntúan según su valor numérico (de 1 a 7).
El problema de las N reinas
El problema consiste en colocar N reinas de ajedrez en un tablero de NxN de tal forma que ninguna reina esté amenazada (esto es, no puede haber dos reinas en la misma fila, ni en la misma columna, ni en la misma diagonal). El programa recibe como parámetro el número N de reinas que deseamos colocar en el tablero.
Alternativa 1: Encontrar una solución al problema (código fuente C).
Alternativa 2: Encontrar todas las soluciones del problema (código fuente C).
La siguiente tabla muestra el número de veces que se coloca una reina en el tablero hasta que se encuentra una solución válida al problema (es decir, el número de veces que se llama a la función 'colocarReina'):
WC: Contador de caracteres, palabras y líneas
Un pequeño programa en C que cuenta el número de caracteres, palabras y líneas de un fichero de texto (que lee de stdin).
Frecuencias
Un programa en C que muestra cuál es la frecuencia de cada carácter en un fichero de texto (que se lee de stdin). El programa muestra como resultado una tabla con los caracteres ordenados de mayor a menor frecuencia.
Filtro
Un programa en C que sólo muestra las líneas de un fichero que incluyen una determinada cadena (que se le pasa como parámetro al programa).
Cadenas de Markov
El problema consiste en generar textos "aleatorios" a partir de un texto de entrada que se toma como modelo. Partimos de un texto T cuyas últimas palabras representamos por P. Para elegir la palabra que añadiremos al texto T, escogemos al azar una palabra de las que aparecen a continuación de P en el texto que tomamos como modelo.
A continuación se ofrecen algunos textos con los que se puede comprobrar el funcionamiento del programa:
Modelo de coste temporal de las operaciones de C
Medición del tiempo necesario para realizar cada una de las operaciones que se realizan al ejecutar un programa: operaciones aritméticas con números enteros y reales, funciones matemáticas, comparaciones, acceso a los elementos de un vector...
Resultados medidos en una máquina concreta utilizando distintos compiladores de C (el tiempo de cada operación, en nanosegundos, aparece en la última columna): Borland C/C++ 3.1 (16 bits), Borland C/C++ 3.1 (32 bits), Borland C++ Builder 4, Watcom C/C++ 10.0.
Bases de datos en C
Este programa completo permite gestionar bases de datos al estilo de dBase (crear tablas, actualizarlas, buscar datos en ellas, ordenar los datos, etc.). Las bibliotecas para el manejo de ficheros están escritas por completo en ANSI C y pueden reutilizarse en la construcción de aplicaciones más complejas.
Ejecutables generados con el compilador de Watcom (véase el makefile incluido en el código fuente). El fichero ZIP incluye un par de "bases de datos" (biblioteca de informática y diccionario de citas).