用C语言编写判断一个数是否是素数的程序

生活常识 2023-05-13 21:41生活常识www.xinxueguanw.cn

工具/材料

ubuntuvimgcc

1:打开ubuntu并开启一个终端输入命令vim is_prime.c打开编辑页面输入预处理指令#include<stdio.h>用于在主函数中调用判断函数。然后定义一个函数int is_prime(int n)即判断整数n是否为素数。
2:判断这个数是否小于2.若是则直接返回0即表示它不是一个素数。
3:然后定义中间的因数i初始值为2。依次使n对i取余数看n能否整除i然后令i自增直到i的平方大于n。在这过程中如果遇到n能整除i则说明n不是一个素数。如果循环能够直到i的平方大于n才结束说明n是一个素数。
4:接下来我们使用主函数进行测试使用printf("%d : %d\n", n, is_prime(n))的格式进行输出。如果输出结果为0说明不为素数;结果为1说明是一个素数。
测试的数据依次是24915 17 23 25。
5:退出编辑器vim然后使用gcc编译并运行它得到结果。通过结果我们可以看出预期的结果与我们对于素数的认知是相同的说明我们的程序编写没有错误。以下是所有的源代码
#include <stdio.h>

//判断一个数是否为素数的函数定义
int is_prime(int n)
{
//判断n是否小于2.若小于则直接返回0
//表示n不是一个素数
if(n < 2)
return 0;
//定义一个中间变量i初始化i=2
int i = 2;
//依次判断每一个不大于根号n的i是否能被n整除
for(i = 2; i i <= n;i++)
{
//如果能够整除
if(n % i == 0)
//直接返回0,表示n不是一个素数
return 0;
}
//如果程序运行到这里说明ii大于n
//说明n是一个素数
return 1;
}

int main()
{
printf("%d : %d\n", 2, is_prime(2));
printf("%d : %d\n", 4, is_prime(4));
printf("%d : %d\n", 9, is_prime(9));
printf("%d : %d\n", 15, is_prime(15));
printf("%d : %d\n", 17, is_prime(17));
printf("%d : %d\n", 23, is_prime(23));
printf("%d : %d\n", 25, is_prime(25));
return 0;
}

Copyright@2015-2025 www.xinxueguanw.cn 心血管健康网版板所有