#include <iostream>
using namespace std;
int main()
{
int n;
cin >> n;
int a[10];
for (int i = 0; i < n; i++)
a[i] = i + 1;
int j = 0;//记录被置零的个数
int k = 0;//满三置零
for (int i = 1; i <= n; i++) //i的初始值初始最好置1,因为每次循环到头后都默认想让i置零 开头又都有有个i++
{
if (a[i-1]!=0) //已经置零的就不要报数了
k++;
if (k % 3 == 0 && a[i - 1] != 0 //防止后面因为出现连续的0,导致k无法递增,导致k%3==0有效,导致莫名其妙增加置零的个数)
{
a[i - 1] = 0;
j++;
}
if (k == 3)
k = 0;
if (j == n-1)
break;
if (i == n)
i = 0;
}
for (int i = 0; i < n; i++)
{
if (a[i] != 0)
{
cout << a[i] << endl ;
}
}
return 0;
}
数组:排除数到3的成员
最新推荐文章于 2024-11-12 13:55:23 发布