百度首页 | 百度空间
 
查看文章
 
全国计算机等级考试上机题(南开100题)第91题
2007年09月21日 20:10

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[i]%2) cnt1++;
else
{ cnt2++; pj+=xx[i]; }
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);
}


类别:计算机考试(上机) | 添加到搜藏 | 浏览() | 评论 (0)
 
网友评论:
发表评论:
姓 名:
网址或邮箱: (选填)
内 容:
验证码:
 

     

©2008 Baidu