有什么好用的模擬建站軟件營(yíng)銷(xiāo)策劃方案怎么做
? ? ? ? 假設(shè)一個(gè)不小于2的整數(shù)n,對(duì)從2開(kāi)始的自然數(shù)k,這個(gè)試探它是否是整數(shù)n的一個(gè)因子,如果是,則輸出該因子,并將n/k的結(jié)果賦給n(接下來(lái)只需要對(duì)n除以已經(jīng)找到的因子之后的結(jié)果繼續(xù)找因子)。如果n的值不是大于1(即n的值為1,),則n的所有因子都找完了,因此需要結(jié)束循環(huán)。
注意:并不是找到了k是一個(gè)因子之后k就立刻+1,因?yàn)榭赡芊纸夂蟮膎中k仍然是n的因子,因此需要使用到 if(n%k==0)?else??k++;
選取90進(jìn)行計(jì)算就知道了,90%2==0,n=90/2=45,所以k就是一個(gè)質(zhì)因子;接下來(lái)繼續(xù)45%2!=0,因此k=3,45%3==0,n=45/3=15,所以k=3就是一個(gè)質(zhì)因子;接下來(lái)15%3==0,n=15/3=5,所以3仍然還能是他的一個(gè)質(zhì)因子;接下來(lái)5%3!=0,5%4!=0,5%5==0,n=5/5=1,這時(shí)是最后一個(gè)因子,因此要與之前的不同,這里在else語(yǔ)句中輸出的是最后一個(gè)k,進(jìn)行換行后要使用break語(yǔ)句跳出整個(gè)循環(huán)。這樣就結(jié)束分解了。
#include<stdio.h>
int main()
{//將一個(gè)不小于2的整數(shù)分解質(zhì)因數(shù)。例如,輸入90,則輸出:90=2*3*3*5 int n,k=2;printf("請(qǐng)輸入一個(gè)不小于2的整數(shù):");scanf("%d",&n);printf("質(zhì)因子分解的結(jié)果為:%d=",n);while(1){if(n%k==0){n/=k;if(n>1)printf("%d*",k);else{printf("%d\n",k);break;}}else k++;}return 0;
}