思路:遞歸求階乘函數(shù),如果輸入的參數(shù)等于1則返回1,否則返回n乘以該函數(shù)下次遞歸。
在網(wǎng)站設(shè)計(jì)制作、成都做網(wǎng)站中從網(wǎng)站色彩、結(jié)構(gòu)布局、欄目設(shè)置、關(guān)鍵詞群組等細(xì)微處著手,突出企業(yè)的產(chǎn)品/服務(wù)/品牌,幫助企業(yè)鎖定精準(zhǔn)用戶,提高在線咨詢和轉(zhuǎn)化,使成都網(wǎng)站營銷成為有效果、有回報(bào)的無錫營銷推廣。創(chuàng)新互聯(lián)公司專業(yè)成都網(wǎng)站建設(shè)10年了,客戶滿意度97.8%,歡迎成都創(chuàng)新互聯(lián)客戶聯(lián)系。
參考代碼:
#includestdio.h
int?fun(int?n)
{
if(n==1||n==0)?return?1;//如果參數(shù)是0或者1返回1
return?n*fun(n-1);//否則返回n和下次遞歸的積
}
int?main()
{
int?n;
scanf("%d",n);
printf("%d\n",fun(n));
return?0;
}
/*
5
120
*/
舉例:用遞歸方法求n;
#includestdio.h
int main()
{
int n;
int y;
printf("input a integer number:");
scanf("%d",n);
y=fac(n);
printf("%d!=%d\n",n,y);
return 0;
}
int fac(int n)
{
int f;
if(n0)
printf("n0,data error!");
else if(n==0||n==1)
f=1;
else
f=fac(n-1)*n;
return(f);
}
擴(kuò)展資料:
return用法:
return返回一個數(shù)值的意思就是把returnlt;表達(dá)式gt;后面表達(dá)式的值返回給調(diào)用他的函數(shù)。舉個例子:
int sum(int i,int j)
{
return i+j;
printf("這個語句不會被執(zhí)行,因?yàn)樵撟雍瘮?shù)執(zhí)行到上面的return語句就無條件結(jié)束了");
}
main()
{
int a=10,b=11,c;
c=sum(a,b);
printf("%d",c);
}
程序的輸出為:
21
這個21從何而來呢main函數(shù)調(diào)用sum(a,b)函數(shù)時將a的值賦給i,b的值賦給j,上面說了return i+j;會計(jì)算i+j的值也就是結(jié)果等于21,并將21帶回給調(diào)用它的函數(shù),即c=sum(a,b);相當(dāng)于c=21,這個21就是由sum(a,b)中的return反回來的。
1、首先打開vc6.0,新建一個vc項(xiàng)目。
2、接下來需要添加頭文件。
3、添加main主函數(shù)。
4、定義一個用來求階乘的函數(shù)。
5、在main函數(shù)定義int類型變量sum。
6、調(diào)用fact(),并將返回值賦予sum。
7、使用printf打印sum。
8、運(yùn)行程序,看看結(jié)果。
網(wǎng)站名稱:c語言函數(shù)遞歸求n的階乘 c語言n階乘求和遞歸
本文路徑:http://m.rwnh.cn/article42/hiighc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站導(dǎo)航、、動態(tài)網(wǎng)站、Google、網(wǎng)站收錄、定制網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)