数交换使用指针和不使用指针

int main(int argc, const char * argv[]) {
    void inv(int x[],int n );
    int a[10]={3,7,9,11,0,6,7,5,4,2};
    inv(a, 10);
    for (int i=0;i<</span>10 ; i++) {
        printf("%d\t",a[i]);
    }
    printf("\n");
         return 0;
}
void inv(int x[],int n ){
    int temp,i,j ,m=(n-1)/2;
    for (i=0; i<=m; i++) {
        j=n-1-i;
        temp=x[i];
        x[i]=x[j];
        x[j]=temp;
    }
}
int main(int argc, const char * argv[]) {
    void inv(int x[],int n );
    int a[10]={3,7,9,11,0,6,7,5,4,2};
    inv(a, 10);
    for (int i=0;i<</span>10 ; i++) {
        printf("%d\t",a[i]);
    }
    printf("\n");
         return 0;
}
void inv(int *x,int n ){
    int temp,*p,*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;
    }
}
输出结果:
2 4 5 7 6 0 11 9 7 3

 

posted @ 2017-07-13 18:56  零度咖啡  阅读(162)  评论(0)    收藏  举报