简单的问题(1*2*......99)
#include <stdio.h>
#include <math.h>
void main()
{
int i;
int tmp = 1;
for(i=1;i<100;i++)
{
tmp *=i;
}
printf("%d",tmp) ;
getchar();
}
编译没问题为什么得不到结果?
搜索更多相关的解决方案:
include
----------------解决方案--------------------------------------------------------
数据太大溢出了。存储大数据用数组来存储。
----------------解决方案--------------------------------------------------------
呀 的确的确 竟然以为这些数相乘不超过10000 数学米学好.........
----------------解决方案--------------------------------------------------------
来晚咯~~~
----------------解决方案--------------------------------------------------------
#include <stdio.h>
#include <math.h>
void main()
{
int i;
int tmp = 1;
for(i=1;i<100;i++)
{
tmp *=i;
printf("%d",tmp);
}
getchar();
}
用这个看一下就看出问题了........
----------------解决方案--------------------------------------------------------
tmp *=i??什么意思
和 tem=tem+i 是一样的意思吧
----------------解决方案--------------------------------------------------------
tmp*=i
tmp=tmp*i
----------------解决方案--------------------------------------------------------
来得太晚 嘿嘿....
----------------解决方案--------------------------------------------------------
找下论坛的阶乘算法吧! 基本思路是把每一位数字放在数组里
如果你写过大数的加减法,很容易写的
----------------解决方案--------------------------------------------------------