2 条题解

  • 0
    @ 2023-10-21 22:05:07
    #include<bits/stdc++.h>
    using namespace std;
    int main(){
        int n,b=0,c=1;//c为标志位
        cin>>n;
        int i;
        for(i=2;i<=n;i++){
            for(int j=2;j<i;j++){
                if(i%j==0){
                    c=2;//标志位变为“否”
                }
            }
            if(c==1){
                b++;
            }
            c=1;//标志位“归0”
        }
        cout<<b;
    }
    
    • @ 2023-10-21 22:05:45

      与老师不尽相同

  • 0
    @ 2022-11-26 9:38:21

    做法 1

    #include<bits/stdc++.h>
    using namespace std;
    int main()
    {
    	int n, x, cnt;
    	cin >> n;
    	cnt = 0;
    	for (int i = 1; i <= n; i++)
    	{
    		bool flag = true; // 一开始认为是质数
    		if (i <= 1)
    		    flag = false;
    		for (int j = 2; j <= i - 1; j++)
    		    if (i % j == 0)
    		       flag = false;
    	    if (flag == true)
    	       cnt++;
    	}
    	cout<<cnt;
    	return 0;
    }
    
    

    做法 2

    #include <bits/stdc++.h>
    using namespace std;
    int main()
    {
        int n, cnt;
        cin >> n;
        cnt = 0;
        for (int i = 2; i <= n; i++)
        {
            bool flag = true;
            for (int j = 2; j < i; j++)
            {
                if (i % j == 0)
                    flag = false;
            }
            if(flag==true)
                cnt++;
        }
        cout << cnt << "\n";
        return 0;
    }
    
    • 1

    信息

    ID
    1043
    时间
    1000ms
    内存
    256MiB
    难度
    5
    标签
    递交数
    200
    已通过
    84
    上传者