用C语言编写一个函数factors,求出一个正整数的所有因子。

2024-12-03 23:52:31
推荐回答(3个)
回答1:

#include

#include
//数学函数头文件
main()
{
int
m,i,k=0;
printf("请你输入一个正整数:\n");
scanf("%d",&m);
printf("%d
的因子有:\n",m);
for(i=1;i<=m;i++)
{
if(m%i==0)
{
printf("%6d",i);
k++;
if(k%5==0)printf("\n");
//每五个数换一次行
}
}
getchar();
getchar();
}
你上机运行一下吧,结果是对的,有不明白的地方可以再找我……

回答2:

#include
void factors(int n)
{
if(n<=0)
{
printf("不是正整数\n");
return;
}
else
{
printf("%d的因子有:\n",n);
for(int i=1;i<=n;i++)
if(!(n%i))printf("%d ",i);
}
}
void main()
{
int n;
printf("输入正整数:");
scanf("%d",&n);
factors(n);
printf("\n");
}

回答3:

#include
#include
int main(void)
{
int n,i;
printf("Please input a number:");
scanf("%d",&n);
printf("%d=",n);
for (i=2;i<=n;i++)
{
while(n!=i) //循环对某个质数做除法
{
if(n%i==0)
{
printf("%d*",i);
n=n/i;
}
else
break;
}
}
printf("%d",n);
getch();
return 0;
}