Google
      
发新话题
打印

全国计算机等级考试上机题(南开100题)第91题

全国计算机等级考试上机题(南开100题)第91题

91:请编制程序,从文件in.dat中读取200个整数至数组xx中,求出奇数的个数cnt1和偶数的个数cnt2以及数组xx值为偶数的元素值的算术平均值pj(保留2位小数)。
结果cnt1,cnt2,pj输出到out.dat中。部分程序、读数据函数read_dat(int xx[200])及输出格式已给出。
--------------------
for(I=0,j=0,cnt1=0,cnt2=0;I<N;I++) /*标准答案*/
{ if (xx[I]%2) cnt1++;
else cnt2++;
if (I%2==0) {j+=xx[I];k++;}
}
pj=(float)(j*100/k)/100;
或者:
cnt1=0;cnt2=0;pj=0.0;
for(i=0;i<N;i++)
if(xx%2) cnt1++;
else
{ cnt2++; pj+=xx; }
pj/=cnt2;
原程序如下:
#include <conio.h>
#include <stdio.h>
#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 cnt1,cnt2,xx[N],i;
float pj;
FILE *fw;
fw=fopen("out.dat","w");
clrscr();
read_dat(xx);
/*请补充...*/
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);
}

TOP

发新话题