>>394はこう書けばいいのかな
for(i = 0; i < 10; i++) {
j = rand() % (i + 1);
if(j != i) num[i] = num[j];
num[j] = i + 1;
}

最初にnum[10] = {0};ってやったほうが楽そうだ