scanf("%d%d%d",&a,&b,&c);
d=f(a)+f(b)+f(c);
int f(i)
{
if(i==1 || i==0)return 1;
else return i*f(i-1)
}
//我把樓上的改成遞歸了。但是有壹個非常需要註意的地方。int的取值範圍很小,所以這中遞歸方法能計算的數的範圍很小,超過壹定值得數的階乘就超出了int的取值範圍。計算結果也就不對了。要想寫壹個比較好的階乘計算工具就得自己設計數據結構來存儲結果了。
這個沒有問題,妳可以試試1 2 3
#include "stdio.h"
int f(int i)
{
if(i==1 || i==0)return 1;
else return i*f(i-1);
}
main()
{
int a,b,c,d;
scanf("%d%d%d",&a,&b,&c);
d=f(a)+f(b)+f(c);
printf("\nresult:%d\n",d);
}