#include <stdio.h>
void move(int*x, int n, int m);
int main()
{
int a[80], i, m, n, *p;
printf("请输入n,m:");
scanf("%d%d", &n, &m);
for (p = a, i = 0;i < n;i++)
scanf("%d", &a[i]);//填空
move(p, n, m);//填空
printf("移动后的数据为:");
for (i = 0;i < n;i++)
printf("%d", a[i]);
printf("\n");
return 0;
}
void move(int*x, int n, int m)
{
int i, j, k;
for (i = 0;i < m;i++)
{
//填空
for (j = 1;j < n;j++)
//填空
x[j - 1] = x[0];
}
}
只有4个空可以填,已经确认以上代码除自己填好的两个空外其余代码与原题相同。
我已经填了两个不确定是否正确,但还有两个空想了挺久也没有想出结果。感觉最后两个空是数组内数组互换位置,我想的是将数组的一个值赋予k,然后给数组相应的位置,但是这样原本位置的数会被覆盖,等于失去了这个数字一样。会不会是题目的问题?