C语言---利用函数判断素数

所谓素数就是指在大于1的自然数中,除了1它本身外不再有其他因数的自然数。

for (i = 2; i <= n-1; i++)这个for循环中,它为判断一个数是否为素数起了决定性作用。

作用是:遍历除了1和这个数本身外在它们之间的数,并用if语句进行进一步的判断。

n%i==0意思是:输入的这个数存在除了1和这个数本身外的其它数能跟它整除,若满足if条件,即n不为素数,break跳出。

第二个if语句i>=n意思是:在除了1和这个数,它们之间不存在其它能被整除的数,即为素数,打印素数n。

具体代码实现如下:

先声明函数is_prime(),再去调用函数。

int is_prime(int n)
{
	int i = 0;
	for (i = 2; i <= n-1; i++)//遍历1和n之间的数
	{
		if (n % i == 0)//n不为素数
		{
			break;
		}
	}
	if (i >= n)//n为素数
	{
		printf("%d ", n);
	}
	return 1;
}
int main()
{
	int a = 0;
	for (a = 100; a <= 200; a++)//查找100~200之间的素数
	{
		is_prime(a);//调用上面的函数
	}
	return 0;
}

你可能感兴趣的:(c语言,算法)