//用指针变量做实参,逆序输出
#include "stdafx.h" #include "stdio.h" int main() {void inv(int *x,int n); int i,arr[10],*p=arr; İşaretçi değişkeni P arr[0]'a işaret eder printf ("orijinal dizi:\n"); for(i=0; i<10; i++,p++) scanf("%d",p); printf("\n"); p=arr; İşaretçi değişkeni P arr[0]'a yönlendirir inv(s,10); Gerçek parametre P işaretçi değişkeniyle INV fonksiyonunu çağırın printf ("dizi ters çevirdi:\n"); for(p=arr; p<arr+10; p++) printf("%d,",*p); printf("\n"); dönüş 0;
} void inv(int *x,int n) // INV fonksiyonunu, yani X işaretçi değişkeni parametresini tanımlayın {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=sıcaklık; }
Dönüş;
}
|