Aqui dejo el codigo fuente de un programa que hice para sacar los numeros primos hasta el numero que el usuario quiera.
Saludos
/*Definición de número primo: un número es primo cuando es entero positivo,
distinto de 0 y 1 y que únicamente se puede dividir por sí mismo y por 1
para dar una solución exacta (por tanto, para todos los otros números por
los que intentemos dividir el número primo no dará solución exacta)
************************************************** *********
* programa que obtiene los numeros primos de 1 hasta un limite *
************************************************** *********/
#include <stdio.h>
#include <conio.h>

void comprobar(int a)
{
int b;
float residuo;
for (b=2;b<a;b++)
{
residuo = a%b;
if (residuo==0) //Cuando el residuo es cero, el numero es primo
return; //Si el numero es primo regresa a la funcion principal
}
printf("\n%d es numero primo",a);
return;
}

int main()
{
int a, limite;
printf("Escribe el limite:");
scanf("%d",&limite);
printf("Numeros primos:");
for (a=1;a<=limite;a++)
comprobar(a);
getch();
return 0;
}

//Funciona correctamente en Borland c++ 5.01