判断一个数是否为素数(质数) 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)
blank

相关推荐

  • pycharm安装和环境配置_pycharm安装教程linux

    pycharm安装和环境配置_pycharm安装教程linuxPyCharm是一款PythonIDE,其带有一整套可以帮助用户在使用Python语言开发时提高其效率的工具,比如,调试、语法高亮、Project管理、代码跳转、智能提示、自动完成、单元测试、版本控制等等。此外,该IDE提供了一些高级功能,以用于支持Django框架下的专业Web开发。安装1.进入Pycharm官网的下载地址:链接:http://www.jetbrains.com/pycharm/download/#section=windows.2.professional表示专业版

  • rowBounds_robocopy用法

    rowBounds_robocopy用法generator添加

  • debian9.5安装教程_debian11安装教程

    debian9.5安装教程_debian11安装教程IPSET是Linux内核中用来建立、维护和查看IP集合的工具,常常与iptables配合使用。在Debian-5.0.3下安装ipsetv2.3.3,遇到了一些问题,最终安装成功。将安装过程及遇到的问题和大家分享。 1安装环境Debian-5.0.3,安装过程中选择内核为2.6.26-2-486。 2用Debian的包管理器aptitude安装ipset安装完成以后

  • ShareSDK for iOS 2.9.0已经公布

    ShareSDK for iOS 2.9.0已经公布

    2021年11月16日
  • 华为海思六大部门_海思3516

    华为海思六大部门_海思351651-20210316华为海思Hi3516DV300的linux系统编译2021/3/1610:42https://xueqiu.com/7970718062/159110439官井想开挖掘机来自iPhone发布于2020-09-1315:18$润和软件(SZ300339)$HiSparkAICamera套件l支持鸿蒙OS、LiteOS、Linux系统,方便进行产品的原型验证和快速开发l板载海思Hi3516DV300芯片,内置双核Cortex-A7,最高运行评率900M.

  • 特征选择方法之信息增益

    特征选择方法之信息增益

发表回复

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

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