2006年9月全國等級(jí)考試三級(jí)c語言上機(jī)題庫(九十四)

字號(hào):

★題目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);
    }