//用指针变量做实参,逆序输出
#include "stdafx.h" #include "stdio.h" int main() {void inv(int *x,int n); int i,arr[10],*p=arr; La variable puntero P apunta a arr[0] printf ("la matriz original:\n"); para (i=0; i<10; i++,p++) scanf("%d",p); printf("\n"); p=arr; La variable puntero P redirige a arr[0] inv(p,10); Llama a la función INV con el parámetro real P variable puntero printf("el array ha invertido:\n"); for(p=arr; p<arr+10; p++) printf("%d,",*p); printf("\n"); return 0;
} void inv(int *x,int n) // Define la función INV, el parámetro X variable puntero {int *p,m,temp,*i,*j; m=(n-1)/2; i=x; j=x+n-1; p=x+m; for(; i<=p; i++,j--) {temp=*i; *i=*j; *j=temp; }
devolución;
}
|