数组逆序
1 //数组逆序 2 3 #include <stdio.h> 4 #define N 5 5 int main() 6 { 7 int array[N] = {21,69,85,55,89}; 8 int i; 9 int temp; 10 11 12 //for(i = 0; i< N /2; i++) 13 //{ 14 // temp = array[i]; 15 // array[i] = array[N - i -1]; 16 // array[N - i -1] = temp; 17 //} 18 19 20 21 //指针交换 奇数个 22 int *ptr_array_start = array; //指向数组首地址的指针 23 int *ptr_array_end = array +N -1; //指向数组末元素的指针 24 while(ptr_array_start != ptr_array_end) 25 { 26 //首位交换,指针分别进行更新 27 temp =*ptr_array_start; 28 *ptr_array_start = *ptr_array_end; 29 *ptr_array_end = temp; 30 31 //首元素指针向后移动 32 33 ptr_array_start++; 34 35 //末元素指针向前移动 36 ptr_array_end--; 37 } 38 39 40 for( i = 0; i < N; i++) 41 { 42 printf("%d\t",*(array +i)); 43 } 44 45 }
本文来自博客园,作者:Bytezero!,转载请注明原文链接:https://www.cnblogs.com/Bytezero/p/15072010.html