在C语言中,我们经常会用到判断一个数的性质,今天就以如何判断一个数是否为素数为例来说明思路,希望能够达到触类旁通的效果。
1.直接判断一个数是否为素数,代码如下:
/*
目的:判断一个数是否是素数
*/
# include <stdio.h>
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");
}c++判断素数
注:for循环的功能:
①若能整除,通过break跳出函数
②若一直到val-1都不能整除,此时i再自增1到val,不满足i < val 跳出for循环,这时i = val。
2.通过函数来判断
/*
目的:通过函数判断一个数是否是素数
*/
# include <stdio.h>
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");
}
对比上述两种方法可见,通过函数来实现比较合适,因为如果要判断的数据过多时,要通过第一种方法实现的话,代码太多,而且也不便于调用,因此推荐使用函数实现此功能。其他功能也是如此,建议养成用函数来实现某些单一的功能,这样即减少了代码的重复度,同时也方便其他函数的调用,有利于提高代码的使用效率。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论