为了方便理解,这里将数组设置为固定长度5,数组为char类型。
#include<stdio.h>
#include<stdlib.h>
void main()
{
char a[5] ={ '0','a','b','c','d' }; //首个元素为'0' 表示占位(数组下标从1开始),后面循环也直接从1开始
int k, first, i, j;
system("color 2f");
printf("数组元素为:");
for (i = 1; i <5; i++)
{
printf("%c", a[i]);
}
printf("\n请输入要循环的次数k=");
scanf("%d", &k);
for (i = 0; i < k; i++)
{
first = a[4]; //每次循环前把数组最后一个元素拿出来
for (j =4; j >= 1; j--)
a[j] = a[j - 1];
a[1] = first; //每次循环后,再把最后一个元素放到开头
}
printf("循环%d次后的结果为:",k);
for (i = 1; i <5; i++)
{
printf("%c", a[i]);
}
printf("\n");
}