c语言输入1到50并求出素数个数

如题所述

#include<stdio.h>
#include<stdlib.h>
int main()
{
    int i1,i2;
    for(i1=1;i1<=50;i1++)
    {
        for(i2=2;i2<i1;i2++)
            if(i1%i2==0)
                break;
        if(i1==i2)
            printf("%d ",i1);
    }
    system("pause");
    return 0;
}

温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-05-12
#include <iostream>
using namespace std;
int main()
{
int m;
cin>>m;
int sum=0;
for(int i=1;i<=m;i++)
{
int count=0;
for(int j=1;j<=i;j++)
{
if(i%j==0)
{
count++;
}
}
if(count==2)
{
sum++;
//cout<<i<<endl;
}
}
cout<<sum<<endl;
return 0;
}

输出1到m的素数个数,你要1到50的就输50,输出的结果就是个数。

追问

你说的还没学,不过还是谢谢了

第2个回答  2019-04-09
int
main()
{
int
a,b,c,d,e=0;
scanf("%d,%d",&a,&b);
for(c=a;c<=b;c++)
{
for(d=2;d<=c;d++)
{
if(c%d==0&&d!=c)
{
break;
}
if(d==c)
{
e=e+1;
printf("%d
",c);
}
}
}
printf("两数间素数共有%d\n",e);
return
0;
}
我试了没有错误,你再试一下。你输入的时候注意要用逗号好分开。