已知两个有序数组,建立第三个有序数组?
a和b是两个有序数组,把他们的所有数字组成第三个数组L,要求仍按升序排列,我知道我的程序有重复比较的错误,而且不能循环10次,谁能把我这个程序改正确?不要别人的源代码!
main(){
int a[6]={3,5,7,8,9,12};
int b[4]={0,3,6,50};
int L[10];
void compare(int sa[],int sb[],int sL[]);
compare(a,b,L);
return 0;
}
void compare(int sa[],int sb[],int sL[]){
int *psa=sa;
int *psb=sb;
int *psL=sL;
int i,j;
for(i=0;i<6;i++){
for(j=0;j<4;j++){
if(sa[i]<sb[j]){
*psL=sa[i];
}else if(sa[i]>sb[j]){
*psL=sb[j];
}else{
*psL=sa[i]=sb[j];
}
}
psL++;
}
cout<<"=========The L[] is============\n"<<endl;
for(i=0;i<10;i++){
printf("%d\t",sL[i]);
}
}