数组逆序

 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 }

 

posted on 2021-07-28 11:09  Bytezero!  阅读(174)  评论(0编辑  收藏  举报