C 语言实例 _ 数组拆分与合并

C 语言实例 C 语言实例

将一个数组拆分为两个数组,一个为奇数数组,一个为偶数数组:

实例

#include <stdio.h>
 
int main() {
 int array[10] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9};
 int even[10], odd[10];
 int loop, e, d;
 
 e = d = 0;
 
 for(loop = 0; loop < 10; loop++) {
 if(array[loop]%2 == 0) {
 even[e] = array[loop];
 e++;
 }else {
 odd[d] = array[loop];
 d++;
 }
 }
 
 printf(" 原始数组 -> ");
 
 for(loop = 0; loop < 10; loop++)
 printf(" %d", array[loop]);
 
 printf("\n 偶数 -> ");
 for(loop = 0; loop < e; loop++)
 printf(" %d", even[loop]); 
 
 printf("\n 奇数 -> ");
 for(loop = 0; loop < d; loop++)
 printf(" %d", odd[loop]); 
 
 return 0;
}

输出结果为:

原始数组 -> 0 1 2 3 4 5 6 7 8 9
 偶数 -> 0 2 4 6 8
 奇数 -> 1 3 5 7 9

将奇数数组与偶数数组合并为一个数组:

实例

#include <stdio.h>
 
int main() {
 int array[10];
 int even[5] = {0, 2, 4, 6, 8};
 int odd[5] = {1, 3, 5, 7, 9};
 
 int loop, index, e_len, o_len;
 
 e_len = o_len = 5;
 
 index = 0;
 
 for(loop = 0; loop < e_len; loop++) {
 array[index] = even[loop];
 index++;
 }
 
 for(loop = 0; loop < o_len; loop++) {
 array[index] = odd[loop];
 index++;
 }
 
 printf("\n偶数 -> ");
 
 for(loop = 0; loop < e_len; loop++)
 printf(" %d", even[loop]);
 printf("\n奇数 -> ");
 
 for(loop = 0; loop < o_len; loop++)
 printf(" %d", odd[loop]);
 
 printf("\n合并后 -> ");
 
 for(loop = 0; loop < 10; loop++)
 printf(" %d", array[loop]);
 
 return 0;
}

输出结果为:

偶数 -> 0 2 4 6 8
奇数 -> 1 3 5 7 9
合并后 -> 0 2 4 6 8 1 3 5 7 9

C 语言实例 C 语言实例

0 个评论

要回复文章请先登录注册