急问,急求大家帮忙解答!
下面是一个程序,是让数组倒置的一个程序。#include<stdio.h>
void inverse(int *p,int n)
{
int *q,t;
q=p+n-1;
while(p<q)
{t=*p;*p=*q;*q=t;
p++;q--;}
void main()
{ int a[]={1,3,5,7,9};
int k,*p;
for(p=a,k=0;k<5;k++)
printf("%4d",*p++);
puts("\n");
inverse(a,5); 这里的a为什么不能被替换成p呢?即inverse(p,5)
for(p=a,k=0;k<5;k++)
printf("%4d",*p++);
printf("\n");
}
如果改成p,那么程序无法运行直接跳出窗口。。不清楚为什么 希望大家给我详细的解释 感谢了。。。。。