如何编写一个 C 语言程序将一个数组复制到另一个数组,并提供示例和详细解释?
C 语言将一个数组复制到另一个数组的程序
此 C 程序允许用户输入数组的大小,然后输入数组的元素。使用 For 循环,我们将把每个元素复制到第二个数组。
#include<stdio.h>
int main()
{
int i, Size, a[20], b[20];
printf("\n Please Enter the Array Size \n");
scanf("%d", &Size);
printf("\n Please Enter the Array Elements \n");
for(i = 0; i < Size; i++)
{
scanf("%d", &a[i]);
}
/* copying one array to another */
for(i = 0; i < Size; i++)
{
b[i] = a[i];
}
printf("\n Elements of Second Array are: \n");
for(i = 0; i < Size; i++)
{
printf("\n Value Inside Array b[%d] = %d", i, b[i]);
}
return 0;
}
数组复制输出

在此将一个数组复制到另一个数组的程序中,下面的 for 循环将帮助遍历 a[5] 数组中的每个单元格。for 循环中的条件 (i < Size) 将确保编译器不会超出 数组 限制。
For 循环内的 scanf 语句将把用户输入的每个值存储在单独的数组元素中,例如 a[0]、a[1]、a[2]、a[3]、a[4]。
for(i = 0; i < Size; i++)
{
scanf("%d", &a[i]);
}
在下一行,我们还有另一个 C 语言 for 循环,用于将一个数组复制到另一个数组。
/* copying one array to another */
for(i = 0; i < Size; i++)
{
b[i] = a[i];
}
上面的 for 循环用于将 a[5] 数组中的每个元素复制到 b[5] 数组中。从上面的 程序 截图中可以看到。
用户插入的值为:a[5] = {10, 25, 45, 75, 95}
第一次迭代
i 的值为 0,条件 (i < 5) 为 True。因此,它将开始执行循环内的语句,直到条件失败。
b[i] = a[i];
b[0] = a[0]
b[0] = 10
第二次迭代
i 的值为 1,条件 (1 < 5) 为 True。
b[1] = a[1]
b[1] = 25
第三次迭代
i = 2,条件 (2 < 5) 为 True。
b[2] = a[2]
b[2] = 45
第四次迭代
i = 3,条件 (3 < 5) 为 True。
b[3] = a[3]
b[3] = 75
第五次迭代
i = 4,条件 (4 < 5) 为 True。
b[4] = a[4]
b[4] = 95
在 i 值递增后,i 将变为 5。因此,条件 (i < Size) 将失败,编译器将退出循环。
接下来的 for 循环将按照我们上面解释的方式进行遍历。但它不会复制元素,而是使用其中的 printf 语句逐个显示值。
C 语言将一个数组复制到另一个数组的最终输出是
b[5] = {10, 25, 45, 75, 95}