函数ReadDat()实现从数据文件in.dat中读取1000个十进制整数到数组XX中,请编写函数Compute(),分别计算出XX中数值为奇数的个数odd,偶数的个数even,平均值aver以及方差totfc的值,最后调用函数WriteDat()把结果输

admin2013-12-10  33

问题 函数ReadDat()实现从数据文件in.dat中读取1000个十进制整数到数组XX中,请编写函数Compute(),分别计算出XX中数值为奇数的个数odd,偶数的个数even,平均值aver以及方差totfc的值,最后调用函数WriteDat()把结果输出到out.dat文件中。计算方差的公式如下:[*]原始数据文件存放的格式是:每行存放10个数.并用逗号隔开(每个数均大于0且小于等于2000)。
【试题程序】
    #include
    #include
    #include
    #define MAX 1000
    int xx[MAX],odd=0,even=0;
    double aver=0.0,totfc=0.0;
    void WriteDat(void);
    int ReadDat(void)
    {
    FILE*fp;
    int i;
    if((fp=fopen(“in.dat”,“r”))==NULL)
    return 1;
    for(i=0;i    fscanf(fp,“%d,”,&xxEi]);
    fclose(fp);
    return 0;
    }
    void Compute(void)
    {
    }
    void main()
    {
    int i;
    for(i=0;i=0;
    if(ReadDat()){
    printf(”数据文件IN.DAT不能打开!\007\n”);
  retUrn;
    }
    Compute();
    printf(“ODD=%d\nE、,EN=%d\nhV~=%;f
\nTOFC=%lf\n”,Odd。even。aver,totfc);
    WriteDat();
    }
    void WriteDat(void)
    {
    FILE*fp;
    fp=fopen(“out.dat”。”W”);
    fprintf(fp,“%d\n%d\n%If\n%if\n”,
odd,even,aver,totfc);
    felose(fp);
    }

选项

答案void Compute(void) {int i; /*定义变量*/ for(i=0;i
解析
转载请注明原文地址:https://jikaoti.com/ti/Pv37FFFM
0

最新回复(0)