分数的分母递增的矩阵的总和,采用C语言的编程实现的原理

Problem Description
我们定义如下矩阵:
1/1 1/2 1/3
1/2 1/1 1/2
1/3 1/2 1/1
矩阵对角线上的元素始终是1/1,对角线两边分数的分母逐个递增。
请求出这个矩阵的总和。

Input
每行给定整数N (N<50000),表示矩阵为 N*N.当N为0时,输入结束。

Output
输出答案,保留2位小数。

Sample Input
1
2
3
4
0

Sample Output
1.00
3.00
5.67
8.83

#include
int main()
{
int i,n;
double m,s;
while(scanf("%d",&n)!=EOF)
{
m=0.0;
s=0.0;
if(n==0) printf("0\n");
else
{
for(i=0;i<n;i++)
{
m=m+1.0/(i+1);
s=s+m;
}
s=s+(s-n);
printf("%.2lf\n",s);
}
}
return 0;
}