n=int(input())
s=1
lists=[]
for i in range(1,n+1):
lists.append(i)
for j in lists:
if j==1:
continue
else:
for a in range(1,n//j):
s+=1
if j*s in lists:
lists.remove(j*s)
for w in lists:
if w!=1:
print(w)
作用是输出0~n的所有质数,
但是在运行过程中大部分奇数的倍数不知道为什么会被打印出来,望大佬点明。