>>608
何が間違っているのかわからないので、出題者に模範解答を示してもらってください。

関係ないけど、sosuu() はこう書いたほうが短いし速い。
void sosuu(int *a)
{
size_t i, j, num = 1;
for(i = 2; num < 300; i++)
{
for(j = 0; j < num; j++)
if(i % a[j] == 0)
break;
if(j == num)
a[num++] = i;
}
}