怎么写呀?c语言编程

●编写程序,计算person. data中女性成员BMI的平均值和标准差。要求,先输出平均值、再输出标准差,两者之间由一个空格分隔,结果保留两位小数;键盘输入文件名(绝对路径)。

img

img

供参考:

#include <stdio.h>
#include <string.h>
int main()
{
    double Bmi,totalBMI=0;
    char  id[20];
    char  gender;
    int   age;
    float weight;
    float height;
    int   totalNum = 0; //统计人数
    FILE *fp;
    char filename[64];
    char buffer[1003]={0};//缓冲区

    printf("Input file name: ");
    scanf("%s", filename);
    if((fp=fopen(filename, "r")) == NULL ){
        perror(filename);
        //return -1;
    }
    else{
        while(1){
              memset(buffer,0,1003);
              if(fgets(buffer, 1003, fp) == NULL) break;
              sscanf(buffer,"%s,%c,%d,%f,%f",id,&gender,&age,&weight,&height);
              if(gender == 'F'){
                 totalBMI += weight/(height*height);
                 totalNum++;
              }
        }
        fclose(fp);
        if(totalNum != 0)
           printf("%f",totalBMI/totalNum);
        else
           printf("No Found.");
    }
    return 0;
}