完整代码:
// 将一个数组逆序输出,使用指针数组操作
#include<stdio.h>
//将一个数组逆序输出
void reverse(int *arr,int len){
//头指针
int *start=arr;
//尾指针
int *end=arr+len-1;
//通过交换数组中前后所有的数,来使数组逆序
while (start<end)
{
//交换数组中前后的两个数
int temp;
temp=*start;
*start=*end;
*end=temp;
//指针移动,继续交换数组中其他数
start++;
end--;
}
}
int main(){
int arr[]={1,2,3,4,5};
int len=sizeof(arr)/sizeof(arr[0]);
printf("逆序前数组:\n");
for (int i = 0; i < len; i++)
{
printf("%d ",arr[i]);
}
reverse(arr,len);
printf("\n逆序后数组:\n");
for (int i = 0; i < len; i++)
{
printf("%d ",arr[i]);
}
return 0;
}
运行截图: