全部问题 > 当前问题

n!运算里数字较大输出结果就是0了。是超过 了存储位数了么?还是什么?

倪颖轩 2015-7-8 23:00:08

共 7 个回答

祁老师 2015-7-9 09:10:27

把完整程序发出来我看看

倪颖轩 2015-7-11 21:13:35

已经自己解决了,谢谢老师

倪颖轩 2015-7-11 21:15:41

回复 祁老师:还没有解决。我发给老师看一下。

#include<stdio.h>

#include<stdlib.h>

main()

{

int i,n,s;

    while (1)

system("cls");

s=1;

printf("enter the number:");

scanf("%d",&n);

if (n==0) break;

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

s=s*i;

printf("n!=%d",s);

system("pause");

}

}


祁老师 2015-7-13 09:56:18

回复 倪颖轩:不可能会出现0的吧,

超过10的阶乘就已经超出了int的范围了   你可以定义long类型的

倪颖轩 2015-7-16 20:05:45

好的,谢谢老师

陈佩珊 2017-12-4 18:08:11

什么是数据透视表

张丽丽 2017-12-5 10:05:27

如何插入背景图片

问题来自: break和continue