給你一道例題吧,杭電OJ 1028題。就是拆分整數(shù)。。。。
讓客戶滿意是我們工作的目標,不斷超越客戶的期望值來自于我們對這個行業(yè)的熱愛。我們立志把好的技術通過有效、簡單的方式提供給客戶,將通過不懈努力成為客戶在信息化領域值得信任、有價值的長期合作伙伴,公司提供的服務項目有:空間域名、虛擬空間、營銷軟件、網(wǎng)站建設、鹽都網(wǎng)站維護、網(wǎng)站推廣。
先上代碼。。。。
X的系數(shù)就是循環(huán)的J和K
X的系數(shù)就是循環(huán)的J和K
X的系數(shù)就是循環(huán)的J和K
你可以注意下, for(k=0;j+k=n;k+=i)
這里k,每次加的都是 i 。。
這樣就對應你的 式子 第 i 項,系數(shù)的每次加 i 的。。
比如 第三個式子,系數(shù)每次加3.。。其實第三個式子中的1 是 3的0次冪。。。
哪里還不明白 直接 H i 就好了。。
。。。。。。。。。。。。。。。。。。。。。。。。。。
#includestdio.h
int main()
{
int n;
int i,j,k;
int c1[1000],c2[1000]; //c1,c2 都是系數(shù)
while(scanf("%d",n)!=EOF)
{
for(i=0;i=n;i++)
{
c1[i]=1;c2[i]=0; //這里是對系數(shù)的初始
}
for(i=2;i=n;i++) //這個循環(huán)代表了第i個多項式。。
{
for(j=0;j=n;j++) //這個循環(huán)代表了第i-1個多項式的每一項,j是冪
for(k=0;j+k=n;k+=i) //這個循環(huán)代表了第i個多項式的每一項 k也是冪
c2[j+k]+=c1[j]; //c2是第i個多項式 冪數(shù)為j+k的系數(shù) c1是第i-1個多項式 冪數(shù)j的系數(shù),
for(j=0;j=n;j++)
{
c1[j]=c2[j]; //下次循環(huán)的時候 本次的 i 就變成了 下次的 i-1
c2[j]=0; //所以要做這個循環(huán)。。
}
}
printf("%d\n",c1[n]);
}
return 0;
}
。。。。。。。。。。。。
其實就是直接用C語言 對 多項式 的 乘法 做了模擬,自己在紙上 用筆模擬程序運行過程演算下差不多 能明白過程了。。。
這是我AC了的代碼,還有問題,哪里不明白可以H i 我,隨時在線,呵呵。
子函數(shù)與母函數(shù),你這個說法頭一次聽說,呵呵。
函數(shù)間只有調(diào)用與被調(diào)用關系,沒有親屬關系。除了MAIN函數(shù)外,其他所有函數(shù)間都是平等關系。
一個函數(shù)在定義時,就會聲明兩大項內(nèi)容:一、函數(shù)返回值類型;二、輸入、輸出參數(shù)及類型,如:
int func1( int x , char *str ); //返回值為INT類型,參數(shù)有兩個,一個整型,一個字符指針。
調(diào)用者在調(diào)用此函數(shù)時,就需要傳參數(shù)。
void fun2( void ); //無返回值,無參數(shù)
調(diào)用者在調(diào)用此函數(shù)時,就不需要傳參數(shù)。
在寫程序時,我們使用一個函數(shù)前,一定要先查詢到這個函數(shù)的具體定義(一般系統(tǒng)提供的函數(shù)在相應的頭文件中都有說明),這樣我們才能正確的使用C函數(shù)。
在一個函數(shù)中 同時出現(xiàn)++n 和n的調(diào)用
對此 C語言并沒有做規(guī)定
所以 這里 調(diào)用結(jié)果為
f(2,3);或者是f(3,3)
都是有可能的
所以 c有可能是0 也有可能是-1