就业数据资源平台
当前位置:首页 > C语言程序设计
全国计算机等级考试二级C语言上机91

 题目91
请编制程序prog1.c,从文件in.dat中读取200个整数至数组xx中,求出奇数的个数cnt1和偶数的个数cnt2以及数组xx下标为偶数的元素值的算术平均值pj(保留2位小数)。
 结果cnt1,cnt2,pj输出到out.dat中。
 部分程序、读数据函数read_dat(int xx[200])及输出格式已给出。
#include 
#include 
#define n 200

void read_dat(int xx[n])
{
 int i,j;
 file *fp;

 fp=fopen("in.dat","r");
 for(i=0;i<20;i++){
 for(j=0;j<10;j++){
 fscanf(fp,"%d,",&xx[i*10+j]);
 printf("%d ",xx[i*10+j]);
 }
 printf("\n");
 }
 fclose(fp);
}

void main()
{
 int i,j,sum;
 int cnt1,cnt2,xx[n];
 float pj;
 file *fw;
 
 clrscr();
 fw=fopen("out.dat","w");
 read_dat(xx);
/**********************/
 sum=0; pj=0.0; cnt1=cnt2=0;
 for(i=0;i { if(xx[i]%2) cnt1++;
 else cnt2++;
 if(i%2==0) {pj+=xx[i];sum++;}
 }
 pj/=sum;

/***********************/

printf("\n\ncnt1=%d,cnt2=%d,pj=%6.2f\n",cnt1,cnt2,pj);
fprintf(fw,"%d\n%d\n%6.2f\n",cnt1,cnt2,pj);
fclose(fw);
}
就业数据资源平台