循环右移


#include<stdio.h>

void reverse(int a[],int s,int e)
{
    int i,j,t;
    for(i=s,j=e;i<j;i++,j--)
    {
        t=a[i];
        a[i]=a[j];
        a[j]=t;
    }

}

int main()
{
    int a[100],n,i,p;

    scanf("%d",&n);
    for(i=0;i<n;i++)
        scanf("%d",&a[i]);
    printf("shift: ");
    scanf("%d",&p);
    p=n-p;
    reverse(a,0,p-1);
    reverse(a,p,n-1);
    reverse(a,0,n-1);

    for(i=0;i<n;i++)
        printf("%d ",a[i]);
    printf("\n");

    return 0;

}

你可能感兴趣的:(循环右移)