首先纠正一下,你举的例子是间隔4个数,连续取2个
而且你的例子不是从第0个开始。
我下面就以间隔6个数,连续取2个来距离(间隔4个方法相同)
我举2个例子:
思路①:先找第0,8,16...放入b[0],b[2],b[4,]...,然后再找第1,9,17....放入b[1],b[3],b[5].....
这样就可以了
思路②用循环,中间只要有一个判断就可以了,我把这个的过程给你打上
我的例子是以20个数字的数组,间隔6
如果你要变化数组个数,只要把 #define N 20 中的20替换即可,注意20前面有“空格”
如果你要变化间隔个数,只要把 #define M 6 中的6替换即可,注意6前面有“空格”
注意:输入数组时,用“回车”或者“空格”来隔开输入的数字,不要用“逗号”
#include<stdio.h>
#define N 20
#define M 6
void main()
{
int a[N],b[N],i,n;
for(i=0;i<=N-1;i++)scanf("%d",&a[i]);
i=0;n=0;
while(i<=N-1)
{
if((i+M+1)%(M+2)==0)
{
b[n++]=a[i];
i+=M+1;
}
else
{
b[n++]=a[i++];
}
}
for(i=0;i<=n-1;i++)printf("%d,",b[i]);
}
温馨提示:答案为网友推荐,仅供参考