题目:有两个数组
array1[] = {2,3,9,98,99};
array2[] = {7,11,13,45,100,111,233};
现在的任务是将他们合并,并且重新按从小到大排序
直接上代码吧
#import <Foundation/Foundation.h>
int main(int argc, const char * argv[]) {
@autoreleasepool {
int array1[] = {2,3,9,98,99};
int array2[] = {7,11,13,45,100,111,233};
int array[12];
int i = 0;
int j = 0;
int k = 0;
addArray1:
while (array1[j] <= array2[k]) {
array[i] = array1[j];
i = i + 1;
j = j + 1;
if (array1[j] > array2[k]) {
goto addArray2;
}
if (j == sizeof(array1)/4) {
while (k < sizeof(array2)/4) {
array[i] = array2[k];
i++;
k++;
}
}
}
addArray2:
while (array1[j] > array2[k]) {
array[i] = array2[k];
i++;
k++;
if (array2[k] > array1[j]) {
goto addArray1;
}
if (k == sizeof(array2)/4) {
while (j < sizeof(array1)/4) {
array[i] = array1[j];
i++;
j++;
}
}
}
for (int a = 0; a < 12; a++) {
printf("%d,",array[a]);
}
}
return 0;
}