怎么补全这串代码,求解

本程序实现求nm的二维数组外围元素的和,请将程序补充完整,以实现规定功能。

#include <stdio.h>

int main()

{ float a[100][100],sum;

   int n,m,i,j;

   printf("请输入行数n(n<100)和列数m(m<100):");

   scanf("%d%d",&n,&m);

   printf("请输入数组元素:\n");

   for(i=0;i<n;i++)

     for(j=0;j<m;j++)

        scanf("%f",&a[i][j]);

   sum=f(a,n,m);

   printf("和为:%.2f\n",sum);

   return 0;

}

供参考:

#include <stdio.h>
float f(float a[][100],int n,int m)
{
    int   i,j;
    float sum=0;
    for(i=0;i<n;i++)
    {
        for(j=0;j<m;j++)
        {
            if(i==0 || i==n-1 || j==0 || j==m-1)
               sum += a[i][j];
        }
    }
    return sum;
}
int main()
{
   float a[100][100],sum;
   int n,m,i,j;
   printf("请输入行数n(n<100)和列数m(m<100):");
   scanf("%d%d",&n,&m);
   printf("请输入数组元素:\n");
   for(i=0;i<n;i++)
     for(j=0;j<m;j++)
        scanf("%f",&a[i][j]);

   sum=f(a,n,m);

   printf("外围元素的和为:%.2f\n",sum);
   return 0;
}