c语言输入一个数求因数,【代码】求一个数的因数和、求优化、顺便也供新人参考算法...
生活随笔
收集整理的這篇文章主要介紹了
c语言输入一个数求因数,【代码】求一个数的因数和、求优化、顺便也供新人参考算法...
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
該樓層疑似違規已被系統折疊?隱藏此樓查看此樓
#include
#include
main()
{
int n,q,p,m,k=1,sum=0,s[99999]={2},t[99999];//n是輸入的數;q和p分別代表兩個數組的工作下標
scanf("%d",&n); //k是用來取小于n數的數組工作下標
for(int i=3;i<=n;i+=2) //去所有小于n的數,放進s數組中
{
int tag=0;
for(int j=2;!tag&&j
if(i%j==0)tag=1;
if(!tag)
{
s[k]=i;
k++;
}
}
int tag=0; //用來判斷n是否是質數
for(int j=2;!tag&&j
if(n%j==0)tag=1;
if(!tag)
{
t[0]=1; //如果是,則把1和它本身放進t數組中
t[1]=n;
p=2;
}
else //如果不是素數,則開始分解因數
{
q=0,p=0;
while(1)
{
if(!(n%s[q])||n==s[q]) //s數組的素數從小到大能被整除或就是數本身
{
t[p]=s[q]; //放進t數組
p++;
n/=s[q];
}
else q++; //直到不能被整除,移動s數組下標判斷下一個素數
if(!(s[q]))break;
}
}
for(m=0;m
printf("%d\n",sum);
}
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的c语言输入一个数求因数,【代码】求一个数的因数和、求优化、顺便也供新人参考算法...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: IOS 定义手势监听器详解,利用 UIG
- 下一篇: php 显示状态,php-fpm sta