c语言计算阶乘 那错了

main() { long int s=1; int i; for(i=1;i<=8;i++) { s*=i ; } printf("%d",s); } 为什么7一下对 8就错了 呢 我想算15的 阶乘怎么算啊

第1个回答  2020-06-17
#include
"stdio.h"
main()
{
long
s=1;
int
i;
for(i=1;i<=8;i++)
s*=i
;
printf("%ld",s);
//格式说明符,s是长整型,
}
7的时候没超出范围,乘了8就超出int范围了

c语言计算阶乘 那错了
main(){ long s=1;int i;for(i=1;i<=8;i++)s*=i ;printf("%ld",s);\/\/格式说明符,s是长整型,} 7的时候没超出范围,乘了8就超出int范围了

c语言计算阶乘 那错了
include "stdio.h"main(){ long s=1;int i,n;scanf("%d",&n);for(i=1;i<=n;i++)s*=i ;printf("%ld",s);} 你想要求15的阶乘,而那个条件>=6,怎么可以再执行下去,所以你可以加上一句输入语句,这样求哪个的阶乘都可以了,不是很方便吗?兄台!!!跟你运行了,此程序没错!1 ...

C语言编程求阶乘的问题,哪里错了?帮忙看一下,
错的是逻辑,一塌糊涂,最后会死循环 int sum=1,i;for(int j=1;j<=i;j++){ sum*=j;}

关于C语言求阶乘问题。这个程序为什么错了?
s=s+k;应该写在第一个循环与第二个循环之间 如果不这样就等于里面每乘一次都要把结果加一次

C语言的50的阶乘不知道那错了,请高人指点
一、double最大有效位数16位,50的阶乘老长了,C中数值类变量都不可能运算、表示出来,只能采用大数相乘的方法,自己写运算程序去实现了。二、你的程序太乱了 给你一个可运行的程序,但结果并不是准确的 include <stdio.h> int main(){ double fac(int n);int n;double y;printf("input an ...

C语言求阶乘程序,不知道哪里错了。请各位帮我指点一下,谢谢!可以运行...
20的阶乘是一个很大很大的数,你定义一个int型变量是不够的,溢出了,用浮点型吧.

c语言递归求阶乘的问题,我不知道哪里错了,求大神解答
long c;scanf("%d",&n);c = re(n);printf("阶乘的最后值为:%ld",c);} int re(int n){ long r;if(n < 0){ printf("n<0,error");} else if(n == 0|| n == 1){ r = 1;} else { r = re(n-1)*n;} return r;} 程序大的错误没有,就是你的scanf用错了,详情...

c语言 阶乘
int fa(int num){ int s; if(num > 1) s=num*fa(num-1); return s;} 这里你没有加等于1的时候返回1,所以错了。加一句就可以了。int fa(int num){ int s; if(num > 1) s=num*fa(num-1); else return 1; return s;} ...

求阶乘的c语言程序运行不对?
函数正确。printf("&d\\n",factorial(n));写错了,应该是printf("%d\\n",factorial(n));——即把&换成%。输入不超过13,否则会溢出出错。

c语言这个阶乘 怎么错了?
if(n>=1) ==》else if(n>1)

相似回答
大家正在搜