如何使用 For 循环、While 循环和函数编写 C 语言查找数字素数因子的程序。
C 语言使用 For 循环查找数字素数因子的程序
此程序允许用户输入任何整数值。接下来,此程序使用 For 循环查找数字的素数因子。
在我们之前的文章中,我们已经解释了如何编写一个查找数字因子的程序和查找素数。
/* C Program to Find Prime Factors of a Number using For Loop */
#include <stdio.h>
int main()
{
int i, j, Number, isPrime;
printf("\n Please Enter any number to Find Factors : ");
scanf("%d", &Number);
for (i = 2; i <= Number; i++)
{
if(Number % i == 0)
{
isPrime = 1;
for (j = 2; j <= i/2; j++)
{
if(i % j == 0)
{
isPrime = 0;
break;
}
}
if(isPrime == 1)
{
printf("\n %d is a Prime Factor ", i);
}
}
}
return 0;
}

C 语言使用 While 循环计算数字素数因子的程序
此C 程序允许用户输入任何整数值。使用此值,此程序将使用 While 循环查找数字的素数因子。
/* C Program to Find Prime factors of a Number using While Loop */
#include <stdio.h>
int main()
{
int Number, i = 1, j, Count;
printf("\n Please Enter number to Find Factors : ");
scanf("%d", &Number);
while (i <= Number)
{
Count = 0;
if(Number % i == 0)
{
j = 1;
while(j <= i)
{
if(i % j == 0)
{
Count++;
}
j++;
}
if(Count == 2)
{
printf("\n %d ", i);
}
}
i++;
}
return 0;
}
我们将上面查找数字素数因子的程序中的 For 循环替换为了 While 循环。如果您不理解WHILE LOOP。
Please Enter number to Find Factors : 2550
2
3
5
17
C 语言使用函数计算数字素数因子的程序
此程序允许用户输入任何整数值。用户输入的将传递给我们创建的函数。find_factors 函数将查找数字的因子,Find_Prime 将检查因子是否为素数。
#include <stdio.h>
void FndPrm(int Number)
{
int i, Count = 0;
for (i = 2; i <= Number/2; i++)
{
if(Number%i == 0)
{
Count++;
}
}
if(Count == 0 && Number != 1 )
{
printf("\n %d", Number);
}
}
void FndFac(int Number)
{
int i;
for (i = 1; i <= Number; i++)
{
if(Number % i == 0)
{
// Calling FndPrm Function for every factor
FndPrm(i);
}
}
}
int main()
{
int i, j, Number, count;
printf("\n Please Enter any number to Find : ");
scanf("%d", &Number);
printf("\n Prime Factors of a Given Number are : \n");
FndFac(Number);
return 0;
}
Please Enter any number to Find : 10750
Prime Factors of a Given Number are :
2
5
43