2008年12月10日 星期三

排序》合併兩個已排序好的陣列 (C語言)

寫一個函式用來組合兩個已經由小到大排好的陣列成一個新的陣列,並且算出組新陣列elements加起來的總平均。

2 則留言:

瑞克 提到...

#include< stdio.h >

void main()
{
int arr1[]={1,5,7};
int arr2[]={2,3,5,6,7};
int arr3[10];
int arr1_Length,arr2_Length,arr3_Length;
int i=0,j=0,k=0;

arr1_Length = sizeof(arr1)/sizeof(arr1[0]);
arr2_Length = sizeof(arr2)/sizeof(arr2[0]);
arr3_Length = arr1_Length+arr2_Length;

while(k < arr3_Length)
{
if(arr1[i] < arr2[j])
{
arr3[k] = arr1[i];
i++;
k++;
}else
{
arr3[k] = arr2[j];
j++;
k++;
}
}

for(i=0; i < arr3_Length; i++)
printf("%d", arr3[i]);


}

瑞克 提到...

if (i != arr1_Length-1)
i++;

以及
if (j != arr2_Length-1)
j++;