判断一个数是否为素数(质数) c语言[通俗易懂]

质数又称素数。一个大于1的自然数,除了1和它自身外,不能被其他自然数整除的数叫做质数。最小的质数是2,它也是唯一的偶数质数。原理:number只需被(2~根号下number)之间的每一个整数去除就可以了(包括根号下number这个数)。如果nummber不能被(2~根号下number)间任一整数整除,number必定是素数#include”stdio.h”#include”math.h”main(){ intnumber,i,n; printf(“请输入一个正整数:

大家好,又见面了,我是你们的朋友全栈君。

质数又称素数。一个大于1的自然数,除了1和它自身外,不能被其他自然数整除的数叫做质数。最小的质数是2,它也是唯一的偶数质数。
原理:number 只需被 (2 ~ 根号下number)之间的每一个整数去除就可以了(包括 根号下number这个数)。如果 nummber不能被 (2 ~ 根号下number) 间任一整数整除,number 必定是素数

#include"stdio.h"
#include"math.h"
main()
{ 
   
	int number,i,n;
	printf("请输入一个正整数:\t");
	scanf("%d",&number);	
		while(number>0)//输入0或小于0的数,结束循环
		{ 
   
			n=(int)sqrt(number);//开平方
			if(number==1)
			{ 
   
				printf("1既不是素数,也不是合数\n");//注:1既不是素数,也不是合数
                scanf("%d",&number);
				continue; //跳出这一次循环 
			}
			for(i=2;i<=n;i++)   //2和3的开平方分别为1.414和1.732,不满足循环条件(i<=n)
			{ 
   
				if(number%i==0)
				  break;
			}
		if(i>n) //i=2,2和3满足(i>n),所以是素数
			printf("%d是素数\n",number);
		else
			printf("%d不是素数\n",number);
		printf("请输入一个正整数:\t");
		scanf("%d",&number);		 
	}
}


运行:成功
2.以下是函数形式

#include"stdio.h"
#include"math.h"
void find_prime(int number)
{ 
   
	int n,i;
	n=(int)sqrt(number);
	for(i=2;i<=n;i++)
	{ 
   
		if(number%i==0)
			break;
	}
	if(i>n)
		printf("%d是素数\n",number);
	else
		printf("%d不是素数\n",number);
}

void main()
{ 
   
	int number;
	printf("请输入大于一的正整数:\t");
	scanf("%d",&number);
	if(number>1)
		find_prime(number);
	else if(number==1)
		printf("1既不是质数,也不是合数\n");
	else
		printf("请输入大于一的正整数\n");
}


版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/126465.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • Android移动开发-VR全景照片简单实现

    Android移动开发-VR全景照片简单实现VR技术的热度每年都在增长,在购物、旅游等方面运用度很高。该项目引用了Google的vr:sdk-panowidget依赖库,通过VrPanoramaView,简单实现在手机上查看全景照片,下面是项目介绍。build.gradle(Module:app)需要导入依赖:dependencies{implementation‘com.google.vr:sdk-panowidget:1.30.0’}布局文件activity_main.xml,调

  • 训练过程–Batchsize(总之一般情况下batchsize能设多大就设多大)[通俗易懂]

    尽可能地设大batchsize "LargeBatchLargeBatch在keypoints上也是有用的,大概能提到0.4到0.3的点的AP。"在利用ImageNet训练AlexNet模型时,其中每GPU的最优批量大小为512。如果我们希望使用大量GPU并保证每GPU皆拥有理想的执行效率,则应当将批量大小设定为16×512=8192。 "Tra…

  • Qtime定义(手工废物利用简单好看)

    QTime::QTime()默认构造函数,构造一个时,分,秒都为0的时间,如00:00:00.000(午夜)QTime::QTime(inth,intm,ints=0,intms=0)构造一个用户指定时,分,秒的时间.其参数有效值为:h:0–23m:0–59ms:0–999QTimeQTime::addMSecs(intms)const返回一个当前时间对象之后或之前m…

  • vue子组件调用父组件函数_vue子组件修改父组件值

    vue子组件调用父组件函数_vue子组件修改父组件值vue子组件调用父组件的3种方法

  • 建立友好城市有什么用_中国国际友好城市联合会

    建立友好城市有什么用_中国国际友好城市联合会原题连接Palmia国有一条横贯东西的大河,河有笔直的南北两岸,岸上各有位置各不相同的N个城市。北岸的每个城市有且仅有一个友好城市在南岸,而且不同城市的友好城市不相同。每对友好城市都向政府申请在河上开辟一条直线航道连接两个城市,但是由于河上雾太大,政府决定避免任意两条航道交叉,以避免事故。编程帮助政府做出一些批准和拒绝申请的决定,使得在保证任意两条航线不相交的情况下,被批准的申请尽量多。输入格式第1行,一个整数N,表示城市数。第2行到第n+1行,每行两个整数,中间用1个空格隔开,分别表示南岸和

  • Linux 常用的zip压缩和解压命令详解

    Linux 常用的zip压缩和解压命令详解前言  嗨,大家好,又与大家见面了,感谢大家在2021年的陪伴,让我们在2022年继续一路前行。相信很多小伙伴在使用Linux系统中经常对文件进行或者文件夹进行操作,不像在Windows中可以使用可视化的工具对文件和文件夹进行压缩和解压操作,那么本次与大家一起学习Linux下zip和unzip的压缩和解压命令,并熟悉常用的参数介绍。常用命令  相信很多对于有一定Linux基础的小伙伴,常用的压缩有:zip、unzip、tar、gzip、bzip2等常用的命令,下面开始zip和unzip使用方法和参数详

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号