展开全部
#include<iostream.h>
int result=1;
void fac(int n)
{
while(n!=0)
{
result*=n;
n--;
}
}
void main()
{
int a;
cout<<"请输入所要求阶乘的数:"<<endl;
cin>>a;
fac(a);
cout<<a<<"!="<<result<<endl;
}
这个可以,我试过了
int result=1;
void fac(int n)
{
while(n!=0)
{
result*=n;
n--;
}
}
void main()
{
int a;
cout<<"请输入所要求阶乘的数:"<<endl;
cin>>a;
fac(a);
cout<<a<<"!="<<result<<endl;
}
这个可以,我试过了
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include<iostream>
#define MAX 1000
using namespace std;
int main()
{
int n;
while(cin>>n&&n>=0)
{
int i,j;
int a[MAX]; //存数运算结果
int p,h; //p存储当前结果的位数,h为进位
a[1]=1;
p=1;
for(i=2;i<=n;i++) //循环与2,3,4.....n相乘
{
for(j=1,h=0;j<=p;j++) //让a[]的每位与i相乘
{
a[j]=a[j]*i+h;
h=a[j]/10;
a[j]=a[j]%10;
}
while(h>0) //如果h不为0
{
a[j]=h%10;
h=h/10;
j++;
}
p=j-1; //将当前的位数赋给p
}
for(i=p;i>=2;i--)
{
cout<<a[i];
}
cout<<a[i]<<endl;
}
return 0;
}
#define MAX 1000
using namespace std;
int main()
{
int n;
while(cin>>n&&n>=0)
{
int i,j;
int a[MAX]; //存数运算结果
int p,h; //p存储当前结果的位数,h为进位
a[1]=1;
p=1;
for(i=2;i<=n;i++) //循环与2,3,4.....n相乘
{
for(j=1,h=0;j<=p;j++) //让a[]的每位与i相乘
{
a[j]=a[j]*i+h;
h=a[j]/10;
a[j]=a[j]%10;
}
while(h>0) //如果h不为0
{
a[j]=h%10;
h=h/10;
j++;
}
p=j-1; //将当前的位数赋给p
}
for(i=p;i>=2;i--)
{
cout<<a[i];
}
cout<<a[i]<<endl;
}
return 0;
}
追问
运行有错误呢
追答
可以的啊
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
//以下为求n的阶乘的程序
#include<iostream>
using namespace std;
int main()
{
int n,result;
cin >> n;
for (result=1, n>1;n--)
{
result=result*n;
}
cout << result;
return 0;
}
#include<iostream>
using namespace std;
int main()
{
int n,result;
cin >> n;
for (result=1, n>1;n--)
{
result=result*n;
}
cout << result;
return 0;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
创建递归函数法求一个正整数的阶乘,我喜欢这个方法,简单明了
#include <iostream>
using namespace std;
int f (int x)
{
if (x<1) return 0;
else if (x==1) return 1;
else return x*f(x-1);
}
int main()
{
cout<<"请输入一个正整数:";
int x;
cin>>x;
cout<<f(x)<<endl;
}
#include <iostream>
using namespace std;
int f (int x)
{
if (x<1) return 0;
else if (x==1) return 1;
else return x*f(x-1);
}
int main()
{
cout<<"请输入一个正整数:";
int x;
cin>>x;
cout<<f(x)<<endl;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询