#include
成都創(chuàng)新互聯(lián)堅(jiān)持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:網(wǎng)站建設(shè)、成都做網(wǎng)站、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時代的隆回網(wǎng)站設(shè)計(jì)、移動媒體設(shè)計(jì)的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!
#include
//數(shù)學(xué)函數(shù)頭文件
main()
{
int
m,i,k=0;
printf("請你輸入一個正整數(shù):\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");
//每五個數(shù)換一次行
}
}
getchar();
getchar();
}
你上機(jī)運(yùn)行一下吧,結(jié)果是對的,有不明白的地方可以再找我……
1.對1~本身的各個數(shù)取余,為零的即為其因子。
#include?stdio.h
void?factor(int?n)
{
printf("%d?factor?has:?",?n);
for?(int?i?=?1;?i?=?n;?i?++)
{
if?(n?%?i?==?0)
printf("%d?",?i);
}
printf("\n");
}
int?main()
{
factor(27);
factor(100);
return?0;
}
#include stdio.h
# include stdlib.h
#define N 100
long factor(int m,int fac[],int *cp){
int c1,c2,i,k;
long s;
fac[0]=1;
for(c1=s=1,c2=N-1,i=2){
k=m/i;
if(m%i==0){
if(i!=k){
fac[c1++]=i;
fac[c2--]=k;
s+=i+k;
printf("i=%d k=%d\n",i,k);
}else{
fac[c1++]=i;
s+=i;
}
}
i++;
if(i=k) break;//這個時候k已經(jīng)開始等于自身的根號,或者將要出現(xiàn)和之前k對稱的i,引起自身重復(fù)故退出
}
for(c2++;c2=N-1;c2++){
fac[c1++]=fac[c2];
printf("%s %d\n","**",fac[c2]);
}
*cp=c1;
return s;
}
int main(int argc, char const *argv[])
{
/* code */
int factors[N],i,count;
long sum;
sum = factor(atoi(argv[1]),factors,count);
for(i=0;icount;i++){
printf("%5d",factors[i]);
}
printf("\n\n");
printf("sum=%5ld? count=%5d\n",sum,count);?
return 0;
}
擴(kuò)展資料:
有一種說法是“因子不限正負(fù)”,不過通常情況下只取正因子。
1, -1, n 和 -n 這些數(shù)叫做 n 的明顯因子
表示方法:可以用因子|倍數(shù)或倍數(shù)≡0 (mod 因子) 來表達(dá)(參見同余),但用后者時因子一定要是正因子。因子∣倍數(shù)?式中的垂直線是整除符號。它的統(tǒng)一碼值是 U+2223。
例如 42=6x7,因此 7 是 42 的因子,寫作 7∣42,亦是42≡0(mod 7)。