实现思想:数组是由一系列相同数据类型的数据构成,它不像其他基本数据类型可以直接交换,两个数组的交换需将两个数组内的每一个元素逐一进行交换。 #include<stdio.h> void Swap(int *a, int *b, int length) { int tmp = 0; int i; for (i = 0; i <length; i++) { tmp = a[i]; a[i] = b[i]; b[i] = tmp; } } void Print(int *arr, int length) { int j = 0; for (j = 0; j < length; j++) { printf("%d ",arr[j]); } printf("}\n"); } int main() { int a[] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 }; int b[] = { 9, 8, 7, 6, 5, 4, 3, 2, 1, 0 }; int length = sizeof(a) / sizeof(a[0]); //数组名本身是一个地址常量,但在sizeof (数组名)时,它则表示整个数组对象。 Swap(a, b, length); printf("a[%d]={",length); Print(a, length); printf("b[%d]={",length); Print(b, length); return 0; }