题目链接:点击打开链接
题目大意:略。
解题思路:只要明白 double 的范围比 ull 还大,此题可解。
AC 代码
#include <stdio.h> int main() { double x, rs=1, a, up=1; scanf("%lf", &x); double down=1; // 之前一直用 ull 还是不行,就想到 double 吧 for(int i=1; ; i++) { up*=x; down*=i; a=up/down; rs+=a; if(a<0.00001) break; } printf("%.4f\n", rs); return 0; }