★題目94(整數(shù)統(tǒng)計(jì)運(yùn)算題)
請(qǐng)編制程序prog1.c,從文件in.dat中讀取200個(gè)整數(shù)至數(shù)組xx中,求出奇數(shù)的個(gè)數(shù)cnt1和偶數(shù)的個(gè)數(shù)cnt2以及數(shù)組xx中值為偶數(shù)的算術(shù)平均值pj(保留2位小數(shù))。
結(jié)果cnt1,cnt2,pj輸出到out.dat中。
部分程序、讀數(shù)據(jù)函數(shù)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 m,sum;
int cnt1,cnt2,xx[N];
float pj;
FILE *fw;
fw=fopen("out.dat","w");
clrscr();
read_dat(xx);
/****************************/
cnt1=0; cnt2=0; pj=0.0;
for(m=0;m if(xx[m]%2) cnt1++;
else { cnt2++; pj+=xx[m];}
if(cnt2==0) pj=0;
else pj/=cnt2;
/****************************/
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);
}
請(qǐng)編制程序prog1.c,從文件in.dat中讀取200個(gè)整數(shù)至數(shù)組xx中,求出奇數(shù)的個(gè)數(shù)cnt1和偶數(shù)的個(gè)數(shù)cnt2以及數(shù)組xx中值為偶數(shù)的算術(shù)平均值pj(保留2位小數(shù))。
結(jié)果cnt1,cnt2,pj輸出到out.dat中。
部分程序、讀數(shù)據(jù)函數(shù)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 m,sum;
int cnt1,cnt2,xx[N];
float pj;
FILE *fw;
fw=fopen("out.dat","w");
clrscr();
read_dat(xx);
/****************************/
cnt1=0; cnt2=0; pj=0.0;
for(m=0;m
else { cnt2++; pj+=xx[m];}
if(cnt2==0) pj=0;
else pj/=cnt2;
/****************************/
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);
}