los dos compiladores principales poseen librerias graficas , que son el turbo c de borland y el microsof C , graphics.h y graph.h respectivamente , como mencionan el standard ansi no contempla funciones graficas sin embargo nos da las erramientas para poder usar modos graficos , como ??? , mediante el bios , la interrupcion 10h activa los servicios de video instalados , luego puedes usar muchos modos graficos y escribir pixeles directamente en memoria de video o mediante el bios.
No te puedo explicar todo el proceso de generacion de graficas por que no dispongo del tiempo pero si deseas informacion te recomiendo el libro llamado "Graficas poderosas con Turbo C++".
los modos graficos se pueden activar facilmente usando la funcion de borland turbo c llamada initgraph();
te doy un ejemplo sencillo :
#include <stdio.h>
#include <graphics.h>
void main()
{
int controlador,modo,codigoerror;
initgraph(&controlador,&modo,"c:\tc\bgi\");
}
ese bloque inicia el modo grafico pero antes de iniciarlo debes pedir los datos que usaras para general las graficas o si tienes los datos guardados en un archivo entonces puedes iniciarlizar el modo grafico desde el principio , una vez inicializado el modo grafico puedes dibujar las barras mediante la funcion rectangle();
la presentacion es cosa de tu imaginacion ademas tendras que establecer un patron para las dimensiones de las diferentes barras , digamos que el valor mas alto equivale a 100 pixeles de alto , por lo que los demas valores tendras que hacer una regla de 3 para calcular el numero de pixeles de alto que le corresponde a la barra.
es decir si tienes un valor de 10000 y otro de 7500 entonces el de 10000 equivale a 100 pixeles y el de 7500 equivale a :
(7500 * 100) / 10000 = 75 pixeles.
de esa manera conservaras la proporcion.
espero haber sido de ayuda .