求<SchoolDays >、<sum...

#include &stdio.h&int main(){ int repeat,i; scanf("%d",&repeat); for(i =0;i &i++) {
double sum=0;
scanf("%d",&n);
int fact = 1;
for(int k=1;k&=n;k++)
fact = fact*k;//计算阶乘
sum = sum + 1.0 ///计数器加上分数
printf("%.4f\n",sum); } return 0;}解题思路:1、由题得,解此题无符号的变化,但是要计算阶乘。2、因为看题中所给的式子,1,2,3,所以如果用循环,要每加一次,每做一次阶乘,并且s每加一次1.0/fact。3、阶乘有一个性质:n!=(n-1)!*n; 利用循环的性质,当n+1次循环时,可以利用之前被赋值的fact继续进行计算。而k++形成的新的k,可以作为公式中的n,以此来进行计算。
没有更多推荐了,

参考资料

 

随机推荐