问答题 1.  编写函数fun,其功能是:根据以下公式计算S,并将计算结果作为函数值返回,n通过形参传入。
   
【正确答案】float fun (int n)
   {
   int i,s1=0;
   float s=0.0;
   for (i=1;i<=n;i++)
   {
   s1 =s1 +i;  /*求每一项的分母*/
   s=s+1.0/s1;  /*求多项式的值*/
   }
   return s;
   }
【答案解析】
   此类计算表达式值的程序,首先需要根据题意分析表达式的规律,得出通项,然后再完成程序语句。
   本题中表达式的规律是1+2+…+n的倒数之和,那么可以通过for循环语句来实现第1项到第n项的变化。其实就是累加算法,方法是先根据题目要求定义变量,注意该变量的数据类型,然后对其进行初始化操作,因为该变量的作用是累加器,所以初始值应为0(或0.0,根据变量数据类型来确定),再通过for循环语句来完成累加过程。
   本题中s1用来表示每一项的分母,每一项的分母都是由前一项分母加项数。注意,由于s1定义成一个整型,所以在s=s+1.0/s1语句中不能把1.0写成1。