#include<stdio.h>
#include<math.h>
int main(void)
{
int num;
int m;
int n;
scanf_s("%d", &m);
scanf_s("%d", &n);
int cnt = 0;
int count = 0;
int i;
for (num = 2; count <= n; num++)
{
int process = 0;
for (i = 2; i <= sqrt(num); i++)
{
if (num % i == 0)
{
process = 1;
break;
}
}
if (process == 0)
{
count++;
if (count >= m && count <= n)
{
cnt++;
if (cnt % 10 == 1)
{
printf("%d", num);
}
else
printf(" %d", num);
if (cnt % 10 == 0)
printf("\n");
}
}
}
return 0;
}
1.一个个直接判断
这里继续用到以前判断素数的小技巧 即循环只遍历到被测数的开根号
2.到达后直接输出
避免了再次储存
3.用一个变量做格式
关于空格:沿用了直接的学习经验 并利用一个变量作为计数器来实现
关于换行:同样利用计数器变量来判断何时应该换行
总结:此题比较简单