第1个回答 2013-12-12
#include <stdio.h>
#define N 10
int main( void )
{
int a[N], b[N],c[2*N];
int i, j, temp;
printf( "请输入数组a的值:\n");
for( i = 0; i < N; i++ )
scanf( "%d", &a[i] );
printf( "请输入数组b的值:\n");
for( i = 0; i < N; i++ )
scanf( "%d", &b[i] );
for( i = 0; i < N; i++ ){
c[i] = a[i];
c[i+N] = b[i];
}
for(i = 0; i < 2 * N - 1; i++ )
for( j = i + 1; j < 2 * N; j++ )
if( c[i] > c[j] ){
temp = c[i];
c[i] = c[j];
c[j] =temp;
}
printf( "a数组的各个元素为:\n" );
for( i = 0; i < N; i++ )
printf( "%d\t", a[i] );
printf( "\nb数组的各个元素为:\n" );
for( i = 0; i < N; i++ )
printf( "%d\t", b[i] );
printf( "\nc数组的各个元素为:\n" );
for( i = 0; i < 2 * N; i++ )
printf( "%d\t", c[i] );
return 0;
}
第2个回答 2013-12-12
#include<stdio.h>
#define SWAP(a,b) {int swap = 0;swap=a; a=b; b=swap;}
void sort_fun(int *in1, int *in2, int *out)
{
int i = 0;
int j = 0;
for (i=0; i<10; i++)//将两个数组合并为一个数组
{
out[j++] = in1[i];
out[j++] = in2[i];
}
for (i=0; i<19; i++)
{
for (j=i+1; j<20; j++)
{
if(out[i]<out[j])
{
SWAP(out[i],out[j]);//数组3排序
}
}
}
}
int main()
{
int a[10]={1,3,2,20,5,3,7,3,7,9};
int b[10]={2,4,2,5,1,0,8,5,3,5};
int c[20]={0};
int i,j;
sort_fun(a, b, c);
for(i=0; i<10; i++)
{
printf("%d ",a[i]);
}
printf("\n");
for(i=0; i<10; i++)
{
printf("%d ",b[i]);
}
printf("\n");
for(i=0; i<20; i++)
{
printf("%d ",c[i]);
}
printf("\n");
return 0;
}