C语言编程 输入N 求N的阶乘

编写一个循环程序,输入 N 值,输出 N 的阶乘。关于循环程序怎么编写,可以参考教材第六章P123的内容。注意整型数的表示范围,如果当输入的 N 比较大时,例如 N 等于 20 时,输出N is too big

第1个回答  2019-02-09
for (;;)
{
Console.WriteLine("请输入一个整数将为你计算它的阶乘");
long num = long.Parse(Console.ReadLine());
long jc = 1;//初始化阶乘值;
for (long i = num; i >1; i--)
{
jc =jc* i;
}
Console.WriteLine("{0}的阶乘值为{1}", num, jc);
Console.WriteLine("你是否还需要使用此阶乘计算器,1-是,2-否");
int numb = int.Parse(Console.ReadLine());
if (numb == 1)
{

}
if (numb == 2)
{
break;
}
}
Console.ReadKey();
第2个回答  2020-02-26
#include

void
main(void)
{
int
n,i,p=1;
printf("请输入一个整数:");
scanf("%d",&n);
if(n>13)printf("n
is
to
big\n");
else
{
for(i=2;i<=n;i++)
p*=i;
printf("%d\n",p);
}
}
注意如果是32位版本,int是+-
21亿左右的范围,最大只能求13的阶乘
相似回答