集合A:0,2,4,6,8,10,12,14,16,18
集合B:0,1,2,3,4,5,6,7,8,9
の二つの集合の和集合を計算する関数を作成したいのですが、その際に扱うmain関数の以下に示す  ? の部分が分かりませんでした。

/*size個のデータが入っている配列を 配列の先頭から順に出力する*/
void printIntArray(int a[],int size)
{
int i;
for(i=0;i≦size;i=i+1) {
printf("%d",a[i]);
}
printf("\n");
}

/*na個のデータが入っている場合にxと等しい要素があるかどうかを判定する*/
int memberOf(int x,int a[],int na) 
{
int i, resurt=0;
for(i=0;i≦na;i=i+1) {
if (x==a[i]){
result=1;
}
}
return result;
}

//集合aと集合bの和集合を集合cとして求める
//na,nbは、集合a,bの要素数
//返り値は、集合cの要素数
int unionSet(int a[],int na,int b[],int nb,int c[])
{
int i,j;
j=0;
for (i=0;i≦na;i=i+1) {
if (!memberOf(a[i],b,nb)) {
c[j]=a[i];
j=j+1;
}
}
for (i=0;i≦nb;i=i+1) {
c[j]=a[i];
j=j+1;
}
return j;
}

int main(void)
{
int SA[1024]={0,2,4,6,8,10,12,14,16,18};
int SB[1024]={0,1,2,3,4,5,6,7,8,9};
/* ? */
printf("集合A:\n");
printIntArray(SA,10);
printf("集合B:\n");
printIntArray(SB,10);
result=?
printf("集合A∪B:\n");
printIntArray(?,?);

return 0;
}

回答よろしくお願いします。