程序:判断一个数是否为素(质)数

对于这个程序,我们根据素数的定义来进行编写。

我们知道,素数是除了1和它本身之外没有其他因数的自然数。

这样我们可以根据循环来进行求解。

#include <stdio.h>
int main()
{
	int n, i;
	printf("请输入自然数:n=");
	scanf("%d", &n);
	for (i = 2; i < n; i++)
		if (n % i == 0)break;
	if (i < n)
		printf("%d不是一个素数\n",n);
	else
		printf("%d是一个素数\n", n);
	return 0;
}

在这里插入图片描述
对于这整个程序而言
我们是需要先输入自然数,
再循环,循环从2开始到(n-1)
避免了1和n
这样只要在这个区间内找到能把n整除的数,就终止循环(break语句)

后面再根据终止循环时i与n的大小比较进行判定
如果是一个素数,则在区间内必有一个i使得余数为0,也就是说得出的i要小于n
这就很方便的判定出数据是否为素数。

素数的判定有很多种方法,并不是必须要从2到(n-1)进行除法运算
还可以从2到n/2
甚至是从2到根号下n。

本篇内容到此结束。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值