#include<iostream>
using namespace std;
int main(){
int i;
cout<<"请输入整数:";
cin>>i;
int count=0;
if(i>1){
cout<<"2"<<endl;
count++;
}
for(int j=3;j<i+1;j++){
if(j%2!=0){
int t=0;
for(int w=j/2+1;w>0;w--){
if(j%w==0){
break;
}
t++;
}
if(t==j/2){
cout<<j<<endl;
count++;
}
}
}
cout<<"从1至"<<i<<"范围内的质数有"<<count<<"个"<<endl;
return 0;
}
备注:首先判断输入整数是否大于1,针对大于等于3的整数除2求余,若奇数,再对该奇数折半顺序相除,若全部不能整除,计数器加1,然后判断循环次数与计数器是否相等,相等,表示该数为奇。