Witam,
mam za zadanie stworzyć funkcję w C, która łączy dwie posortowane tablice T1 i T2 w jedną posortowaną rosnąco T3.
Nie wiem jak to zrobić: gdy pętla dojdzie do końca krótszej tablicy reszta wartości z dłuższej powinna również znaleźć się w T3 na końcu.
Napisałem taki kod, który się nie kompiluje, ale nie pokazuje też błędów.
Proszę o pomoc.
#include<stdio.h>
#include<stdlib.h>
void Scal(int T1[], int n1, int T2[], int n2, int T3[]){
int x,i=0,j=0,k=T1[i];
for(x=0;x<n1||x<n2;x++){
if(k<=T2[j]){
T3[x]=T1[i];
k=T1[i];
i++;
}
if(k>T2[j]){
T3[x]=T2[j];
k=T2[j];
j++;
}
}
}
int main(){
int tab1[6]={1,2,5,9,13,25};
int n1=6;
int tab2[4]={3,14,30,32};
int n2=4;
int i,n;
int tab3[n];
Scal(tab1,n1,tab2,n2,tab3);
for(i=0;i<n;i++)
printf("Elementy scalonej tablicy: %d\n",tab3[i]);
return 0;
}