逆序数组的问题,可能会考到哟!
- #include <stdio.h>
- void printArray(int array[],int len);
- void niXuArray(int array[],int len);
- int main(int argc, const char * argv[])
- {
- //定义数组
- int a[10]={1,2,3,4,5,6,7,8,9,10};
- //遍历数组
- printArray(a, 10);
- //调用函数
- niXuArray(a, 10);
- //遍历数组
- printArray(a, 10);
- return 0;
- }
- void niXuArray(int array[],int len)
- {
- //定义数组指针
- int *p=array;
- //定义下标
- int i = 0,j = len-1;
- int temp;
- //逆序
- while (i<j)
- {
- temp = *(p+i);
- *(p+i) = *(p+j);
- *(p+j) = temp;
- i++;
- j--;
- }
- }
- //遍历数组并打印
- void printArray(int array[],int len)
- {
- for (int i = 0; i<len; i++)
- {
- printf("%d\t",array[i]);
- }
- printf("\n");
- }
复制代码 |
|