前言
作为一个现在已经大三的学生,大一大二时得过且过,不喜欢去敲代码,对待问题不去深入探究。现在正在准备考研,复习以前学过的知识,有种“扒开云雾见天日”之感,领略到编程的乐趣,当然,学习过程中难免会遇到问题,欢迎友友们一起来探讨!
提示:以下是本篇文章正文内容,下面案例可供参考
一、编程练习
**1.打印a到b之间所有的素数**
二、实现思路
1.素数判断定义:只能被1和它本身整除的数;故,我们判断第i个是不是素数,最简单的方法就是第i个数与它前面的2-(i-1)个数都不能整除;所以我们设置两个嵌套循环,里面的循环目的是为了判断第i个数是不是素数,外面的循环是用来i的自增。
代码如下:
//打印a-b之间的所有素数
int main() {
//判断素数的标准:只能被1和它本身所整除的数
int a, b;
int i;
int j; //用来产生2-(i-1)个数
int count = 0;;//统计素数个数
printf("请输入你所要寻找的区间:\n");
scanf("%d%d", &a, &b);
printf("\n");
for (i = a; i <= b; i+=2) {
for (j = 2; j <= sqrt(i); j++) {
if (i % j == 0) {
break;
}
}
if (j>sqrt(i))
{
count++;
printf(" % d", i);
}
}
printf("\n\n% d 和% d之间的素数有%d个", a, b, count);
return 0;
}