c8-9.c 724 B

123456789101112131415161718192021222324
  1. #include <stdio.h>
  2. int main()
  3. {void inv(int *x,int n); // inv函数声明
  4. int i,arr[10],*p=arr; // 指针变量p指向arr[0]
  5. printf("The original array:\n");
  6. for(i=0;i<10;i++,p++)
  7. scanf("%d",p); // 输入arr数组的元素
  8. printf("\n");
  9. p=arr; // 指针变量p重新指向arr[0]
  10. inv(p,10); // 调用inv函数,实参p是指针变量
  11. printf("The array has been inverted:\n");
  12. for(p=arr;p<arr+10;p++)
  13. printf("%d ",*p);
  14. printf("\n");
  15. return 0;
  16. }
  17. void inv(int *x,int n) // 定义inv函数,形参x是指针变量
  18. {int temp,*i,*j;
  19. i=x;j=x+n-1;
  20. for(;i<=j;i++,j--)
  21. {temp=*i;*i=*j;*j=temp;}
  22. return;
  23. }