判断一个数是否为素数(c语言)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
在C语言中,我们经常会用到判断一个数的性质,今天就以如何判断一个数是否为素数为例来说明思路,希望能够达到触类旁通的效果。
1.直接判断一个数是否为素数,代码如下:
/*
目的:判断一个数是否是素数
*/
# include
int main(void)
{
int val;
int i;
scanf("%d",&val);
for(i = 2; i < val; i++)// 用2到(val-1)的数去除val
{
if(val % i == 0)// 判断能否整除
break;
}
if (i == val)
printf("YES!\n");
else
printf("No!\n");
}
注:for循环的功能:
①若能整除,通过break跳出函数
②若一直到val-1都不能整除,此时i再自增1到val,不满足i < val 跳出for循环,这时i = val。
2.通过函数来判断
/*
目的:通过函数判断一个数是否是素数
*/
# include
bool f(int m)
{
int i;
for(i = 2;i < m; i++)
{
if(m % i == 0)
break;
}
if(i == m)
return true;
else
return false;
}
int main(void)
{
int val;
scanf("%d",&val);
if (f(val))//注:此处若写成:if (f(val) == true) 也可以。
printf("YES\n");
else
printf("NO\n");
}
对比上述两种方法可见,通过函数来实现比较合适,因为如果要判断的数据过多时,要通过第一种方法实现的话,代码太多,而且也不便于调用,因此推荐使用函数实现此功能。其他功能也是如此,建议养成用函数来实现某些单一的功能,这样即减少了代码的重复度,同时也方便其他函数的调用,有利于提高代码的使用效率。
THANKS !!!
致力为企业和个人提供合同协议,策划案计划书,学习课件等等
打造全网一站式需求
欢迎您的下载,资料仅供参考