@[ymysleep](/user/692698) 显然您数组开小了
by LJ07 @ 2022-04-25 20:21:03
5000不够,要开到5001
by LJ07 @ 2022-04-25 20:21:29
@[ymysleep](/user/692698) 把数组放外面,在开大一些就好了
```cpp
#include<stdio.h>
#include<math.h>
int arr[5005];
int main()
{
int n = 0;
scanf("%d", &n);
for (int i = 1; i <= n; i++)
{
for (int j = 1; j <= n; j++)
{
if (j % i == 0)
{
if (arr[j] == 0)
arr[j] = 1;
else
arr[j] = 0;
}
}
}
for (int i = 1; i <= n; i++)
{
if (arr[i] == 1)
{
printf("%d ", i);
}
}
return 0;
}
```
by qfpjm @ 2022-04-25 20:21:33
@[LJ07](/user/312306) 谢谢
by ymysleep @ 2022-04-26 13:28:47
@[Ted_hjl](/user/342868) 谢谢
by ymysleep @ 2022-04-26 13:29:12
```cpp#include<bits/stdc++.h>
using namespace std;
int m,n,a[5001]={1,4,9,16,25,36,49,64,81,100,121,144,169,196,225,256,289,324,361,400,441,484,529,576,625,676,729,784,841,900,961,1024,1089,1156,1225,1296,1369,1444,1521,1600,1681,1764,1849,1936,2025,2116,2209,2304,2401,2500,2601,2704,2809,2916,3025,3136,3249,3364,3481,3600,3721,3844,3969,4096,4225,4356,4489,4624,4761,4900,5041,5184,5329,5476,5625,5776,5929,6084,6241,6400,6561,6724,6889,7056,7225,7396,7569,7744,7921,8100,8281,8464,8649,8836,9025,9216,9409,9604,9801,10000};
int main()
{
cin>>n>>m;
for(int i=0;i<5001;i++)
{
if(a[i]>n) break;
cout<<a[i]<<" ";
}
cout<<endl;
} ```
by najja @ 2022-07-10 15:16:32
he
by najja @ 2022-07-10 15:17:00
不懂就问,我也是写C的,佬你这个math在这里是起什么作用的
by LeeJC @ 2022-10-17 19:18:21