//----------------------------------------------
//
Author
:心海
//
Date
:2013-12-02
//
Blog
:http://blog.sina.com.cn/u/2116533530
//
Copyright :anyone
//
PS
:欢迎拍砖、指正。一起学习,共同进步。
//-----------------------------------------------
#include<stdio.h>
void Display(int* arr,int N)
{
int i;编程之美2.17——数组循环移位
for(i=0;i<N;i++)
{
printf("%d
",arr[i]);
if((i+1)==0)
printf("\n");
}
printf("\n");
}
void Reverse(int* A,int l,int r)
{
int temp;
for(;l<r;l++,r--)
{
temp
= A[r];
A[r] = A[l];
A[l] = temp;
}
}
void RightShift(int* arr,int N,int K)
{
K%=N;
if(K<0)
K = K + N;
Reverse(arr,0,N-K-1);
Reverse(arr,N-K,N-1);
Reverse(arr,0,N-1);
}
int main()
{
int arr[9] = {1,2,3,4,5,6,7,8,9};
Display(arr,9);
RightShift(arr,9,5);
Display(arr,9);
return 0;
}
//
//
//
//
//
//-----------------------------------------------
#include<stdio.h>
void Display(int* arr,int N)
{
}
void Reverse(int* A,int l,int r)
{
}
void RightShift(int* arr,int N,int K)
{
}
int main()
{
}