1.你输入一个整数,会自动输出从1到这个整数之间所有的素数。只用main函数实现,有局限性。
# include <stdio.h>
int main(void)
{
int val;
int i;
int j;
printf("请输入您需要验证的数字: ");
scanf("%d", &val);
for (i=2; i<=val; ++i)
{
//判断i是否是素数,是输出,不是不输出
for (j=2; j<i; ++j)
{
if (0 == i%j)
break;
}
if (j == i)
printf("%d\n", i)
}
return 0;
}
2.使用一个函数去实现上述功能。
# include <stdio.h>
bool IsPrime(int m)
{
int i;
for (i=2; i<m; ++i)
{
if (0 == m%i)
break;
}
if (i == m)
return ture;
else
return false;
}
int main(void)
{
int val;
int i;
printf("请输入您需要验证的数字: ");
scanf("%d", &val);
for (i=2; i<=val; ++i)
{
if ( IsPrime(i) )
printf("%d\n", i)
}
return 0;
}
3.再定义一个输出函数。
# include <stdio.h>
//本函数的功能是:判断m是否是素数,是返回true,不是返回false
bool IsPrime(int m)
{
int i;
for (i=2; i<m; ++i)
{
if (0 == m%i)
break;
}
if (i == m)
return ture;
else
return false;
}
//本函数的功能是把1到n之间所有的素数在显示器上输出
void TraverseVal(int n)
{
int i;
for (i=2; i<=n; ++i)
{
if ( IsPrime(i) )
printf("%d\n", i)
}
}
int main(void)
{
int val;
printf("请输入您需要验证的数字: ");
scanf("%d", &val);
TraverseVal(val);
return 0;
}
本博主新开公众号, 希望大家能扫码关注一下,十分感谢大家。