【01】判断素数/质数(C语言)

目录

(1)素数特点:只能被1和本身整除

(2)代码如下:

(3)运行结果如下

​编辑

(4)函数引申


(1)素数特点:只能被1和本身整除

也就是可以通过for循环并使用if语句来判断是否有除了1和它本身的数整数,如果有则不是素数。

(2)代码如下:

复制代码
void is_prime()
{
	int i = 0;
	int j = 0;
	int flag = 0;
    printf("请输入要判断的数:");
    scanf("%d",&i);

		for (j = 2; j < i; j++)
		{
			if (i % j == 0)
			{
				flag++;
			}
		}
		if (flag == 0)
		{
			printf("%d是素数\n", i);
		}

}
int main()
{
	is_prime();
	return 0;
}

(3)运行结果如下

(4)函数引申

利用上面实现的is_prime函数,打印100到200之间的素数。

通过嵌套for循环改变i的值来逐一判断

改造后的函数如下

复制代码
void is_prime()
{
	int i = 0;
	int j = 0;
	int flag = 0;
	for (i = 100; i < 201; i++)
	{
		flag = 0;
		for (j = 2; j < i; j++)
		{
			if (i % j == 0)
			{
				flag++;
			}
		}
		if (flag == 0)
		{
			printf("%d\n", i);
		}
	}
}
int main()
{
	is_prime();
	return 0;
}

运行结果如下:

所以100~200之间的素数有101、103、107、109、113、127、131、137、139、149、151、157、163、167、173、179、181、191、193、197、199这21个。

相关推荐
jz_ddk2 小时前
[学习] C语言数学库函数背后的故事:`double erf(double x)`
c语言·开发语言·学习
无小道3 小时前
c++-引用(包括完美转发,移动构造,万能引用)
c语言·开发语言·汇编·c++
FirstFrost --sy5 小时前
数据结构之二叉树
c语言·数据结构·c++·算法·链表·深度优先·广度优先
森焱森5 小时前
垂起固定翼无人机介绍
c语言·单片机·算法·架构·无人机
秋说7 小时前
【PTA数据结构 | C语言版】两枚硬币
c语言·数据结构·算法
☆璇8 小时前
【数据结构】栈和队列
c语言·数据结构
Heartoxx10 小时前
c语言-指针与一维数组
c语言·开发语言·算法
秋说12 小时前
【PTA数据结构 | C语言版】将数组中元素反转存放
c语言·数据结构·算法
森焱森13 小时前
APM与ChibiOS系统
c语言·单片机·算法·架构·无人机
kyle~14 小时前
C/C++字面量
java·c语言·c++