当前位置: 代码迷 >> 综合 >> PAT 1013 数素数 (20分)
  详细解决方案

PAT 1013 数素数 (20分)

热度:75   发布时间:2023-12-12 11:03:47.0

总结:
要学会使用vector,vector是封装好的类,可以理解为动态数组

#include <iostream>
#include <vector>
using namespace std;
bool Isprime(int a)
{
    for(int i=2;i*i<=a;i++){
    if(a%i == 0)return false;}return true;
}
int main()
{
    int m , n,num = 2;int flag = 0;//空格int t =0;    //换行cin>>m>>n;//输出第m个到第n个素数int cnt=0; //cnt记录素数的个数vector<int> v;while(cnt<n)//当cnt=n-1时,在if括号中,就变成了n{
    if(Isprime(num))//判断是否为素数{
    cnt++;if(cnt>=m)v.push_back(num);}num++;}for(int i=0;i<v.size();i++) {
    if(flag) cout<<" ";cout<<v[i];t++;flag = 1;if(t%10 == 0){
    t = 0;flag =0;cout<<"\n";}}return 0;
}