数学题,还是使用log避免大数,但是不要忘记需要+1,因为0也是1位,log(100)= 2,但却是3位。

 1 #include <stdio.h>
 2 #include <math.h>
 3 
 4 int main() {
 5     int case_n, n;
 6     int i;
 7     double sum;
 8 
 9     scanf("%d", &case_n);
10 
11     while (case_n--) {
12         scanf("%d", &n);
13         sum = 1.0f;
14         for (i=1; i<=n; ++i)
15             sum += log10(i);
16         printf("%d\n", (int)sum);
17     }
18 
19     return 0;
20 }

 

相关文章:

  • 2021-06-26
  • 2021-09-29
  • 2022-12-23
  • 2021-08-12
  • 2021-07-28
  • 2022-12-23
  • 2021-10-05
  • 2021-10-18
猜你喜欢
  • 2022-02-13
  • 2022-01-15
  • 2021-06-30
  • 2021-10-20
  • 2022-12-23
  • 2021-09-25
  • 2021-07-03
相关资源
相似解决方案