c++编程,如何编一个程序,计算n的阶乘?用最简单的方法
展开全部
#include<stdio.h>
int f(int x){
int i=1,result;//注意是阶乘,所以i的初始化值为1
for(i=1;i<=x;i++)
result*=i;
return result;
}
int main(){
int n,jiecheng;
while(scanf("%d",&n)!=EOF)
{
jiecheng=f(n);//用函数做,最清楚了,而且能帮你清楚的领悟感受函数
printf("%d\n",jiecheng);
}
return 0;
}
C++的话直接把输入输出改为cin cout就可以了,注意理解使用函数,函数可以让思路更加清晰
int f(int x){
int i=1,result;//注意是阶乘,所以i的初始化值为1
for(i=1;i<=x;i++)
result*=i;
return result;
}
int main(){
int n,jiecheng;
while(scanf("%d",&n)!=EOF)
{
jiecheng=f(n);//用函数做,最清楚了,而且能帮你清楚的领悟感受函数
printf("%d\n",jiecheng);
}
return 0;
}
C++的话直接把输入输出改为cin cout就可以了,注意理解使用函数,函数可以让思路更加清晰
展开全部
C++程序:
#include <iostream>
using namespace std;
int main()
{
int i;
long f = 1;
for(i=2; i<=10; i++)
f *= i;
cout<<f<<endl;
return 0;
}
运行测试:
36288
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include <iostream>
using namespace std;
int factor(int x)
{
int result=1;
for (int i=1;i<x+1;i++)result*=i;
return result;
}
int factor2(int x) //递归方式
{
if (x>1) return x*factor2(x-1);
return 1;
}
int main(int argc, char *argv[])
{
cout<<factor(5)<<endl;
cout<<factor2(5)<<endl;
return 0;
}
using namespace std;
int factor(int x)
{
int result=1;
for (int i=1;i<x+1;i++)result*=i;
return result;
}
int factor2(int x) //递归方式
{
if (x>1) return x*factor2(x-1);
return 1;
}
int main(int argc, char *argv[])
{
cout<<factor(5)<<endl;
cout<<factor2(5)<<endl;
return 0;
}
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
int function(int n)
{
if(0 == n || 1 == n)
return 1;
else
return n*function(n-1);
}
试试
{
if(0 == n || 1 == n)
return 1;
else
return n*function(n-1);
}
试试
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
给个例子 仅供参考
#include<stdio.h>
void main()
{
unsigned long s;
int n,i;
s=1;
printf("输入n值:");
scanf("%d",&n);
for(i=1;i<=n;i++)
{
s*=i;
}
printf("n的阶乘:%ld\n",s);
}
#include<stdio.h>
void main()
{
unsigned long s;
int n,i;
s=1;
printf("输入n值:");
scanf("%d",&n);
for(i=1;i<=n;i++)
{
s*=i;
}
printf("n的阶乘:%ld\n",s);
}
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询