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就好,比较倾向于第一种吧,第二种的可读性确实让人不敢恭维~~