C 中反向复制数组的程序
此程序将帮助您学习数组的基础知识之一。我们将反向复制一个数组到另一个数组中。
算法
首先让我们看看这个程序的分步过程 −
开始 步骤 1 → 取两个数组 A、B 步骤 2 → 将值存储在 A 中 步骤 3 → 将 count 设置为 sizeof(A) 步骤 4 → 对 A 的每个值进行循环 步骤 5 → 将 A[loop] 复制到 B[count] 步骤 6 → 减少 count 步骤 7 → 显示 B 停止
伪代码
现在让我们看看这个算法的伪代码 −
procedure reversecopy_array(A, B) SET index to 1 Set count to sizeof(A) FOR EACH value in A DO B[count] = A[index] INCREMENT index DECREMENT count END FOR DISPLAY B end procedure
实现
上述推导的伪代码的实现如下 −
#include <stdio.h> int main() { int original[10] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 0}; int copied[10]; int loop, count; count = 9; for(loop = 0; loop < 10; loop++) { copied[count] = original[loop]; count--; } printf("original -> copied "); for(loop = 0; loop < 10; loop++) { printf(" %2d %2d ", original[loop], copied[loop]); } return 0; }
输出应如下所示 −
original -> copied 1 0 2 9 3 8 4 7 5 6 6 5 7 4 8 3 9 2 0 1