ACM题解报告——HD1012

  好吧,我又选了一道水题http://acm.hdu.edu.cn/showproblem.php?pid=1012

  题目要求打印n分别从0到9的阶乘倒数之和,打印的时候注意控制打印格式,无难度,直接贴代码:

 1 #include<stdio.h>
 2 #include<stdlib.h>
 3 
 4 int main( )
 5 {
 6 
 7   int i,j;
 8   double sum=0,k=1.0;
 9   printf( "n e\n- -----------\n");
10   for(i=0;i<10;i++)
11 {
12   if( i==0||i==1) 
13 {
14    sum=i+1;
15    printf( "%d %.0lf\n",i,sum);
16  }
17   else if( i==2)
18 {
19   sum=2.5;
20   printf( "%d %.1lf\n",i,sum);
21  }
22   else
23 {
24   k=1.0;
25   for(j=i;j>0;j-- )
26   k*=j;
27   sum+=1.0/k;
28   printf( "%d %.9lf\n",i,sum);
29  }
30  }
31   return 0;
32 }

还有另一种方式就是直接打印:

#include<stdio.h>
int main( )
{
printf( "n e\n- -----------\n0 1\n1 2\n2 2.5\n3 2.666666667\n4 2.708333333\n5 2.716666667\n6 2.718055556\n7 2.718253968\n8 2.718278770\n9 2.718281526\n");
  return 0;
}

好吧,我承认第二段代码格式有点猥琐,不过能AC就好,比较倾向于第一种吧,第二种的可读性确实让人不敢恭维~~

 

 

 

posted @ 2013-05-01 10:30  paradise in hell  Views(169)  Comments(0Edit  收藏  举报