#include
int main ()
{
int m,n,i,h,s;
s=0;
printf("请输入两个数:");
scanf("%d%d",&m,&n);
for(i=m;i<=n;i++)
{
for(h=2;h<i;h++)
if(i%h==0) break;
if(i==h)
{
s=s+1;
printf("%6d",i);
}
if(s%10==0) printf("\n");
}
printf("\n");
printf("总共有%d个",s);
return 0;
}
规定了1不是素数,
这么多空行是因为,每次你找到10个素数(或0),在找到下一个素数之前,每次循环,s一直都能被10整除,所以才有这么多空行
这个问题不是之前就有人回答你了
#include<iostream>
using namespace std;
int main()
{
int m, n, i, h, s;
s = 0;
printf("请输入两个数:");
scanf("%d%d", &m, &n);
for (i = m; i <= n; i++)
{
for (h = 2; h < i; h++)
if (i%h == 0)
break;
if (i == h)
{
if (s % 10 == 0&&s!=0)
printf("\n");
s = s + 1;
printf("%6d", i);
}
}
printf("\n");
printf("总共有%d个", s);
return 0;
}