【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个。

相关推荐
Kurbaneli6 小时前
深入理解 C 语言函数的定义
linux·c语言·ubuntu
Archer1946 小时前
C语言——链表
c语言·开发语言·链表
夜晚中的人海6 小时前
【C语言】------ 实现扫雷游戏
android·c语言·游戏
面会菜.6 小时前
C语言(队列)
c语言·开发语言
小猿_007 小时前
C语言单链表头插法
c语言·开发语言
仟濹8 小时前
【算法 C/C++】二维差分
c语言·c++·算法
亭墨10 小时前
linux0.11内核源码修仙传第五章——内存初始化(主存与缓存)
linux·c语言·驱动开发·学习·缓存·系统架构
愚润求学10 小时前
从零开始学C语言文件操作:理论与代码详解
c语言·开发语言·文件操作·语法
我是大咖10 小时前
c语言笔记 一维数组与二维数组
c语言·笔记·算法
誓约酱10 小时前
(每日一题) 力扣 283 移动零
linux·c语言·数据结构·c++·算法·leetcode