#include<stdio.h>
#define M 80
void proc(int *w,int p,int n)
{
int i,j,t,k;
for(i=p;i<=n-1;i++)
{
t = w[n-1]; //保存最后一个数
for(j = n-2;j >= 0 ;j--)
w[j+1] = w[j]; //所有数后移一位
w[0] = t; //将最后一个数的数值赋给第一位
}
}
void main()
{
int arr[M] = {1,2,3,4,5,6,7,8,9,10,11,12,13,14};
int i,p,n = 14;
printf("原数组: ");
for( i = 0; i < n;i++)
{
printf("%3d",arr[i]);
}
printf("\n\n输入移动的起始位: ");
scanf("%d",&p);
proc(arr,p,n); //调用功能函数
printf("\n移动后的数组: ");
for( i = 0; i < n;i++)
{
printf("%3d",arr[i]);
}
printf("\n");
}
原文地址:http://taiyi928.blog.51cto.com/7898859/1549878