Python 语言程序设计(2017 年秋)

1067. 循环右移数组元素

单点时限: 2.0 sec

内存限制: 256 MB

$n$ ($1 \leq n \leq 10$) 个元素组成的数组的各个元素向右移动 $m$ ($m < n$) 个位置,右边的 $m$ 个元素移到开头位置。

//********** Specification of input **********
void input(int* p, int n);
/* PreCondition:
p points to an array with n integers
PostCondition:
enter and store n integers into an array pointed by p
*/
//********** Specification of rotate **********
void rotate(int* p, int n, int m);
/* PreCondition:
p points to an array with n integers, m is also an integer
PostCondition:
rotate m elements of an array
*/
//********** Specification of output **********
void output(int* p, int n);
/* PreCondition:
p points to an array with n integers
PostCondition:
print each element of an array pointed by p in one line, with one blank between elements.
*/

只需按要求写出函数定义,并使用给定的测试程序测试你所定义函数的正确性。

不要改动测试程序。

测试正确后,将测试程序和函数定义一起提交。

/***************************************************************/
/*                                                             */
/*  DON'T MODIFY main function ANYWAY!                         */
/*                                                             */
/***************************************************************/
#include <stdio.h>
#define N 10
//********** Specification of input **********
void input(int* p, int n)
/* PreCondition:
p points to an array with n integers
PostCondition:
enter and store n integers into an array pointed by p
*/
{ //TODO: your function definition
}
//********** Specification of rotate **********
void rotate(int* p, int n, int m)
/* PreCondition:
p points to an array with n integers, m is also an integer
PostCondition:
rotate m elements of an array
*/
{ //TODO: your function definition
}
//********** Specification of output **********
void output(int* p, int n)
/* PreCondition:
p points to an array with n integers
PostCondition:
print each element of an array pointed by p in one line,
with one blank between elements.
*/
{ //TODO: your function definition
}
/***************************************************************/
int main()
{
    int a[N],n,m;
    scanf("%d%d",&n,&m);
    //***** functions input, rotate, output are called here ******
    input(a,n);
    rotate(a,n,m);
    output(a,n);
    //************************************************************
    return 0;
}
不限期开放

题目列表