题目描述:
已知数组array[10]={1,2,3,4,5,6,7,8,9,10};要求把下标从0到p(p从键盘输入)的数组元素平移到数组的最后,并输出平移后的数组。
输入格式:输入一个整数p;
输出格式:共一行,输出平移后的数组,数字之间用空格分隔
示例:
输入:3
输出:5 6 7 8 9 10 1 2 3 4
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
int main()
{
//输入
int n = 0;
int arr[10] = { 1, 2, 3, 4, 5, 6, 7, 8, 9,10 };
int copy[10] = { 1, 2, 3, 4, 5, 6, 7, 8, 9,10 };
scanf("%d", &n);
//平移
for (int i = 0; i < 10; i++)
{
if ((n + i + 1) < 10)
{
arr[i] = copy[n + i + 1];
}
else
{
arr[i] = copy[i - (10 - n - 1)];
}
}
//输出
for (int i = 0; i < 10; i++)
{
printf("%d ", arr[i]);
}
return 0;
}