我写的参考:#include <stdio.h>#define N 10int com(int *a,int *b,int *c){ int ct,i,j,x,t,r=0; for(ct=0; ct<N; ct++) c[ct]=a[ct]; for(i=0; i<N; i++) { x=b[i]; for(j = 0; j < ct; j++) { if (c[j]==x) //相等 { for(t=j;t<ct-1;t++) c[t]=c[t+1]; //删除1个 ct--; r++; break; } if(c[j] > x) //找到插入位置 { for(t = ct; t > j; t--) //当前开始数据右移一个 { c[t] = c[t - 1]; } c[j] = x; //插入 ct++; break; } }// printf("%d %d\n",x,c[ct-1]); if(x > c[ct-1]) c[ct++]=x; } return r;}int main(){ int a[N],b[N],c[2*N]; int i,n; for(i=0; i<N; i++) scanf("%d",&a[i]); for(i=0; i<N; i++) scanf("%d",&b[i]); n=com( a, b, c); for(i=0; i<2*(N-n); i++) printf("%d ",c[i]); printf("\ncount=%d\n",n); return 0;}例样测试特殊例样测试(数据全等,c为空)特殊例样测试一(数据全只有一组不等)