1969: C/C++经典程序训练7---求某个范围内的所有素数
Time Limit: 1 Sec Memory Limit: 64 MBSubmit: 414 Solved: 85
[ Submit][ Status][ Web Board]
Description
求小于n的所有素数,按照每行10个显示出来。
Input
输入整数n(n<10000)。
Output
每行10个依次输出n以内的所有素数。
Sample Input
100
Sample Output
2 3 5 7 11 13 17 19 23 29
31 37 41 43 47 53 59 61 67 71
73 79 83 89 97
这个题看似简单,一个格式错误可坑的我不轻啊。。。
#include<stdio.h>
#include<math.h>
int main()
{
int i,n,m,count=0;
scanf("%d",&n);
for(i=2; i<n; i++)
{
m=sqrt(i);
int j;
for(j=2; j<=m; j++)
if(i%j==0)
break;
if(j>m)
{
if(count==0)
{
printf("%d",i);
count++;
}
else
{
printf(" %d",i);
count++;
}
if(count%10==0)
{
printf("\n");
count=0;
}
}
}
return 0;
}
换种思维方式,既然找不到最后一个数,就找第一个数 其他都“ i”即可
选择的顺序也特别重要啊