⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 1_pro.c

📁 C源代码 计算机等级考试C语言上机题
💻 C
字号:
#include  <stdio.h>
#include  <stdlib.h>
#include  <string.h>
#define  MAX  1000
int xx[MAX],odd=0,even=0;
double ave1=0.0,ave2=0.0,totfc=0.0;
void WriteDat(void);
int ReadDat(void)
{
  FILE *fp;
int i,j;
  if((fp=fopen("IN60.DAT","r"))==NULL)  return 1;


  fclose(fp);
  return 0;
}
int ReadDat(void)
{
  FILE *fp;
  int i,j;
  if((fp=fopen("IN60.DAT","r"))==NULL)  return 1;
  for(i=0;i<100;i++)
  {
    for(j=0;j<10;j++)
      fscanf(fp,"%d,",&xx[i*10+j]);
    fscanf(fp,"\n");
    if(feof(fp))  break;
  }
  fclose(fp);
  return 0;
}
void Compute(void)
{
  int i,yy[MAX];
  for(i=0;i<1000;i++)
    if(xx[i]%2!=0)  
     { odd++;  ave1+=xx[i];  yy[odd-1]=xx[i]; }
    else  
     { even++;  ave2+=xx[i]; }
  ave1/=odd;        /*求数组xx中所有奇数的平均值*/
  ave2/=even;       /*求数组xx中所有偶数的平均值*/
  for(i=0;i<odd;i++)
    totfc+=(yy[i]-ave1)*(yy[i]-ave1)/odd;  /*计算所有奇数的方差*/
}
void main()
{
  int i;
  for(i=0;i<MAX;i++)   xx[i]=0;
  if(ReadDat())
  { printf("数据文件IN60.DAT不能打开!\007\n"); return; }
  Compute();
  printf( "ODD=%d\nAVE1=%f\nAVE2=%f\nTOTFC=%f\n",odd,ave1,ave2,totfc);
  WriteDat();
}
void WriteDat(void)
{
  FILE *fp;
  int i;
  fp=fopen("OUT60.DAT","w");
  fprintf(fp,"%d\n%lf\n%lf\n%lf\n",odd,ave1,ave2,totfc);
  fclose(fp);
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -