解题思路:
首先可以确定有两个循环,一个是对是否是素数进行判断,一个是对2~N之间的每一个数都要判断一次。素数就是除了 1 和它自身以外没有别的数可以被它整除的数,也就是当要进行判断的数 i 和 1 ~ i 之间的所有整数 j 相除时,除了当 j ==1 或者 j == i 时都不能整除,或者说余数为不为 0 ,那么 i 就是素数。j == 1 这里可以不考虑,所以当在 j < i 的情况下, i % j ==0 不成立,那么 i 就是素数。
注意事项:
1、注意两个循环之间的关系
2、要清楚函数函数运行的流程
3、知道什么是素数
4、别忘了 i == j 情况
参考代码:
#include<stdio.h>
int main()
{
int N;
int i;
int j;
scanf("%d", &N);
for(i = 2; i <= N; i++)
{
for(j = 2; j < i; j++)
{
if(i%j == 0)
break;
}
if(i == j)
printf("%d\n", i);
}
return 0;
}
0.0分
0 人评分
C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:
一点编程也不会写的:零基础C语言学练课程
解决困扰你多年的C语言疑难杂症特性的C语言进阶课程
从零到写出一个爬虫的Python编程课程
只会语法写不出代码?手把手带你写100个编程真题的编程百练课程
信息学奥赛或C++选手的 必学C++课程
蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程
手把手讲解近五年真题的蓝桥杯辅导课程
发表评论 取消回复