#include#include 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.用一个变量做格式
关于空格:沿用了直接的学习经验 并利用一个变量作为计数器来实现
关于换行:同样利用计数器变量来判断何时应该换行
总结:此题比较简单



