用C++编写 m!+n! 就是输入两个正整数m和n,计算m!+n!

高手帮我编一下 我看看 这个不是作业,是课后的习题 没答案
谢谢各位了
我们只学过#include<stdio.h>
和#include<math.h>
能只用这两个吗 你们写的看不懂

第1个回答  2007-03-22
请参考这里:
http://zhidao.baidu.com/question/22541463.html

晕,刚给你写了一个:

#include <stdio.h>
void main()
{
unsigned long m,n,k,i;

printf("input m:");
scanf("%lu",&m);

printf("input n:");
scanf("%lu",&n);

k=m;

for(i=1;i<k;i++)
m=m*i;

k=n;

for(i=1;i<k;i++)
n=n*i;

printf("m!+n!=%lu+%lu=%lu\n",m,n,m+n);

getch();

}本回答被提问者采纳
第2个回答  2007-03-22
int fun(int x)
{
int m=1;
for(int i=1;i<=x;i++)
m*=i;
return m;
}
void main ()
{
int m,n;
int count=0;
cin >> m >> n;
count = fun(m)+fun(n);
}

//////////////////////////////////

#include <iostream.h>
int fun(int x)
{
int m=1;
for(int i=1;i<=x;i++)
m*=i;
return m;
}

void main()
{
int m,n;
int count=0;
cin >> m >> n;
count = fun(m)+fun(n);
cout << count << endl;

}
第3个回答  2007-03-22
#include <iostream.h>
int f(int x)
{
if (x==0 || x==1)
{
return 1;
}
else
{
return (x*f(x-1));
}
}
void main()
{
int m,n;
cout<<"键盘输入这两个数:"<<endl
cout<<f(m)+f(n)<<endl;
}
这是一个递归方法你看看吧呵
第4个回答  2007-03-22
给你个PASCAL语言的。
var
i,h,k:integer;
begin
k:=1;
for i:=1 to m do
k:=k*i;
h:=k;
k:=1;
for i:=1 to n do
k:=k*i;
h:=h+k;
writeln(h);
end;
相似回答