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語言中pthread_exit()函數實現終止線程的方法
- 一文詳解C++智能指針的原理、分類及使用
- C++學習之智能指針中的unique_ptr與shared_ptr
- C++多線程實現綁定CPU的方法詳解
- C語言如何解決QString與QByteArray互相轉換的問題
- C++中的可移植性和跨平臺開發(fā)教程詳解
- 一文詳解C++模板和泛型編程
- C++中的字符串編碼處理方法
- C++?requires關鍵字簡單介紹
- C語言中pthread_exit()函數實現終止線程
- C語言全局變量和局部變量的示例代碼
- C++數據封裝以及定義結構的詳細講解
- .Net程序內存異常的原因及解決
- ASP.NET Core快速入門之實戰(zhàn)篇
- .Net Core 集成 Kafka的步驟
- .NET RulesEngine(規(guī)則引擎)的使用詳解
- 如何在.NET Core中為gRPC服務設計消息文件(Proto)
- 如何在 .NET 中使用 Flurl 高效處理Http請求
- Asp.net基礎知識掃盲篇
- .net core 使用阿里云分布式日志的配置方法