关于这个VC问题,求解答

来源:百度知道 编辑:UC知道 时间:2024/05/31 14:14:15
要求输入一个序列的N个数字,然后编写一程序让这每个数字依次向后移动M个位置。M《N,最后M个数字移到最前面,要求用一维数组做?
请问怎么定义,动态一维数组没有学,而,M,N又是手动输入的。。有其他办法么,如果要用动态一维数组,请说说那语法怎么回事

#include<stdio.h>
int main()
{
int m,n,d;
scanf("%d",&n);
int a[n]={0};
for(int i=0;i<n;i++)
{
scanf("%d",&d);
a[i]=d;
}
for(int i=0;i<n;i++)
printf("%d ",a[i]);
scanf("%d",&m);
if(m>=n) break;
else
for(int i=0;i<m;i++)
a[i+m]=a[i];
for(int i=m;i<n+m;i++)
printf("%d",a[i]);
}

#include <iostream>
using namespace std;
int main()
{
int M = 0;
int N = 0;
int temp = 0;
cin >> N;
int *A = new int[N]; //A[N]动态生成
for(int i = 0; i < N; ++i)
{
A[i] = i;
}
cin >> M;
int *T = new int[M];
for(int i = 0; i < M; ++i)
{
T[i] = A[M-1+i];
}
for(int i = 0; i < N-M; ++i)
{