33,320
社区成员




int *array,n,size,i;
int* arrtmp ;
int* arrtmp1;
scanf("%d %d",&size,&n);
array = (int*)malloc(sizeof(int)*size);
for( i=0;i<size;i++)
{
scanf("%d",array+i);
}
arrtmp = (int*)malloc(sizeof(int)*(size-n));
arrtmp1 = (int*)malloc(sizeof(int)*(n));
memcpy(arrtmp,array,sizeof(int)*(size-n));
memcpy(arrtmp1,array+(size-n),sizeof(int)*n);
memcpy(array,arrtmp1,sizeof(int)*n);
memcpy(array+n,arrtmp,sizeof(int)*(size-n));
for( i=0;i<size;i++ )
{
printf("%d ",array[i]);
}
#include <stdio.h>
int main()
{
int m,n;
int i, j;
scanf("%d %d",&m,&n);
static int a[1001];
for (i=0; i < m; i++) {
scanf("%d",&a[i]);
}
int k=m-n;
if (k>0){
for (j=0; j<n; j++) {
printf("%d ",a[k++]);
}
for (j=0; j<k; j++) {
if (j!=m-n-1)
printf("%d ",a[j]);
else
printf("%d",a[j]);
}
}
else{
k=m-n%m;
for (j=0; j<(n%m); j++) {
printf("%d ",a[k++]);
}
for (j=0; j<k; j++) {
if (j!=k-1)
printf("%d ",a[j]);
else
printf("%d ",a[j]);
}
}
return 0;
}
C语言不支持在for循环里定义循环变量,比如for (int j = 0; j < k; j++)只有C++以上的高级语言才支持这种写法