使用指针交换两个数组中的值
代码如下:
#include<iostream>
typedef double real;//给double类型取别名为real
using namespace std;
void swap(real* a, real* b);
int main() {
double a[10] =
{
1,5,10,15,20,
1,5,10,15,20
};
real b[10] =
{
2,4,6,8,10,
2,4,6,8,10
};
for (int i = 0;i < 10;i++) {
swap(a[i], b[i]);
}
printf("a数组中的值为:" );
for (int i = 0;i < 10;i++) {
if (i % 5 == 0)
printf("\n");
printf("%f\t", a[i]);
}
printf("\n");
printf("b数组中的值为:");
for (int i = 0;i < 10;i++) {
if (i % 5 == 0)
printf("\n");
printf("%f\t", b[i]);
}
return 0;
}
void swap(real* a, real* b)
{//交换两个数据,这个函数可以交换两个数组中的每一个值
real tmp;
tmp = *a;
*a = *b;
*b = tmp;
}
指针操作的是地址!地址!地址!