方案设计题   请编写函数fun,其功能是:计算并输出给定数组(长度为9)中每相邻两个元素的平均值的平方根之和。
    例如,若给定数组中的9个元素依次为1210、3410、410、230、340、450、180、310、110,则输出应为S=35.951014。
    注意:部分源程序给出如下。
    请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
    试题程序:
    #include<stdio.h>
    #include<math.h>
    double fun(double x[9])
    {
    }
    main()
    {
    double s,a[9]={12.0,34.0,4.0,23.0,34.0,45.0,18.0,3.0,11.0};
    int i;
    printf('\nThe original data is:\n');
    for(i=0;i<9;i++)
    printf('%6.1f',a[i]);
    printf('\n\n');
    s=fun(a);
    printf('S=%f\n\n',s);
    }
 
【正确答案】double fun(double x[9]) { double sum=0.0; int i,j=1; for(i=0;i<9;i++) if(j<=8) { sum+=sqrt((x[i]+x[i+1])/2.0);j++; /*相邻两个元素之平均值的平方根之和*/ } return sum; }
【答案解析】计算数组相邻两个元素的平均值,首先要取出数组中相邻两个元素,即x[i]和x[i+1]。本程序使用循环语句遍历整个数组,在条件语句中计算相邻两个元素的平均值,并累加其平方根。