输入3个整数x、y、z计算并输出s=x!+y!+z!。要求定义2个函数,一个求阶乘的递归函数,另外函数求累加和?

帮帮忙,谢谢大家了

第1个回答  2011-05-23
用C语言编了一个
#include<stdio.h>
fun1(int n)//求阶乘
{if(n==1) return(1);
else
return(n*fun1(n-1));
}
fun2(int a,int b,int c)//求和
{int sum=0;
sum=a+b+c+sum;
printf("%d\n",sum);
}
main()
{int x,y,z;
scanf("%d,%d,%d",&x,&y,&z);
fun2(fun1(x),fun1(y),fun1(z));
}
第2个回答  2011-05-24

#include "stdio.h"
int fact1(int n)
{
if(n==1||n==0) return 1;
else return n*fact1(n-1);
}
int fact2(int n)
{
int i,t=1;
for(i=1;i<=n;i++)
t*=i;
return t;
}
void main()
{
int n;
scanf("%d",&n);
printf("fact1(n)=%d\n",fact1(n));
printf("fact2(n)=%d\n",fact2(n));
}
第3个回答  2011-05-23
自己写的C++代码 VS调试通过,需要C的跟我讲,可以帮你修改
#include <iostream>

using namespace std;

//定义求阶乘函数

int getFactorial(int n)
{
if(n==1)
return 1;
else
{
return n*getFactorial(n-1);
}

}

// 求和
int getSum(int a, int b, int c)
{
int sum = 0;
sum = a + b + c;
return sum;
}
int main()
{
int x, y, z, iSum;
cout<<"Please Input three numbers:"<<endl;
cin>>x>>y>>z;
iSum = getSum(getFactorial(x), getFactorial(y), getFactorial(z));
cout<<"The sum = "<<iSum<<endl;
system("pause");
return 0;
}
第4个回答  2011-05-23
int function1(int x,int y,int z)
{
return function2(x)+ function2(y)+ function2(z);
}
int function2(int a)
{
int intResult;
for(int i=a;i<1;i--)
{
intResult*=i;
}
return intResult;
}本回答被网友采纳
第5个回答  2011-05-23
int func2(int n)
{
if ( 1 == n ) return 1;
else reutrn n * func2(n-1);
}
int function1(int x, int y, int z)
{
return func2(x) + func2(y) + func2(z);
}
相似回答