C语言实现素数查找


前言

作为一个现在已经大三的学生,大一大二时得过且过,不喜欢去敲代码,对待问题不去深入探究。现在正在准备考研,复习以前学过的知识,有种“扒开云雾见天日”之感,领略到编程的乐趣,当然,学习过程中难免会遇到问题,欢迎友友们一起来探讨!


提示:以下是本篇文章正文内容,下面案例可供参考

一、编程练习

     **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;
}

三、运行结果

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/m0_46569169/article/details/123904858
今日推荐