C语言:用指针编程:有一个数列,含有20个整数,编写函数,要求能够对从指定位置开始的n个数按相反顺序重用指针编程:有一个数列,含有20个整数,编写函数,要求能够对从指定位置开始的n个数

来源:学生作业帮助网 编辑:作业帮 时间:2018/04/24 03:24:17
C语言:用指针编程:有一个数列,含有20个整数,编写函数,要求能够对从指定位置开始的n个数按相反顺序重用指针编程:有一个数列,含有20个整数,编写函数,要求能够对从指定位置开始的n个数C语言:用指针编

C语言:用指针编程:有一个数列,含有20个整数,编写函数,要求能够对从指定位置开始的n个数按相反顺序重用指针编程:有一个数列,含有20个整数,编写函数,要求能够对从指定位置开始的n个数
C语言:用指针编程:有一个数列,含有20个整数,编写函数,要求能够对从指定位置开始的n个数按相反顺序重
用指针编程:有一个数列,含有20个整数,编写函数,要求能够对从指定位置开始的n个数按相反顺序重新排列,并在main中输出新的数列.
例如,原数列为:
1,2,3,4,5,6,7,8,9,10
若要求对从3个数开始的5个数进行逆序处理,则处理后的新数列为:
1,2,7,6,5,4,3,8,9,10

C语言:用指针编程:有一个数列,含有20个整数,编写函数,要求能够对从指定位置开始的n个数按相反顺序重用指针编程:有一个数列,含有20个整数,编写函数,要求能够对从指定位置开始的n个数
#include<stdio.h>
void main()
{
\x05int *fun(int *,int,int);
\x05int a[20],*p;
\x05int m,n;
\x05int i;
\x05printf("输入数列:");
\x05for(i=0;i<20;i++)
\x05\x05scanf("%d",&a[i]);
\x05printf("输入起始位置和需要逆序的数量:");
\x05scanf("%d %d",&m,&n);
\x05p=a;
\x05printf("原数列为:\n");
\x05for(i=0;i<20;i++)
\x05\x05printf("%d ",*(p+i));
\x05fun(p,m,n);
\x05printf("\n变换后的数列为:\n");
\x05for(i=0;i<20;i++)
\x05\x05printf("%d ",*(p+i));
}
int *fun(int *p,int m,int n)
{
\x05int i,j,k;
\x05for(i=m-1,j=m+n-2;j>i;i++,j--)
\x05{
\x05\x05k=*(p+i) ;
\x05\x05*(p+i) = *(p+j);
\x05\x05*(p+j) =k;
\x05}
\x05return p;
}