|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
- #include <stdio.h>
- #include <stdlib.h>
- #define MAX 10
- int main(void)
- {
- int i,arr[MAX],*pa;
- pa=arr;
- for (i=0;i<MAX;i++) pa[i]=rand();
- for (i=0;i<MAX;i++) printf("%-5d ",pa[i]); //打印原数组;
- putchar('\n');
- int conversion(int *);
- conversion(pa);
- for (i=0;i<MAX;i++) printf("%-5d ",pa[i]); //前后倒置后打印数组;
- }
- int conversion(int *pa)
- {
- int *p,tem,*pa2,*i=pa,stop=(MAX/2); //指针变量p=数组的中点,pa2=数组的最后一个元素,i=数组名;
- p=pa+stop,pa2=pa+MAX-1;
- for (;i<=p;i++,pa2--)
- {
- tem=*i;
- *i=*pa2;
- *pa2=tem;
- }
- }
- //数组第五个元素与第六个元素没有调换位置???
- //求大佬找一下代码问题!!!非常感谢!
复制代码
conversion()函数中的for循环,结束条件写错了多换了一次.
0<->9,1<->8,2<->7,3<->6,4<->5,5<->4
i<=p改为i<p
|
|