您的位置:早安暖心话>美文美句>生活常识>正文

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

人气:284 ℃/2022-09-13 08:51:20

工具/材料

ubuntu,vim,gcc

01打开ubuntu并开启一个终端,输入命令vim is_prime.c,打开编辑页面,输入预处理指令#include<stdio.h>用于在主函数中调用判断函数。然后定义一个函数int is_prime(int n),即判断整数n是否为素数。

02首先,判断这个数是否小于2.若是,则直接返回0,即表示它不是一个素数。

03然后定义中间的因数i,初始值为2。依次使n对i取余数,看n能否整除i,然后令i自增直到i的平方大于n。在这过程中,如果遇到n能整除i,则说明n不是一个素数。如果循环能够直到i的平方大于n才结束,说明n是一个素数。

04接下来,我们使用主函数进行测试,使用printf("%d : %dn", n, is_prime(n))的格式进行输出。如果输出结果为0,说明不为素数;结果为1,说明是一个素数。

测试的数据依次是2,4,9,15, 17, 23, 25。

05退出编辑器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;

}

//如果程序运行到这里,说明i*i大于n

//说明n是一个素数

return 1;

}

int main()

{

printf("%d : %dn", 2, is_prime(2));

printf("%d : %dn", 4, is_prime(4));

printf("%d : %dn", 9, is_prime(9));

printf("%d : %dn", 15, is_prime(15));

printf("%d : %dn", 17, is_prime(17));

printf("%d : %dn", 23, is_prime(23));

printf("%d : %dn", 25, is_prime(25));

return 0;

}

  • 分手的句子经典

    ★☆ 我最最难过的并不是你要与分手,我难过的是你说你不喜欢我了。★☆ 为什么,就算一千句一万句我爱你,也当不了一句我们分手吧。★☆ 没分手之前,臣妾在她那里的备注是他,分手之后变成了它。★☆ 当初的当...

    心情说说 浏览:590次
  • 生命可贵的名人名言

    1、生命不可能有两次,但是许多人连一次也不善于度过。2、我每天都在数着你的笑,可是你连笑的时候,都好寂寞。他们说你的笑容,又漂亮又落拓。3、生命是一棵树,我们应该有树的精神:坚定不移,顽强不屈。4、生...

    经典语录 浏览:143次
  • 青春情感语录

    1、青春情感语录我不需要你的承诺,我会为你守候生生世世,因为你是我的梦。2、想你想的睡不着觉,念你念的心怦怦直跳;恋你恋的鬼迷心窍,爱你爱的肉直往下掉!3、不论你去舍处,我的心追寻着你的踪影,你落在地...

    经典语录 浏览:168次
  • 成功语录经典语录-励志句子

    ★☆  世界上%的人是吃小亏而占大廉价,而%的人是占小廉价吃大亏。大多数成功人士都源于那%。★☆  【一句话的故事】今天去阳台浇花的时候,一桶晒好的水随机分配,浇完了才发现,原来自...

    经典语录 浏览:138次
  • 微信视频聊天怎么开美颜?

    01微信本身没有提供美颜功能,我们可以打开手机自带的美颜。通过桌面的【设置】——【其他设置】进入,点击【视频通话特效】——【微信】,打开开关,再通过桌面...

    生活常识 浏览:825次
Copyright © 2012-2024 早安暖心话 All Rights Reserved
一个致力于分享各类精美句子的心情说说语录网站,是您发朋友圈、发微博、发动态的好帮手!