程序填空题:用指针将数组中的元素逆序存放
本题目要求编写一个函数,用指针将数组中的元素逆序存放。
```c++
#include
void Rev(int *x, int n);
int main()
{
int i,a[10]={3,7,9,11,0,6,7,5,4,2};
int *p;
//调用逆序函数
printf("The array has been reverted:\n");
for(; ; p++)
printf("%d,", );
return 0;
}
void Rev(int *x, int n)
{
int t,*p,*i,*j,m=(n-1)/2;
i=x; j=x+n-1; p=x+m;
for(;i<=p;i++,j--)
{
}
}
```
答案:
第1空: Rev(a,10);
第2空:p=a
第3空:p
第4空:*p
第5空:t=*i;
第6空:*i=*j;
第7空:*j=t;
```c++
#include
void Rev(int *x, int n);
int main()
{
int i,a[10]={3,7,9,11,0,6,7,5,4,2};
int *p;
//调用逆序函数
printf("The array has been reverted:\n");
for(; ; p++)
printf("%d,", );
return 0;
}
void Rev(int *x, int n)
{
int t,*p,*i,*j,m=(n-1)/2;
i=x; j=x+n-1; p=x+m;
for(;i<=p;i++,j--)
{
}
}
```
答案:
第1空: Rev(a,10);
第2空:p=a
第3空:p
第4空:*p
第5空:t=*i;
第6空:*i=*j;
第7空:*j=t;