#include
using namespace std;
int main()
{
long int mm = 1,nn=0;
for (int n = 1; n <= 49; n++)
{
for (int k = 1; k <= n; k++)
{
mm = mm*k;
}
nn = nn + 1 / mm;
}
cout << nn << endl;
return 0;
}
定义成double类型
你的nn声明为整形,应声明为浮点型,而且你的mm初始化应在第一层循环内
看不懂。。你重新写个格式化的。。这么看好累
当然mm也应声明为浮点型
1、要得到小数,至少类型要定义正确,short,int,long都是整数;
2、结果定义正确后,例如float 或者double,除数的阶层也要强转为float或者double;
3、看到有规律的计算一定要尝试采用递归的思维解决问题,这样可以使得程序可读性和艺术性见长哦!